我正在使用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”)不会出现在任何地方。实际上,我甚至没有“对象资源管理器”视图,我似乎无法找到它。 由于数据库没有显示,我不确定这是否有效以及我的数据是否实际存储。
有谁知道我做错了什么或者我错过了什么?
答案 0 :(得分:1)
我似乎已经解决了这个问题。
我做了以下事情:
.\SQLEXPRESS
,将数据库名称设置为Library
。app.config
:
它似乎现在有效。<connectionStrings>
<add name="Library"
providerName="System.Data.SqlClient"
connectionString="Data Source=.\SQLEXPRESS;Database=Library;Trusted_Connection=true;" />
</connectionStrings>