Пример #1
0
 private void WriteEntityLoader <T>(
     ICodeContainer <T> codeContainer,
     string entityTypeName,
     string entityVarName,
     string entityIdVarName)
 {
     codeContainer.AddCode(
         $"{entityTypeName} {entityVarName} = {_entityStoreFieldName}" +
         $".GetOrCreate<{entityTypeName}>({entityIdVarName});");
 }
 private void WritePropertyAssignments <T>(ICodeContainer <T> codeContainer,
                                           IReadOnlyList <PropertyDescriptor> properties, string entityVarName)
 {
     foreach (PropertyDescriptor property in properties)
     {
         codeContainer.AddCode(
             AssignmentBuilder.New()
             .SetLefthandSide($"{entityVarName}.{property.Name}")
             .SetRighthandSide(BuildUpdateMethodCall(property)));
     }
 }
Пример #3
0
 private void WriteEntityLoader <T>(
     ICodeContainer <T> codeContainer,
     string entityTypeName)
 {
     codeContainer.AddCode(
         AssignmentBuilder
         .New()
         .SetLefthandSide($"{entityTypeName} {_entity}")
         .SetRighthandSide(
             MethodCallBuilder
             .Inline()
             .SetMethodName(_entityStore, nameof(IEntityStore.GetOrCreate))
             .AddGeneric(entityTypeName)
             .AddArgument(_entityId)));
 }