云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

云存储_企业网站开发建设_价格

小七 141 0

香港云服务器_哪里买_云主机服务器哪里好

在本文中,您将了解Nancy,它是ASP.NETMVC框架。首先,您将了解Nancy的历史,然后了解为什么需要另一个框架,然后通过创建一个超级简单的web服务器来了解它的实际应用。如果需要,可以在GitHub存储库中找到本文中开发的代码。"认识一下Nancy,一个成熟的开源替代品ASP.NETMVC框架。"在推特上留言新一代的南希让我们来谈谈Nancy,.NETWeb框架,什么是大数据技术,以一位著名歌手的女儿命名,好奇吗?通过对你说"网络框架"这个词,我猜它会引起很多不同的反应,从"哦,天哪,不是另一个…"到"拜托,已经够了…"如今,Web框架已经非常庞大,而且似乎每个人都在编写一个新的框架,这些天有太多的饱和,当你提到另一个框架时,你完全可以轻蔑地呻吟。但问题是,你将要学习的框架并不是一个与Angular,Aurelia相同领域的框架,Vue.js版,反应是。这是一个开源的.NET后端框架,它已经出现了很长一段时间了。那南希呢?Nancy一开始似乎是web框架的一个不寻常的名字,但是一旦你开始阅读Wiki中的介绍性信息,你很快就会发现它是以Ruby web框架"Sinatra"为模型的,Frank Sinatra的女儿被称为,是的,你猜到了……Nancy。但是为什么你需要一个后台的框架呢?Web框架并不是所有关于客户端的,您仍然需要执行从客户端代码到后端代码的路由和参数传递,这样您就可以使用这些输入来执行业务逻辑,而输出则将信息传递回客户端以供显示。拥有像Nancy这样的工具箱可以极大地帮助完成这项任务,正如Angular和Aurelia有助于创建前端和用户界面一样。在.NET中(在本文中,您将使用C),实际上,默认情况下,只有两种主要方法可用于创建web应用程序,第一种方法是使用"web窗体",即Microsoft最初的web框架,它是在桌面框架"Win Forms"的基础上建立起来的,第二种是更新和更灵活的ASP.NETMVC框架,设计用于使用众所周知的"模型、视图、控制器"体系结构模式实现应用程序设计。这在后端框架市场上为许多不同的工具包留下了很大的空间,这些工具箱旨在生成基于HTTP的api。南希和FubuMVC、OpenRasta和许多其他公司都是第一批。第一篇官方博客博客.nancyfx.org是在2011年编写的,第一次提交是在一年前的2010年11月签入GitHub的。该框架的两个主要创立者Andreas Håkansson和Steven Robbins在2018年仍然是该项目的主要贡献者,但现在他们背后有大量的追随者和专门的社区。Nancy现在在软件开发方面还合适吗?这是件好事:是的,的确如此。Nancy现在是一套稳定、成熟且支持良好的工具,可为各种项目创建一流的基于HTTP的接口。这是什么意思?好吧,停下来想一想。。。基于Web的应用程序,并不一定意味着"基于Web服务器的应用程序"。很多人认为,如果你在构建一个web应用程序,它必须在浏览器中使用HTML和CSS,并且它必须有一个web服务器,如IIS、Nginx或Apache在后端运行。在今天的现代.NET核心世界中,您现在还将kestrel内置到您的标准工具集中,它也被归类为"web服务器"。不过,南希不需要这些。它可以用它,你可以把南希嵌入经典ASP.NET基于web应用程序,或者您甚至可以将其与.NET核心一起使用。但是,它的优点是可以将它添加到任何基于.NET的项目中,您可以在其中使用它。举个例子,我过去曾多次使用"CefSharp"使桌面Windows应用程序中的用户界面具有HTML外观,我用Nancy直接在同一个程序中构建了一个基于web的API,这样一个应用程序就可以直接从自己的代码库为自己的UI提供自己的HTML内容。在一个项目中,我使用Nancy添加了一些rest端点,以便他们使用的电话系统可以在电话铃响时将来电信息直接推送到操作员的屏幕上,这是一个面向帮助台操作员的基于桌面Windows窗体的仪表板。Nancy的用例数量惊人ASP.NETMVC不具备覆盖能力,支持web的应用程序并不总是通过用户的浏览器将应用程序转换为在web上运行。够了,给我看看密码!现在,您已经为使用一个相当旧的框架构建了一个用例,在它被构思出来7年之后,现在是时候来看看它能做什么的基础了。我将使用visualstudio2017的最新版本作为本文其余部分的示例,但是您应该能够像在VS2010/2012和2015中一样轻松地进行操作(我多年来一直在使用这三个版本,而Nancy对它们的处理都很好)首先,打开visualstudio,创建一个全新的C控制台模式应用程序。如您所见,您将创建一个标准的Windows桌面控制台应用程序,运行在完整的.netframework版本4.6.1上。只要你的.NET版本是4或更高版本,所有当前最新版本的Nancy都应该可以正常工作。您可以将您的项目称为"NancyStandalone",开始使用Nancy的独立服务器模式。不过,请预先警告,Nancy将尝试在默认情况下监听端口80。因此,如果您不是以管理员身份运行visualstudio,或者您的本地Windows计算机上运行着一个web服务器(如IIS),则默认设置将失败。很快,您将了解如何更改端口,但是,返利手游平台,首先,您需要一些基本设置。创建项目后,右键单击解决方案资源管理器中的引用并转到"管理NuGet包"选项。打开新的get manager后,店铺淘客怎么做,单击browse选项卡,并在搜索框中输入"Nancy"。从结果中,选择并安装Nancy和南希。主持。自我.添加完这两个包后,请关闭NuGet管理器并返回解决方案资源管理器。从那里,打开你的程序.cs文件并确保代码如下所示:使用南希。主持。自我;使用系统;OnAstancAndalone命名空间{班级计划{静态void Main(string[]args){使用新的主机名(使用新的主机名:80")){主人。开始();控制台.WriteLine("NancyFX独立测试应用程序");控制台.WriteLine("按enter键退出应用程序");控制台.ReadLine();}}}}然后,在解决方案资源管理器中右键单击您的项目并添加一个新的类文件。调用此文件HelloModule.cs并给出以下代码(如果需要,不要忘记更改名称空间):利用南希;命名空间NancyStandalone{公共类HelloModule:NancyModule{公共HelloModule(){Get/"]=parameters=>"Hello World";}}}现在,按F5运行您的应用程序,如果一切正常,您应该会看到一个控制台窗口打开,其中写着"NancyFX standalone test…"。如果出现"拒绝访问"的错误,则必须从端口80更改为其他端口。为此,您可以更改using语句中的URL,也可以更改所放置的代码中的URL程序.cs. 例如,要更改到端口8080,请更改以下行:使用(var host=new NancyHost(new Uri("http://localhost:80"))到这条线:使用(var host=new NancyHost(new Uri("http://localhost:8080"))然后按F5重新运行应用程序,返回浏览器并打开:8080。如果一切顺利,您将看到一个显示"Hello World"的页面:一个URL等于一千个东西。到目前为止,您的应用程序只响应"根请求"。如果你想把其他东西放进去(例如,:8080/mypage)您将收到HTTP 404 Not Found响应。更具体地说,由于您还没有替换任何内置的默认错误处理程序,您将实际看到一个由@theoatmeat"Matthew Inman"绘制的"翻滚野兽"(https://twitter.com/theoatmear)(如果你有空,可以去theoatmeat.com网站你不会失望的)。响应web请求的应用程序如果不能响应不同的项目并根据请求提供不同的响应,则毫无用处。对于本例,软件企业有哪些,更改HelloModule.cs文件,自助建站服务,以便其代码现在如下所示:利用南希;命名空间NancyStandalone{公共类HelloModule:NancyModule{公共HelloModule(){Get/"]=parameters=>"我是根用户";Get/hello"]=参数=>"你好";Get/world"]=参数=>"world";}}}然后,再次运行你的应用程序。你现在应该可以使用:8080/(仅此一次收到不同的消息),您应该能够使用:8080/你好:8080/世界。不过,目前您所做的只是返回简单的字符串。如果您愿意,可以为每个URL附加一个完整的函数。例如,尝试以下操作:添加一个名为函数模块.cs并添加以下代码:利用南希;命名空间NancyStandalone{公共类函数模块:NancyModule{公共函数模块(){Get/func1"]=参数=>{var response="你好"+"世界";return""+响应+"";};Get/func2"]=参数=>{var响应="";for(int count=0;count