我已经按照MVC 3的教程做了以下事情:
创建了4个类和一个DBClass:
然后,我创建了一个名为
然后我添加了控制器(Controller)和视图(View),然后导航到"http://localhost:40636/Main",我看到了这条消息:
“在建立与SQL Server的连接时发生了与网络相关或特定于实例的错误。未找到服务器或无法访问。请验证实例名称是否正确并且SQL Server已配置为允许远程连接。(提供程序: SQL Network Interfaces, 错误: 26 - 无法定位特定服务器/实例)”
创建了4个类和一个DBClass:
User
[拥有] 一个 Website
列表 [拥有] 一个 Page
列表 [拥有] 一个 Comment
列表 [每个标记的单词都是自己的类]。然后,我创建了一个名为
UserDataBaseDB
的类,如下所示:public partial class UserDataBaseDB : DbContext
{
public DbSet<User> Users { get; set; }
public UserDataBaseDB()
: base(@"UserDataBaseDB")
{
if (this.Database.Exists())
{
try
{
this.Database.CompatibleWithModel(false);
}
catch (InvalidOperationException)
{
this.Database.Delete();
}
}
if (!this.Database.Exists())
{
this.Database.Create();
Seed();
}
}
private void Seed()
{
var Mark = new User();
Mark.ID = 0;
Mark.MD5Pass = "4297f44b13955235245b2497399d7a93";
Mark.UserName = "Admin";
var Troll = new Comment();
Troll.CommentData = "Fake!";
Troll.Writer = Mark;
var Site = new Website();
Site.Name = "Admin Site";
Site.Pages.ElementAt(0).Data = "Awesome website!";
Site.Pages.ElementAt(0).Comments.Add(Troll);
Mark.Websites.Add(Site);
Users.Add(Mark);
}
public static UserDataBaseDB Create()
{
return new UserDataBaseDB();
}
public User FindUserByID(int id)
{
return (from item in this.Users
where item.ID == id
select item).SingleOrDefault();
}
然后我添加了控制器(Controller)和视图(View),然后导航到"http://localhost:40636/Main",我看到了这条消息:
“在建立与SQL Server的连接时发生了与网络相关或特定于实例的错误。未找到服务器或无法访问。请验证实例名称是否正确并且SQL Server已配置为允许远程连接。(提供程序: SQL Network Interfaces, 错误: 26 - 无法定位特定服务器/实例)”
Line 14: : base(@"UserDataBaseDB")
Line 15: {
Line 16: **if (this.Database.Exists())**
Line 17: {
Line 18: try
将标记线设为红色线。
我已经尝试重新安装Entity Framework,还尝试了EFCodeFirst,尝试创建自己的SqlDataBase
并给它连接字符串,但都没有效果。
有人知道解决方案吗?谢谢!
PS:我正在使用Win7 64位机器上的VS Ultimate SP1。