首页 / 知识
关于visual studio:ASP.NET中的Web站点或Web应用程序
2023-04-16 12:51:00

Web Site or Web Application in ASP.NET哪个Visual Studio模板应该用于ASP.NET网站,Web站点模板或Project | Web应用程序模板? 功能和功能都相似,但在以下方面仍然有所不同: Web应用程序:
网站:
你最好读一读: 如果您使用Team Foundation Server进行源代码管理,则可能必须使用Web应用程序项目,因为您需要.csproj文件。 Jeff Atwood本人提供了更多详细信息:网站项目与Web应用程序项目
Web应用程序项目更像传统的VS项目,它有一个项目文件,一步编译等等。 网站项目更像是传统的ASP或PHP站点。没有项目文件(引用存储在解决方案文件中),并且在服务器上动态地重新编译页面。网站的好处是你只需要ftp到服务器并在文本编辑器中更改文件。你不需要VS.但有些人可能会讨厌这一点。 这可能取决于你的背景。如果您习惯于ASP或PHP风格开发,那么网站项目对您来说似乎更自然。如果您有传统的应用程序开发人员背景,那么Web应用程序项目似乎更自然。 我更喜欢网站。网站是目录中文件的集合。它变得更加便携和可部署。 Web应用程序通过项目文件来解决问题。 在Visual Studio 2015中,我有点喜欢Web站点项目而不是Web应用程序项目。我仍然使用visual studio,因为你得到了Nuget Packaging,你可以在两种类型的项目中安装nuget包。 但是,WebSite项目没有项目文件,您只需在解决方案中添加一个文件夹即可。 但是你仍然可以拥有代码,但我更喜欢把它放在一个单独的项目中。 在WebApp项目中,您可以在一个项目中拥有Assets,Css,Views(razor,aspx等),Controllers / Code Behinds等,它们只是在一起。我更喜欢与两半的网站合作。前端(css,js,images,"html / cshtml / aspx / ashx / .master / etc")和后端(所有代码)。 因此,我创建了一个Web站点项目和一个类库(在Visual Studio中,您可以添加对Web站点项目的引用)。我将我的类库添加为依赖项,所有代码都在类库中。您仍然可以拥有global.asax,您只需要告诉它后面的代码在另一个dll中(不是该站点将编译到的那个)。 MVC视图,你只需指定命名空间就像普通(dll是引用,所以命名空间就在那里)。在WebForms中,您只需记住将程序集名称包含在代码所在的类型引用中。 使用起来有点乏味,但是当你拥有孤立的结构时,一切都在一个有意义的地方,并以易于维护的方式模块化。 PLUS方面是因为网站只是一个文件夹(没有项目文件),它可以很容易地在Visual Studio Code中打开,而其他流行的文本编辑器使设计人员可以轻松地处理css / js / images等(这些不在代码项目中)。保持层设计师分离,设计师只看到他们需要看到的东西。 现在结构明智。我使用Tortoise SVN和Visual SVN(java / .net shop)将我的代码保存在我的机器本地检查到subversion存储库。要在本地测试我安装IIS,我在本地IIS中设置网站项目就像我在dev / prod服务器上一样。 然后我在dev / prod服务器上安装MSDeploy,我在visual studio中通过MSDeploy使用Publish web app功能,我使用web.config转换。所以我有dev和prod的web.config转换,没有转换的主web.config用于本地测试(因此它适用于项目中的所有开发人员)。 对于之前陈述的缺点:拥有WebSite项目与WebApp项目并不意味着多个开发人员无法处理它,只有当您的WebSite项目位于某个服务器某处并且您直接从那里加载它时才会这样做实践。 您可以像处理任何其他Visual Studio项目,本地代码,源代码控制和多个开发人员一样处理WebSite项目。 最后要注意的是,分离代码的另一个好处是可以将所有代码放在共享项目中。然后,您可以为您可能执行的每个端口创建一个类库,例如直接.net 4.6上的一个,以及.net核心5上的另一个端口,以及共享项目中的链接。只要您的代码与两者兼容,它就会构建,并且您没有任何重复的代码文件。 我个人现在专门使用Web应用程序项目。由于网站的编译时间,我实际上将一个相当网站转换为Web应用程序。 我还使用预构建事件来移动配置特定的配置文件,并且在网站中不提供预构建和后构建事件。 |
最新内容
相关内容
linux进入网站命令?
linux进入网站命令?,系统,环境,网站,传播,终端,命令,窗口,快捷键,界面,虚拟机,虚拟机中的linux怎么进入命令方式点击打开开始菜单里的终端。打linux入侵网站命令?
linux入侵网站命令?,工作,地址,信息,系统,数字,网站,名称,命令,网络,密码,linux常用命令1、linux系统常用操作命令如下:ls:全拼list,功能是列出目linux网站根目录命令?
linux网站根目录命令?,系统,一致,设备,网站,目录,根目录,信息,标准,位置,电脑,Linux中怎么切换到根目录?1、找到需要移动文件选择。右键而后选linux访问网站的命令?
linux访问网站的命令?,地址,系统,服务,工作,网站,命令,网络,管理,信息,网址,Linux必学的网络操作命令Linux的网络命令比较多,其中一些命令像pinlinux访问模板命令?
linux访问模板命令?,工作,地址,系统,信息,管理,命令,目录,发行,设备,文件,linux系统常用操作命令1、linux常用命令有pwd命令、cd命令、ls命令linux命令行登陆网站?
linux命令行登陆网站?,网站,系统,密码,服务,地址,环境,网络,软件,状态,项目,在Linux下怎么通过命令上网首先,连接相应linux主机,进入到linux命令linux登陆网站命令?
linux登陆网站命令?,网络,工具,网站,标准,地址,软件,系统,命令,数据,环境,linux如何用命令行登录?1、首先在桌面模式下,右键点击open in terminlinux命令打开网站?
linux命令打开网站?,网络,网站,系统,地址,密码,传播,工具,代码,环境,命令,大学生通关这几个编程游戏1、Hack The Game Hack The Game是一款好linux命令解析模板化?
linux命令解析模板化?,系统,工作,地址,命令,位置,目录,管理,最新,数据,通讯录,linux常用命令解释linux常用命令:pwd命令该命令的英文解释为prinlinux命令检索模板?
linux命令检索模板?,时间,档案,系统,命令,名称,灵活,工具,文件,工作,环境,Linux下find命令和grep命令查找文件locate命令 locate命令是另一种linux命令行登录网站?
linux命令行登录网站?,系统,网站,地址,工作,软件,密码,网络,第一,环境,中心,如何使用linux命令打开网页1、在命令符界面浏览网页可以使用lynx,llinux命令查询网站?
linux命令查询网站?,地址,网络,信息,名称,档案,工具,网站,命令,传播,分析,linux查看域名命令查找主机。ls:用来显示指定目录下的内容,列出指定目