我可以使用,无需部署“bin”文件夹ASP.NET网页?(Can I use ASP.NET Web

2019-09-23 05:09发布

我创建一个非常简单的网站,原来只是一堆HTML / CSS文件。 然后我需要添加服务器端逻辑的一点点,所以我想我会使用ASP.NET网页,因为他们听起来像一个合适的解决方案。

所以我改变index.htmlindex.cshtml ,加入我需要的代码,我虽然这将是它(我还添加了这个基本web.config文件:

<configuration>
  <system.web>
    <compilation debug="true" targetFramework="4.0" />
  </system.web>
</configuration>

然而,启动此本地IIS表达产生这样的错误:

无法确定要使用的ASP.NET Web页的版本。

为了使用本网站,指定网站的web.config文件版本。 有关详细信息,请参阅Microsoft支持网站的以下文章: http://go.microsoft.com/fwlink/?LinkId=254126

所以我说这对我web.config

<appSettings >
    <add key="webPages:Version" value="2.0" />
</appSettings >

现在,该网站开始,但处理UTF-8真的古怪 - 虽然所有的HTTP头,文件编码和meta标签是否正确设置为UTF-8,我的民族文字显示不正确。 我发现这个问题: 我是否需要对非ASCII字符的web.config? 但它并没有真正解决我的问题。

我虽然什么都可以错我的设置? 当我创建在WebMatrix中一个新的网站,并复制我的文件交给它,这一切工作正常,即使没有在指定网页版本web.config 。 我可以看到的唯一的区别是存在bin夹在WebMatrix中生成项目。

所以现在的问题是,我需要bin文件夹作为源的一部分的文件吗? 我真的不觉得自己像检查的二进制文件1.5MB值得到Git的应该是必要的只是在我index.cshtml添加一个动态线,但也许这是怎么回事?

感谢要么确认这个还是显示了我一些更好的办法。

Answer 1:

ASP.NET网页需要在UTF-8页一个BOM,否则将无法读取页面为UTF-8。 如果不这样做,也不会输出UTF-8编码的页面。

这不是一个ASP.NET问题,而是一个网页的问题。 网页处理真正的页面,并且它不解释HTML知道,它应该是UTF-8。 它知道的唯一方法是通过寻找一个BOM。



文章来源: Can I use ASP.NET Web Pages without deploying the “bin” folder?