我是一个菜鸟 ASP.net,不知道为什么没有创建控制器,在教程中,我将其从一个单词复制到另一个单词,它工作正常,允许我创建一个数据库。
遵循本教程的结构,但以我自己的方式(只是更改了一些名称)-http://www.asp.net/mvc/overview/getting-启动/介绍/添加模型
慈善.cs :
using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using System.Web;
namespace CharityWebsite.Models
{
public class Charity
{
public String DisplayName { get; set; }
public DateTime Date { get; set; }
public Double Amount { get; set; }
public Double TaxBonus { get; set; }
public String Comment { get; set; }
}
public class CharityDBContext : DbContext
{
public DbSet<Charity> Donations { get; set; }
}
}
网络配置:
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)MSSQLLocalDB;AttachDbFilename=|DataDirectory|aspnet-CharityWebsite-20160221090932.mdf;Initial Catalog=aspnet-CharityWebsite-20160221090932;Integrated Security=True" providerName="System.Data.SqlClient" />
<add name="CharityDBContext"
connectionString="Data Source=(LocalDB)v11.0;AttachDbFilename=|DataDirectory|Donations.mdf;Integrated Security=True"
providerName="System.Data.SqlClient"
/>
</connectionStrings>
错误:
"无法检索慈善机构网站.模型.慈善机构的元数据" CharityWebsite.Models.Charity 没有定义密钥。定义键 此实体类型。捐赠:实体类型:实体集 "捐赠"基于 在未定义键的类型"慈善机构"上。
要解决此问题,请尝试在模型中添加主键。
[Key]
[Required]
public long ID{ get; set; }
这应该可以解决问题。