2016-08-17 8 views
0

を挿入しないと言うことができますどのように、私は新しいオブジェクトを追加してみてください、とのSQLProfilerは「値を挿入することはできませんスロークエリ私はEF6は私が移行</p> <pre><code>AlterColumn("Users", "NotNullValue", c => c.String(nullable: false, defaultValue: "Work it!")); </code></pre> <p>にdeafaultValueを設定NULL値に

INSERT [dbo].[WowTable]([NotNullValue],[OnceMoreValue]) VALUES (NULL, 'val') 

私を見ます列にnullを入れてください "

ヌルのときにプロパティの挿入と更新を停止する方法はありますか?

UPD: ドメインクラス:

public class User 
{ 
    public string NotNullValue { get; set; } 
    public int Id { get; set; } 
    public string OnceMoreValue { get; set; }   
} 

アップデート方法:

public Task AddOrUpdate<TEntity>(TEntity entity) where TEntity : class, IEntity 
    { 
     _dbContext.Set<TEntity>().AddOrUpdate(x => x.Id, entity); 
     return _dbContext.SaveChangesAsync(); 
    } 

呼び出し:あなたはNotNullValueプロパティの[必須]属性を使用してモデルを検証することができますいずれか

AddOrUpdate(new User{OnceMoreValue = "val"}); 
+0

ルックq/7822316/861716)。文字列をnullにできないようにすることはできません。 –

答えて

0

public class User 
{ 
[Required] 
public string NotNullValue { get; set; } 
public int Id { get; set; } 
public string OnceMoreValue { get; set; }   
} 

参考:https://msdn.microsoft.com/en-in/data/gg193959.aspx

または私はあなたの移行スクリプトで表示されるものと、あなたは(「それを仕事」)このプロパティのデフォルト値を持っています。だからあなたのUserクラスのコンストラクタに、あなたは= NotNullvalueを設定することができ、このデフォルト値は、あなたが言及した場合に保存されるように、「それを仕事」:[この](http://stackoverflow.com/で

AddOrUpdate(new User{OnceMoreValue = "val"}); 
関連する問題

 関連する問題