我使用ASP.Net MVC 4,Internet Application创建了一个简单的网站。我为新页面添加了控制器,模型和相关视图。一切都在本地运行良好,我可以注册,登录和使用我的新页面功能。发布到Azure网站后,我可以成功使用home,about,register,login所有内置功能。但是我无法导航到我添加的新内容,它会给出错误500.同样,所有这些功能都可以在本地运行。我是ASP.Net MVC的新手,可以使用我能得到的任何帮助。
RouteConfig
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
我添加的控制器的索引操作
private UsersContext uc = new UsersContext();
private UserProfile user = new UserProfile();
private Character character = new Character();
//
// GET: /Character/
public ActionResult Index()
{
user = uc.UserProfiles.Single(u => u.UserName == User.Identity.Name);
return View(uc.Characters.ToList().Where(c => c.AccountOwnerId == user.UserId));
}
如果有任何其他项目有帮助,请告诉我。哦,我将它放入我的UsersContext而不是新创建的DbContext。
public UsersContext()
: base("DefaultConnection")
{
}
public DbSet<UserProfile> UserProfiles { get; set; }
public DbSet<Character> Characters { get; set; }
编辑:我忘记提到的一件事是,当我发布时,它没有将电子邮件地址字段添加到userprofile或我的整个Character表。我必须在Azure管理门户上运行SQL以手动添加这些项目。
答案 0 :(得分:1)
在试图理解为什么这不起作用的所有挫折之后我决定重新开始。我从Azure以及SQL DB中删除了该网站。然后,我添加了一个新网站,然后SQL DB获取了新的发布设置文件。我将其导入VS并发布。这一切都是全新的安装,不知道我第一次拙劣,但它现在按预期工作。谢谢,