我正在进行mvc练习并创建一个简单的页面,用于从数据库中获取数据。在练习中,我注意到我创建了这个类的一件事:
public class EmployeeContext : DbContext
{
public DbSet<Employee> Employees { get; set; }
}
在我的 web.config 中首先我添加了这个细节:
<connectionStrings>
<add name="con" connectionString="Server=XYZ;Database=mvc1;uid=sa;pwd=abcd;" providerName="System.Data.SqlClient"/>
</connectionStrings>
当我运行此应用程序时,它给出了错误有无效的列名称。
但之后我在互联网上阅读了它,并将 con 更改为 EmployeeContext 我创建的类的名称,然后将其正常工作。像这样:
<connectionStrings>
<add name="EmployeeContext" connectionString="Server=XYZ;Database=mvc1;uid=sa;pwd=abcd;" providerName="System.Data.SqlClient"/>
</connectionStrings>
现在我想知道现在我只创建一个简单的类,我必须在连接字符串中给出类名。那么这是否意味着我必须为每个类创建每次新的连接字符串???
由于
答案 0 :(得分:0)
对于样本,您有不同的班级模型:
namespace MvcMusicStore.Models
{
public class Artist
{
public int ArtistId { get; set; }
public string Name { get; set; }
}
}
namespace MvcMusicStore.Models
{
public class Album
{
public int AlbumId { get; set; }
public int GenreId { get; set; }
public int ArtistId { get; set; }
public string Title { get; set; }
public decimal Price { get; set; }
public string AlbumArtUrl { get; set; }
public Genre Genre { get; set; }
public Artist Artist { get; set; }
}
}
using System.Collections.Generic;
namespace MvcMusicStore.Models
{
public partial class Genre
{
public int GenreId { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public List<Album> Albums { get; set; }
}
}
之后你必须添加App_data文件夹是ASP.NET中的一个特殊目录,它已经具有正确的数据库访问安全访问权限。从“项目”菜单中,选择“添加ASP.NET文件夹”,然后选择“App_Data”。 创建新的连接字符串后:
<connectionStrings>
<add name="MusicStoreEntities"
connectionString="Data Source=|DataDirectory|MvcMusicStore.sdf"
providerName="System.Data.SqlServerCe.4.0"/>
</connectionStrings>
</configuration>
然后是一个覆盖不同DbSet的类:使用System.Data.Entity;
namespace MvcMusicStore.Models
{
public class MusicStoreEntities : DbContext
{
public DbSet<Album> Albums { get; set; }
public DbSet<Genre> Genres { get; set; }
}
}
如果你想创建一个新类,你只需将DbSet放到最后一个类中。 您可以在此处找到所有详细信息:http://www.asp.net/mvc/tutorials/mvc-music-store/mvc-music-store-part-4