@@ -2931,26 +2931,48 @@ let ``mock for unit-testing: datacontext``() =
29312931
29322932
29332933// Generated with dc.Main.OrderDetails.TemplateAsRecord
2934- type MyMainOrders = { CustomerId : String voption ; EmployeeId : Int64 voption ; Freight : Decimal voption ; OrderDate : DateTime voption ; OrderId : Int64 ; RequiredDate : DateTime voption ; ShipAddress : String voption ; ShipCity : String voption ; ShipCountry : String voption ; ShipName : String voption ; ShipPostalCode : String voption ; ShipRegion : String voption ; ShippedDate : DateTime voption }
2935-
2936- type MyMainOrders2 () =
2937- class
2938- member val CustomerId = ValueSome " " with get, set
2939- member val ShipRegion = ValueSome " " with get, set
2940- end
2934+ type OrderDetailsRecordVopts = { CustomerId : String voption ; EmployeeId : Int64 voption ; Freight : Decimal voption ; OrderDate : DateTime voption ; OrderId : Int64 ; RequiredDate : DateTime voption ; ShipAddress : String voption ; ShipCity : String voption ; ShipCountry : String voption ; ShipName : String voption ; ShipPostalCode : String voption ; ShipRegion : String voption ; ShippedDate : DateTime voption }
29412935
2936+ type OrderDetailsClassVopts () =
2937+ member val CustomerId = ValueSome " " with get, set
2938+ member val ShipRegion = ValueSome " " with get, set
29422939
29432940[<Test >]
2944- let ``simple select query with MapTo`` () =
2941+ let ``simple select query with MapTo with voptions `` () =
29452942 let dc = sqlValueOption.GetDataContext()
29462943
29472944 let qry =
29482945 query {
29492946 for ord in dc.Main.Orders do
29502947 select ( ord)
29512948 } |> Seq.head
2952- let mapped1 = qry.MapTo< MyMainOrders >()
2953- let mapped2 = qry.MapTo< MyMainOrders2 >()
2949+ let mapped1 = qry.MapTo< OrderDetailsRecordVopts >()
2950+ let mapped2 = qry.MapTo< OrderDetailsClassVopts >()
29542951
29552952 Assert.AreEqual( ValueSome " VINET" , mapped1.CustomerId)
2953+ Assert.True( mapped1.ShipRegion.IsNone)
29562954 Assert.AreEqual( ValueSome " VINET" , mapped2.CustomerId)
2955+ Assert.True( mapped2.ShipRegion.IsNone)
2956+
2957+ type OrderDetailsRecordOpts = { CustomerId : String option ; EmployeeId : Int64 option ; Freight : Decimal option ; OrderDate : DateTime option ; OrderId : Int64 ; RequiredDate : DateTime option ; ShipAddress : String voption ; ShipCity : String option ; ShipCountry : String option ; ShipName : String option ; ShipPostalCode : String option ; ShipRegion : String option ; ShippedDate : DateTime option }
2958+
2959+ type OrderDetailsClassOpts () =
2960+ member val CustomerId = Some " " with get, set
2961+ member val ShipRegion = Some " " with get, set
2962+
2963+ [<Test >]
2964+ let ``simple select query with MapTo with options`` () =
2965+ let dc = sqlOption.GetDataContext()
2966+
2967+ let qry =
2968+ query {
2969+ for ord in dc.Main.Orders do
2970+ select ( ord)
2971+ } |> Seq.head
2972+ let mapped1 = qry.MapTo< OrderDetailsRecordOpts>()
2973+ let mapped2 = qry.MapTo< OrderDetailsClassOpts>()
2974+
2975+ Assert.AreEqual( Some " VINET" , mapped1.CustomerId)
2976+ Assert.True( mapped1.ShipRegion.IsNone)
2977+ Assert.AreEqual( Some " VINET" , mapped2.CustomerId)
2978+ Assert.True( mapped2.ShipRegion.IsNone)
0 commit comments