Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 简单WEB API REST项目_C#_Asp.net_Asp.net Web Api - Fatal编程技术网

C# 简单WEB API REST项目

C# 简单WEB API REST项目,c#,asp.net,asp.net-web-api,C#,Asp.net,Asp.net Web Api,使用ASP.NET MVC在Visual Studio 2013中创建简单REST API的最佳方法是什么 我只需要控制器和路由配置以及HTTP REST API的任何其他基本要求 我不需要任何Razor视图引擎、Javascript或HTML包含 我如何才能创建一个没有所有不需要的额外项目,我通常在过去删除 谢谢。我想您的项目最好的方法是使用WebApi,即使是简单的HTML页面,但是。。。jQuery,甚至像Knockout.JS或Angular这样的东西,这是任何现代项目都必须具备的。根据

使用ASP.NET MVC在Visual Studio 2013中创建简单REST API的最佳方法是什么

我只需要控制器和路由配置以及HTTP REST API的任何其他基本要求

我不需要任何Razor视图引擎、Javascript或HTML包含

我如何才能创建一个没有所有不需要的额外项目,我通常在过去删除


谢谢。

我想您的项目最好的方法是使用WebApi,即使是简单的HTML页面,但是。。。jQuery,甚至像Knockout.JS或Angular这样的东西,这是任何现代项目都必须具备的。

根据您需要ASP.NET的哪些部分,您可以访问Nancy。它可以托管在ASP.NET中,重量非常轻,提供了一个简单的路由,可以选择插入不同的视图技术Razor、Spark、SimpleView等。

如果愿意,您可以删除MVC组件,只需使用Web API 2。添加您自己的自定义配置位:

        //attribute routing - lets me put any route any method in any darn file.
        //this sets you free.  I could never see doing it any other way.
        config.MapHttpAttributeRoutes();
这样,您就可以在作为控制器创建的任何文件中动态创建您想要的任何路由

public class MyWeirdController : ApiController {
    //via REST, get object //method-route defined here as I want it
    [HttpGet] [Route("~/my/custom/route/someobject/{objectid}")]    
    public CustomObject GonnaGetCustomObject(int objectid) {

       .... use whatever 
      var obj = new CustomObject();
      obj.SetSomething = true;

     return obj
    }
}
你不需要MVC。当我想要简单时,我将WebAPI2与Linq2SQL实体结合使用更像是一个PITA,但这部分也不需要。L2SQL实体只是更快/更容易站起来并使用其建模类运行——但任何类或任何您想要的,都可以发送它

如果我想在javascript端MVVM它,我通常使用Knockout。有了KO.Mapping,我就可以用一行代码接收CustomOBject,使用JS对象,并立即绑定到页面上的元素。所有这些中最困难的部分是学习击倒。使用WebAPI2编写自定义属性非常简单和有趣


简而言之,您只需使用带有自定义属性路由的WebAPI2就可以以任何方式支持REST客户机。使用任意方法/返回/类型,按照您的意愿,任意组合控制器。你可以让它变得像你想要的那样简单,或者开始像敲除和L2SQL或EF这样的东西,以便更紧密地键入bind things。

这一切都在你选择的模板中

在“新建项目”对话框中,如果尚未选择,请选择.NET Framework 4.5 导航到已安装>模板>Visual C>Web,然后是ASP.NET Web应用程序并选择“确定”。 在选择项目类型的对话框中,选择Empty,但请确保选中“添加文件夹和核心引用”下的Web API。 现在,您将创建基本最小值


请参阅:

您必须搜索它,但是有一个NuGet软件包,它是一个Web API初学者工具包,没有所有MVC网站内容视图、图像、JavaScript、捆绑等。您可能还想试试WCF的WebServiceHost,一个完全没有html输出/视图呈现的REST API现代项目怎么样。谢谢。如果根本没有视图/输出,这可能是某种控制台应用程序?至少WebApi是REST的最佳解决方案。非mvc怎么样?我想创建一个web api,我可以在IIS中托管它,它可以从web上的任何地方访问…同上。由于这个答案已经使用了2年多,所以版本号有点更新,但概念与您在下拉列表中选择的版本相同,然后在最新的VS2015中选择ASP.NET Web应用程序。选择Empty project,然后确保选中了Web API。然后将应用程序部署到任何IIS实例。如果您想单独离开IIS和主机,请查看OWIN。