小编Ash*_*pta的帖子

自数据库创建以来,支持<Database>上下文的模型已更改

错误消息:

"自创建数据库以来,支持'AddressBook'上下文的模型已经改变.手动删除/更新数据库,或者使用IDatabaseInitializer实例调用Database.SetInitializer.例如,RecreateDatabaseIfModelChanges策略将自动删除并重新创建数据库,并且可选择用新数据播种."

我正在尝试使用代码优先功能,以下是我写的:

var modelBuilder = new ModelBuilder();
var model = modelBuilder.CreateModel();
using (AddressBook context = new AddressBook(model))
{
    var contact = new Contact
    {
        ContactID = 10000,
        FirstName = "Brian",
        LastName = "Lara",
        ModifiedDate = DateTime.Now,
        AddDate = DateTime.Now,
        Title = "Mr."

    };
    context.contacts.Add(contact);
    int result = context.SaveChanges();
    Console.WriteLine("Result :- "+ result.ToString());
}
Run Code Online (Sandbox Code Playgroud)

上下文类:

public class AddressBook : DbContext
{
    public AddressBook()
    { }
    public AddressBook(DbModel AddressBook)
        : base(AddressBook)
    {

    }
    public DbSet<Contact> contacts { get; set; }
    public …
Run Code Online (Sandbox Code Playgroud)

.net code-first entity-framework-4

245
推荐指数
9
解决办法
23万
查看次数

避免在SQL Server中的INSERT INTO SELECT查询中重复

我有以下两个表:

Table1
----------
ID   Name
1    A
2    B
3    C

Table2
----------
ID   Name
1    Z
Run Code Online (Sandbox Code Playgroud)

我需要从数据插入Table1Table2.我可以使用以下语法:

INSERT INTO Table2(Id, Name) SELECT Id, Name FROM Table1
Run Code Online (Sandbox Code Playgroud)

但是,在我的情况下,重复的ID可能存在Table2(在我的情况下,它只是" 1")并且我不想再次复制,因为这会引发错误.

我可以这样写:

IF NOT EXISTS(SELECT 1 FROM Table2 WHERE Id=1)
INSERT INTO Table2 (Id, name) SELECT Id, name FROM Table1 
ELSE
INSERT INTO Table2 (Id, name) SELECT Id, name FROM Table1 WHERE Table1.Id<>1
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法可以不使用IF - ELSE?我想避免INSERT INTO-SELECT基于某些条件的两个陈述.

sql t-sql sql-server sql-insert

97
推荐指数
5
解决办法
30万
查看次数

如何从Xdocument获取Xml作为字符串

我是linq to XML的新手.在构建了XDocument之后,如何获得它的OuterXml,就像使用XmlDocument一样.

.net c# xml string linq-to-xml

66
推荐指数
4
解决办法
6万
查看次数

从行中包含最大日期的表中选择信息

我的表看起来像这样:

group    date      cash  checks
  1    1/1/2013     0      0
  2    1/1/2013     0      800
  1    1/3/2013     0      700
  3    1/1/2013     0      600
  1    1/2/2013     0      400
  3    1/5/2013     0      200
Run Code Online (Sandbox Code Playgroud)

- 不需要现金只是证明该表中有更多信息

我想得到每个唯一的组,其中日期是最大值,检查大于0.所以返回看起来像这样:

group    date     checks
  2    1/1/2013    800
  1    1/3/2013    700
  3    1/5/2013    200
Run Code Online (Sandbox Code Playgroud)

尝试代码:

SELECT group,MAX(date),checks
    FROM table
    WHERE checks>0
    GROUP BY group
    ORDER BY group DESC
Run Code Online (Sandbox Code Playgroud)

问题虽然它给了我所有的日期和检查,而不仅仅是最大日期行.

使用ms sql server 2005

sql sql-server-2005 greatest-n-per-group

49
推荐指数
4
解决办法
30万
查看次数

如何在python中提取与fft值相关的频率

fft在numpy中使用了函数,导致了一个复杂的数组.如何获得准确的频率值?

python numpy fft

37
推荐指数
3
解决办法
7万
查看次数

使用SqlDataReader获取二进制数据

我有一个名为Blob(Id(int),Data(Image))的表.我需要使用SqlDataReader来获取图像数据.请注意,我不想将Response.Binarywrite()数据发送到浏览器.我只需要将二进制数据作为byte []来使用相同的内部操作.我能想到的唯一方法是使用SqlDataReader获取id并再次使用SqlCommand.ExecuteScalar()将其作为给定id的byte [].我可以只使用SqlDataReader(SqlCommand.ExecuteReader)将该图像数据作为byte []吗?我错过了什么吗?

c# ado.net

35
推荐指数
4
解决办法
8万
查看次数

如何在SQL Server中转义斜杠

DECLARE @Query nvarchar(max)
SET @Query ='DECLARE @Test nvarchar(max)
SELECT @Test = ''\a'\b'\c''
SELECT @Test
PRINT @Query
exec sp_executesql @Query
Run Code Online (Sandbox Code Playgroud)

我想把输出作为\ a\b\c.上面的错误可能是因为我无法转义\字符.

sql t-sql sql-server

20
推荐指数
2
解决办法
5万
查看次数

如何在VBA中出现错误时从函数返回

我是VBA的新手,想要在看到错误时从函数返回.不能这样做.有什么指针吗?

Function GetEditboxValue(control As IRibbonControl, text As String) As String

    If Not IsMissing(text) Then
        If Not IsNumeric(text) Then
            MsgBox "Please enter numeric value only."
            ' I WANT TO RETURN HERE 
        End If
    End If


    If control.id = "xyz" Then
    spaceAboveTable = text
    End If


End Function
Run Code Online (Sandbox Code Playgroud)

error-handling vba return return-value

19
推荐指数
2
解决办法
5万
查看次数

实体框架 - 期望'providerInvariantName'参数的非空字符串

好吧,这可能与EF无关.我正在尝试使用代码优先功能,以下是我写的: -

var modelBuilder = new ModelBuilder();
            var model = modelBuilder.CreateModel();
            using (AddressBook context = new AddressBook(model))
            {
                var contact = new Contact
                {
                    ContactID = 10000,
                    FirstName = "Brian",
                    LastName = "Lara",
                    ModifiedDate = DateTime.Now,
                    AddDate = DateTime.Now,
                    Title = "Mr."

                };
                context.contacts.Add(contact);
                int result = context.SaveChanges();
                Console.WriteLine("Result :- "+ result.ToString());

            }
Run Code Online (Sandbox Code Playgroud)

上下文类: -

public class AddressBook : DbContext
    {
        public AddressBook()
        { }
        public AddressBook(DbModel AddressBook)
            : base(AddressBook)
        {

        }
        public DbSet<Contact> contacts { get; set; }
        public …
Run Code Online (Sandbox Code Playgroud)

.net c# ado.net entity-framework

17
推荐指数
1
解决办法
1万
查看次数

Tomcat是否支持TLS v1.2?

我想知道Apache Tomcat是否支持TLS v1.2协议.我没有找到任何关于此的文档!谢谢!

apache security ssl tomcat web-services

15
推荐指数
3
解决办法
8万
查看次数