を使用して新しいユーザーを登録する方法がありますWebSecurity.CreateUserAndAccount(model.UserName, model.Password)
。問題は、UserProfile
モデルにGUID
キーを追加したことです。私のローカル マシンでは、このメソッドを呼び出すと空の Guid が読み込まれます。ただし、Azure では、次のエラーが発生します。
System.Data.SqlClient.SqlException (0x80131904): Cannot insert the value NULL into column 'Key', table 'Scheduler.dbo.UserProfile'; column does not allow nulls. INSERT fails.
ここで、モデルのコンストラクターで新しい GUID を生成しようとしましたが、手動でSet{}
新しい GUID を生成すると、同じエラーが発生します。
次のような CreateUserAndAccount オーバーロードを使用しようとすると:
WebSecurity.CreateUserAndAccount(model.UserName, model.Password, new { Key = Guid.NewGuid() });
次の構文エラーが発生します (実行時)。
Incorrect syntax near the keyword 'Key'.
私はこれを理解しようとして午前中のかなりの時間を費やしましたが、できません。ところで、上記の方法はすべて空の GUID00000000-0000-0000-0000-000000000000
になり、オーバーロードによってローカル マシンで構文エラーが発生します。