0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【保険商品管理システムの開発】モデルのNullエラーを修正

Posted at

エラー内容

kerumatomomitsu@kerumatomomitsunoMacBook-Air InsuranceProductManager % dotnet build
復元が完了しました (0.5 秒)
  InsuranceProductManager 15 件の警告付きで成功しました (0.7 秒) → bin/Debug/net9.0/InsuranceProductManager.dll
    /Users/kerumatomomitsu/InsuranceProductManager/Models/FireInsuranceRate.cs(4,19): warning CS8618: null 非許容の プロパティ 'Region' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。
    /Users/kerumatomomitsu/InsuranceProductManager/Models/AutoInsuranceCalculationRequest.cs(5,23): warning CS8618: null 非許容の プロパティ 'VehicleClass' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。
    /Users/kerumatomomitsu/InsuranceProductManager/Models/AutoInsuranceCalculationRequest.cs(6,23): warning CS8618: null 非許容の プロパティ 'AgeGroup' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。
    /Users/kerumatomomitsu/InsuranceProductManager/Models/AutoInsuranceCalculationRequest.cs(7,23): warning CS8618: null 非許容の プロパティ 'Gender' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。
    /Users/kerumatomomitsu/InsuranceProductManager/Models/AutoInsuranceRate.cs(5,23): warning CS8618: null 非許容の プロパティ 'VehicleClass' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。
    /Users/kerumatomomitsu/InsuranceProductManager/Models/AutoInsuranceRate.cs(6,23): warning CS8618: null 非許容の プロパティ 'AgeGroup' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。
    /Users/kerumatomomitsu/InsuranceProductManager/Models/FireInsuranceCalculationRequest.cs(5,23): warning CS8618: null 非許容の プロパティ 'StructureType' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。
    /Users/kerumatomomitsu/InsuranceProductManager/Models/FireInsuranceCalculationRequest.cs(6,23): warning CS8618: null 非許容の プロパティ 'Prefecture' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。
    /Users/kerumatomomitsu/InsuranceProductManager/Models/FireInsuranceCalculationResult.cs(7,23): warning CS8618: null 非許容の プロパティ 'Details' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。
    /Users/kerumatomomitsu/InsuranceProductManager/Models/InsurancePolicy.cs(8,23): warning CS8618: null 非許容の プロパティ 'PolicyId' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。
    /Users/kerumatomomitsu/InsuranceProductManager/Models/InsurancePolicy.cs(9,23): warning CS8618: null 非許容の プロパティ 'CustomerId' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。
    /Users/kerumatomomitsu/InsuranceProductManager/Models/InsurancePolicy.cs(10,23): warning CS8618: null 非許容の プロパティ 'PlanName' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。
    /Users/kerumatomomitsu/InsuranceProductManager/Models/Customer.cs(8,23): warning CS8618: null 非許容の プロパティ 'CustomerId' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。
    /Users/kerumatomomitsu/InsuranceProductManager/Models/Customer.cs(9,23): warning CS8618: null 非許容の プロパティ 'Name' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。
    /Users/kerumatomomitsu/InsuranceProductManager/Models/Customer.cs(11,23): warning CS8618: null 非許容の プロパティ 'Email' には、コンストラクターの終了時に null 以外の値が入っていなければなりません。'required' 修飾子を追加するか、プロパティ を Null 許容として宣言することを検討してください。

修正例

下記の様に各モデルの変数定義にあるデータ型(string)の末尾に「?」を追記することで、Null値を許容しエラーを解消しました。

namespace InsuranceProductManager.Models
{
    public class AutoInsuranceCalculationRequest
    {
        public string? VehicleClass { get; set; }
        public string? AgeGroup { get; set; } // "全年齢", "21歳以上", "26歳以上"
        public string? Gender { get; set; }   // "男性" or "女性"
        public int Grade { get; set; }       // 等級(1~20)
        public int AnnualMileage { get; set; } // 年間走行距離(km)
        public bool IncludeVehicleDamage { get; set; }
        public bool IncludePersonalInjury { get; set; }
        public bool IncludeLawyerService { get; set; }
        public int Years { get; set; }
    }
}
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?