private CSharpRepoGenerator.RepositoryFunction GenerateUpdate(RepositoryMemberInfo repositoryMembmerInfo)
        {
            var    className    = CSharpCodeClassGenerator.GetClassName(repositoryMembmerInfo.Info.BaseAtom);
            string updateFields = GetUpdateFields(repositoryMembmerInfo, StringExt.ToCamelCase(className))
                                  .IndentAllLines(7, true);

            var signature = $"Task Update({className} {StringExt.ToCamelCase(className)})";

            var template = $@"
public async {signature}
{{
    using (var db = GetDb())
    {{
        var payload = new
                        {{
                            {updateFields}
                        }};

        await db.ExecSprocAsync(""{repositoryMembmerInfo.Info.Name}"", payload).ConfigureAwait(continueOnCapturedContext: false);
    }}
}}";

            return(new CSharpRepoGenerator.RepositoryFunction
            {
                Body = template,
                Signature = signature
            });
        }
Пример #2
0
 protected string GetClassName(RepositoryMemberInfo repositoryMembmerInfo)
 {
     return(CSharpCodeClassGenerator.GetClassName(repositoryMembmerInfo.Info.BaseAtom));
 }