Files
linqpad/StarterSet API/Standard Definition Mapping Standards.linq
T

24 lines
1.1 KiB
C#

<Query Kind="Statements">
<Connection>
<ID>db640701-a1c5-4177-9f03-5152d093ffa7</ID>
<Persist>true</Persist>
<Server>D0011-sql-01.sdt.local</Server>
<Database>jazz tst StrataSphere 20200612.1</Database>
<ShowServer>true</ShowServer>
</Connection>
<Namespace>Newtonsoft.Json</Namespace>
<Namespace>Newtonsoft.Json.Linq</Namespace>
</Query>
var definitions = (from sdm in StandardDefinitionMappings select sdm).ToList();
//definitions
//.OrderBy(d => d.StandardDefinitionType)
//.ThenBy(d => $"{JObject.Parse(d.MappingMemberValue)["mappings"][0]["text"]}")
//.Select(x => new { x.StandardDefinitionGUID, x.StandardDefinitionType, x.MappingMemberValue }).Dump(nameof(definitions));
var inserts = definitions
.OrderBy(d => d.StandardDefinitionType)
.ThenBy(d => $"{JObject.Parse(d.MappingMemberValue)["mappings"][0]["text"]}")
.Aggregate("INSERT INTO dbo.StandardDefinitionMapping ( StandardDefinitionGUID, StandardDefinitionType, MappingMemberValue )\r\nVALUES",
(x, y) => $"{x}\r\n\t('{y.StandardDefinitionGUID}', N'{y.StandardDefinitionType}', N'{y.MappingMemberValue}'),");
inserts.TrimEnd(',').Dump(nameof(inserts));