Ralat Rangka Kerja Entiti: Memasukkan Nilai Eksplisit ke dalam Lajur Identiti
Apabila menghadapi ralat "Tidak boleh memasukkan nilai eksplisit untuk lajur identiti dalam jadual," ia menunjukkan bahawa percubaan sedang dibuat untuk memasukkan nilai tertentu ke dalam lajur identiti yang dijana secara automatik oleh pangkalan data.
Dalam Rangka Kerja Entiti, isu ini boleh timbul apabila lajur kenaikan identiti pangkalan data ditetapkan, tetapi sifat StoreGeneratedPattern dalam fail reka bentuk EF juga ditetapkan kepada identiti. Ini menyebabkan EF menganggap lajur sebagai lajur bukan identiti, cuba memasukkan nilai dan bukannya bergantung pada kenaikan automatik pangkalan data.
Untuk menyelesaikan isu ini, laraskan sama ada tetapan kenaikan identiti pangkalan data atau EF harta StoreGeneratedPattern fail reka bentuk.
Satu cadangan adalah untuk memastikan bahawa atribut "IsDbGenerated=true" terdapat dalam fail pereka EF untuk harta yang sepadan dengan lajur identiti dalam pangkalan data. Ini menunjukkan bahawa nilai harus dijana pangkalan data.
Sebagai alternatif, jika pangkalan data memberikan nilai secara automatik, anda boleh mengemas kini fail edmx untuk mencerminkan perubahan ini. Dengan mengemas kini fail edmx, anda boleh menentukan bahawa lajur adalah dijana pangkalan data dan tidak boleh diberikan nilai khusus daripada kod aplikasi.
Atas ialah kandungan terperinci Mengapa Rangka Kerja Entiti Melemparkan Ralat 'Tidak boleh memasukkan nilai eksplisit untuk lajur identiti'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!