我一直在互联网上寻找一个好的答案一个星期,但找不到任何答案。我将提供我所拥有的所有信息,我认为可能对你们解决这个令人沮丧的问题有所帮助,最后我会告诉你自己的问题以及我所做的测试和结果。
我正在使用ASP.NET MVC 3(C#),这就是我一步一步做的事情:
在我的网站上部署后,这是我的Bin文件夹:
这是我的packages.config文件:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="EntityFramework" version="5.0.0" targetFramework="net45" />
<package id="jQuery" version="1.7.1.1" targetFramework="net45" />
<package id="jQuery.UI.Combined" version="1.8.20.1" targetFramework="net45" />
<package id="jQuery.Validation" version="1.9.0.1" targetFramework="net45" />
<package id="Microsoft.AspNet.Mvc" version="3.0.20105.1" targetFramework="net45" />
<package id="Microsoft.AspNet.Providers.Core" version="1.1" targetFramework="net45" />
<package id="Microsoft.AspNet.Providers.LocalDB" version="1.1" targetFramework="net45" />
<package id="Microsoft.AspNet.Razor" version="1.0.20105.408" targetFramework="net45" />
<package id="Microsoft.AspNet.WebPages" version="1.0.20105.408" targetFramework="net45" />
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net45" />
<package id="Modernizr" version="2.5.3" targetFramework="net45" />
<package id="PagedList" version="1.15.0.0" targetFramework="net45" />
</packages>
我的托管服务器支持MVC和ASP.NET 4.0,服务器是IIS7.0(集成管道)。但是,他们支持的最新ASP.NET框架是4.0。在我的项目属性中,它显示目标框架是4.5,但是当我部署网站时,在其属性中,它显示目标框架是4.0。
当我在Internet上打开我的网站时,它设法在目录中找到Index.cshtml文件,但是,只能编译普通的html和css,服务器由于某些原因无法编译C#代码我不知道。这就是为什么我的所有链接都是空和空引用的原因,因为<a href="@Url.Action("Learn", "Home")">
是我用来链接页面的原因。
但无论如何,当我使用一个使用Visual Basic语言的简单.aspx文件(我不是很熟悉)时,它能够完美地编译文件而没有任何问题。
可能是什么问题?我与我的托管服务提供商客户服务(godaddy.com)进行了长时间的讨论,即使他们将我的案例传递给他们的“最先进的技术人员”,但他们仍然找不到问题。
这个问题可能来自我在bin文件夹中缺少的库吗?
我必须说这一点,当我在自己的计算机localhost服务器上运行IIS 7.0 Express时,我的网站运行正常。
谢谢和问候, 阿明