【问题标题】:Difference between various templates when creating web api project创建web api项目时各种模板的区别
【发布时间】:2016-04-10 00:41:18
【问题描述】:

我正在使用 Visual Studio 2013 创建一个 asp.net web api 应用程序。您可以使用多种方法来创建项目

  1. File > New > Project > Web > Visual Studio 2012 > Asp.net MVC 4 web application > Web Api
  2. File > New > Project > Visual C# > Asp.net web application > Web Api
  3. File > New > Project > Web > Asp.net web application > Empty
  4. File > New > Project > Web > Asp.net web application > Web Api

除了选项 3,所有其他选项都添加了额外的东西 Bootstrap、字体(字形)、JQuery 等。

我只想从 web api 返回数据。哪个是创建解决方案的正确选择?当 web api 无法返回视图时,他们为什么要向 web api 添加额外的东西?

【问题讨论】:

  • 您使用的是哪个版本的 Visual Studio?

标签: asp.net asp.net-mvc-4 asp.net-web-api asp.net-web-api2


【解决方案1】:

我认为#4 设计得很糟糕。它被称为 web api,但它包含的文件仅适用于 API 服务器不需要的 web 应用程序(脚本、字体等)。

似乎人们建议使用#2(空)。这确实避免了包含您不需要的文件,但它非常少。我一直在努力弄清楚如何向它添加 web api 功能。 Web api 模板包含许多依赖项和源文件,它们可能有用也可能没用。我不知道应该添加哪些,应该忽略哪些。

这两个选项似乎是:

  1. 使用 Empty 并添加您需要的东西。但是,很难知道自己需要什么。
  2. 使用 Web API 并删除不需要/使用的内容,或者将所有垃圾留在其中。

我在使用 Empty 的道路上度过了最后两天,但它不起作用。我即将使用 Web API 模板重新开始。

【讨论】:

    【解决方案2】:

    如果您不想要所有的脚本和样式,则需要使用 Empty Template。

    文件 > 新建项目 > Visual C# > Web > ASP.NET Web 应用程序

    警告:模板非常稀疏。你得到的只是一些空文件夹和 WebApiConfig.cs

    【讨论】:

      【解决方案3】:

      为Web API选择选项4,顺便说一下Web API只能返回XML或Json格式的数据,希望这些信息可以帮助你,谢谢

      以下是 Web API 代码非常简单的示例

      公共类 a1Controller : ApiController { 私人 gigadeEntities1 db = 新 gigadeEntities1();

          // GET: api/a1
          public IQueryable<a1> Geta1()
          {
              return db.a1;
          }
      
          // GET: api/a1/5
          [ResponseType(typeof(a1))]
          public IHttpActionResult Geta1(int id)
          {
              a1 a1 = db.a1.Find(id);
              if (a1 == null)
              {
                  return NotFound();
              }
      
              return Ok(a1);
          }
      

      }

      如下代码 1.你可以看到图2,Web API必须包含在MVC结构中,可以通过URL返回纯数据(xml或json) 2.图3,公共类ValuesController:ApiController

      【讨论】:

      • 感谢您的回复。我知道它可以返回 json 或 xml。但是我需要从上述选项中选择哪个选项?
      • 文件 > 新建 > 项目 > Web > Asp.net Web 应用程序 > Web Api
      • 如果您只想返回数据而没有 UI,则选项 4 是错误的。
      • 嗨@OpenStack你现在得到答案了吗,如果没有,我会试着告诉你更多,希望我能帮助你处理你的问题,PS:我会在答案内容中添加更多信息。
      猜你喜欢
      • 2011-05-06
      • 2014-04-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-07
      • 1970-01-01
      • 2011-08-01
      相关资源
      最近更新 更多