我讨厌听起来很愚蠢,但ASP.NET不是我的强项。
我已经构建了一个ASP.NET应用程序,我现在可以将其部署到生产服务器。在网上搜索我发现建议只使用VS2010中的安装工具来编译和安装生产服务器上的文件。但是,我发现它有点奇怪:
答案 0 :(得分:1)
您是否在VS2010中创建了网站或Web应用程序项目?如果它是一个网站,您将要将其转换为Web应用程序项目。首次请求应用程序时,可以动态编译网站。 Web应用程序项目是预编译的,当您发布项目时,任何.cs文件都不会被推送到您的生产服务器。
我知道我可以通过右键单击我的Web项目并选择“转换为Web应用程序”来进行转换,但该菜单项可能因为ReSharper(5.1)或Microsoft的PowerCommands for Visual Studio 2010扩展而存在。
另外,请检查.aspx文件。你有.aspx和.aspx.cs吗?或者还有一个.aspx.designer.cs文件?设计器文件仅存在于Web应用程序项目中。如果您没有看到它们,那么您将拥有一个网站,而不是一个Web应用程序项目。
答案 1 :(得分:1)
你可以按照自己的意思去做,但我不会因为你提到的原因而推荐它。加上你的代码实际上没有编译!
典型的方法是编译应用程序,然后获取/ bin dll并将它们推送到服务器。基本站点需要web.config,包含DLL的bin文件夹和包含标记的任何ASPX文件,任何静态内容,如JS / CSS / Images等。在这种情况下,标记(aspx)仍然可以编辑但是CS代码在DLL内部,服务器上没有CS文件。
您还可以预编译实际修改ASPX文件的所有内容,您可以在此处找到更多信息:http://msdn.microsoft.com/en-us/library/ms227972.aspx
Visual Studio 2010在“生成”菜单下有一个“发布”功能,可以通过FTP或Web Deploy为您推送该站点,但这仅适用于较小的项目。
对于大多数事情,您将需要查看msbuild或nant来编写流程脚本,这可以允许您将JSmin或JSLint等内容合并到构建/部署中。
希望有所帮助。 -fs
答案 2 :(得分:0)
这取决于您的发布方式。 http://weblogs.asp.net/owscott/archive/2009/06/06/visual-studio-2010-1-click-publishing.aspx。 “完全一样”不是问题。您对编译和压缩的期望是“如此不正常”。为什么必须执行它们才能使您感到快乐,而您只需要简单的部署?
如何保护您的代码显然是您应该手动执行的一些额外工作,例如调整NTFS权限等。没有什么是自动的。