1

我正在学习 ADO.Net 实体框架,并且一直在将实体表对象添加到数据库中。

我在解决方案中有一个名为 testDB 的本地数据库。它有两列 - id(primary, unique, identiy),name(varchar(100)) 和它的实体。主要应用程序代码如下。问题是,使用此代码不会向表中添加任何内容,但我也没有任何错误。会出什么问题?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace entityproject
{
class Program
{
    static void Main(string[] args)
    {
        String someString;
        someString = "Just a test";

        testDBEntities tdbEntity = new testDBEntities();
        test tblTest = new test();

        tblTest.name = someString;
        tdbEntity.test.Add(tblTest);
        tdbEntity.SaveChanges();
    }
 }
}

App.config 在这里 http://pastie.org/6980938

4

1 回答 1

1

我想我知道问题所在——上次我尝试使用 SQL CE 时也遇到了同样的问题。

连接字符串不指向您创建的 sdf 文件 - 它使用一个新的文件,我相信该文件与您的 EXE 和 DLL 一起放入您的bin\Debugorbin\Release目录(在您的配置文件中)。data source=|DataDirectory|\testDB.sdf如果您检查该目录,我敢打赌您会在那里找到另一个 sdf 文件,其中添加了一堆记录。

如果要使用已创建的 sdf,请将连接字符串更改为专门指向该文件。

于 2013-03-21T19:30:16.770 回答