数据库未显示在Visual Studio中

时间:2012-10-18 17:19:30

标签: c# database visual-studio-2010

我正在使用Visual Studio中的C#开发应用程序。这是我的第一个使用本地数据库的C#应用​​程序,因此我不确定这是如何完成的。 我一直关注codeguru中的this article

我已经宣布了我的实体,所有这些实体目前只是从这个实体继承:

public class Reference
{
    /// <summary>
    /// ID of the reference.
    /// </summary>
    public int Id { get; set;  }

    /// <summary>
    /// Reference to the element in theTVDB.
    /// </summary>
    public int TheTVDBId { get; set; }

    /// <summary>
    /// Whether or not the reference has been marked as watched.
    /// </summary>
    public bool IsWatched { get; set; }
}

我还宣布我的DbContext如下:

public class Library : DbContext
{
    /// <summary>
    /// Constructor using the base constructor.
    /// This constructor names the database "Library".
    /// </summary>
    public Library() : base("Library")
    {
    }

    /// <summary>
    /// Set of TVSeriesReferences stored in the database.
    /// </summary>
    public DbSet<TVSeriesReference> TVSeriesReferences { get; set; }

    /// <summary>
    /// Set of SeasonReferences stored in the database.
    /// </summary>
    public DbSet<SeasonReference> SeasonReferences { get; set; }

    /// <summary>
    /// Set of EpisodeReferences stored in the database.
    /// </summary>
    public DbSet<EpisodeReference> EpisodeReferences { get; set; }
}

我正在尝试将实体存储在数据库中,执行以下操作:

Library db = new Library();

TVSeriesReference reference1 = new TVSeriesReference();
reference1.TheTVDBId = 1234;
reference1.IsWatched = true;
db.TVSeriesReferences.Add(reference1);

TVSeriesReference reference2 = new TVSeriesReference();
reference2.TheTVDBId = 8000;
db.TVSeriesReferences.Add(reference2);

int i = db.SaveChanges();

所有这一切似乎都有效。至少,我没有错误,每次运行i都是2。

问题是数据库(名为“Library”)不会出现在任何地方。实际上,我甚至没有“对象资源管理器”视图,我似乎无法找到它。 由于数据库没有显示,我不确定这是否有效以及我的数据是否实际存储。

有谁知道我做错了什么或者我错过了什么?

1 个答案:

答案 0 :(得分:1)

我似乎已经解决了这个问题。

我做了以下事情:

  1. 在Server Explorer中,我右键单击Data Connections,选择“Add Connection ...”并创建一个Microsoft SQL Server。我将服务器名称设置为.\SQLEXPRESS,将数据库名称设置为Library
  2. 然后我将以下内容添加到app.config: 它似乎现在有效。
  3. <connectionStrings>
        <add name="Library"
             providerName="System.Data.SqlClient"
             connectionString="Data Source=.\SQLEXPRESS;Database=Library;Trusted_Connection=true;" />
    </connectionStrings>