2017-02-20 5 views
0

クラス:fastcrudでSQLコードを書き込む方法は?

[Table("department_types", Schema = "public")] 
public class DepartmentTypes 


[Table("departments", Schema = "public")] 
    public class Department 

クエリ:

private string BuildQuery() 
      { 
       return OrmConfiguration.GetSqlBuilder<DepartmentViewModel>().Format(
        [email protected]" SELECT {nameof(Department.Id):C}, 
           {nameof(Department.Name):C}, 
           {nameof(Department.TypeId):C}, 
           {nameof(DepartmentTypes.Name):C} as DepartmentTypeName 
         FROM {nameof(Department):T} 
         LEFT JOIN {nameof(DepartmentTypes):T} 
         ON {nameof(Department.TypeId):C} = {nameof(DepartmentTypes.Id):C}"); 
      } 

結果クラス:

public class DepartmentViewModel 
    { 
     public int Id { get; set; } 

     public string Name { get; set; } 

     public int TypeId { get; set; } 

     public string DepartmentTypeName { get; set; } 

    } 

私は部門とDepartmentTypesに参加しDepartmentViewModel結果を取得したい...

今の代わりに{nameof(DepartmentTypes):T}(exa 「department_types」という名前のDepartmentTypesの名前ではなく「DepartmentViewModel」を入れます。

答えて

0

回答が見つかりました。

+0

私はあなたのやり方で試してみましたが、私は独自の文字列補間された生のSQLクエリを作成しました。列に適切なテーブル識別子が関連付けられていれば、それでも機能します。また、エンティティとしてを宣言しているため、:Tおよび:C項目を使用して、テーブル/列宣言の一部をショートカットすることができます。 –

関連する問題