(我是.Net和微软世界的新手,来自Java和Tomcat背景,所以请记住这一点.)
我正在使用Visual Studio 2013,C#,.Net 4.5,MVC 5和EF 6开发我的第一个.Net应用程序.这是一个相当简单的基于Web的应用程序,使用Windows身份验证和Active Directory组授权公平地执行SQL Server数据库中表的基本CRUD操作.
我还没有部署应用程序.我还在开发它并在我的PC上运行(运行Windows 7).当我按下Ctrl-F5在Internet Explorer或Google Chrome中测试应用程序时,一切正常.
但是,如果我告诉Visual Studio在Firefox中访问它,它会显示没有任何CSS或JavaScript 的页面.我可以单击应用程序中的链接并导航到各个页面,这些页面都可以正常工作.它们只显示没有任何CSS或工作JavaScript.当我手动尝试查看其中一个CSS或JavaScript文件时,我收到内部服务器错误(HTTP错误500).检查日志文件会显示页面尝试加载的每个CSS和JavaScript文件的状态代码500.
我很神秘,因为它可以从Internet Explorer和Chrome中正常工作.如何使用不同的Web浏览器导致此内部服务器错误?
我发布了一些代码,但此时我不知道有什么用处.(我可以显示IIS Express正在记录哪些附加信息,如果有的话,但我不知道在哪里可以找到它,除了显示状态代码500的行.)
在开发的早期阶段,我意识到当我希望它被命名为"Version"(大写)时,我已经命名了一些数据库字段"version".我在该字符串的整个解决方案中进行了全局查找/替换,而不是对该字段进行重命名.可能有一些重要的事情被这个过程所困扰,但我已经对"版本"(以及"版本")进行了全局查找,并且没有找到任何值得注意的内容.
如果我绝对必须,我可能只是从头开始重新创建项目,并希望我不会将同样的问题(或新问题)复制/粘贴到新项目中,但我希望有人能来有一些比较容易尝试的东西.
这是Views/Shared/_Layout.cshtml的开头:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>@ViewBag.Title - Experiment 626</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
</head>
Run Code Online (Sandbox Code Playgroud)
这是App_Start\BundleConfig.cs:
using System.Web;
using System.Web.Optimization;
namespace Experiment626
{
public class BundleConfig
{
// For more information on bundling, visit http://go.microsoft.com/fwlink/?LinkId=301862
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js"));
bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
"~/Scripts/jquery.validate.min.js",
"~/Scripts/jquery.validate.unobtrusive.min.js"));
// Use the …
Run Code Online (Sandbox Code Playgroud)