我有一个小/怪异行为在这里和Im寻找在互联网和SO,我没有找到一个响应。
我不得不承认,这是我第一次使用的数据库,我知道如何将它们与SQL使用,但从来没有使用过它实际上。
不管怎么说,我有我的应用程序中插入数据时出现问题,我刚刚创建了一个非常简单的项目,用于测试和无解呢。
我与SQL Server的实例数据库
ID - INT(标识主键)名称 - 的nchar(10)(NOT NULL)
该表被称为“人”,简单的馅饼。
我有这个:
static void Main(string[] args)
{
var db = new ExampleDBDataContext {Log = Console.Out};
var jesus = new Person {Name = "Jesus"};
db.Persons.InsertOnSubmit(jesus);
db.SubmitChanges();
var query = from person in db.Persons select person;
foreach (var p in query)
{
Console.WriteLine(p.Name);
}
}
正如你所看到的,没有什么交流中心。
它显示在控制台耶稣。 但是,如果你看到表中的数据,没有数据,只是空的。 我的评论对象的创建和插入,并在foreach不打印的东西(正常,有数据库中没有任何数据)
奇怪的是,我在数据库中手动创建的行和ID为2和1号(当时真的与数据库打LINQ,但它并没有创建行?)
还有就是日志:
INSERT INTO [DBO] .Person
VALUES(@ P0)
SELECT CONVERT(中间体,SCOPE_IDENTITY())AS [值]
- @ P0:输入NCHAR(尺寸= 10; PREC = 0;量表= 0)[耶稣]
- 背景:sqlProvider的(SQL2005)型号:AttributedMetaModel体形:3.5.30729.4926
SELECT [T 0]。[ID],[T 0]。[名] FROM [DBO]。[人] AS [T 0]
- 背景:sqlProvider的(SQL2005)型号:AttributedMetaModel体形:3.5.30729.4926
我真的很困惑,所有的博客/书籍都使用这种片段的一个元素插入到数据库中。
感谢您的帮助。