モデルのプロパティで[Required]
アノテーションを使用せずに、エンティティフレームワークにモデルからヌルとしてマークされたテーブルを生成させることはできますか?EFモデルのプロパティがnullでない[必須]
理由:
オブジェクトは、APIに掲載されており、私は、コントローラにModelState.IsValid
をご確認ください。プロパティはサーバサイドで生成され、外部からは来ないと考えられますが、プロパティ[Required]
がある場合、ModelState.IsValid
はfalseです(その場合はBadRequest(ModelState);
と返されます)。
他の方法で列をnullにしないようEFに指示できますか?
もう1つの解決策は、別のオブジェクト(ある種のDTO)がAPIに送られてからマッピングが行われることを期待することだと思います。しかし、このオブジェクトは、この単一のプロパティの保存とまったく同じに見えるでしょう。このようなあなたのDbContext
クラスの
ModelBuilderを使用してこれらの属性を定義できるデータアノテーションを使用する代わりに、ModelBuilder/Fluent APIを参照してください。 – benjrb
エンティティを直接受け入れないでください。あなたはそれをするだけで問題を尋ねています。別のクラスを使用し、その値をエンティティクラスのインスタンスにマップします。 –
うん!本当に役に立ちました!私がdto +マッピングを行うかどうかはわかりません。私はそれが良いと感じるかどうか試してみる。流暢なAPI私はおそらくとにかく使用します!ありがとう! – Gustav