作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 Npoco但在使用 FetchOneToMany 时遇到了一些问题
我有一个将 2 个表连接在一起的 sql 语句,并输出所有列。
[TableName("TableA")]
[PrimaryKey("Id")]
public class TableA
{
public int Id { get; set; }
public DateTime EffectiveDate { get; set; }
public IList<TableB> TableBs { get; set; }
}
[TableName("TableB")]
[PrimaryKey("TableBId")]
public class TableB
{
public int TableBId { get; set; }
public int SomeNumber { get; set; }
public int Id { get; set; } // TableA id
}
Func<TableA, object> func1 = (x) => x.Id;
Func<TableB, object> func2 = (x) => x.Id;
var test = RelationExtensions.FetchOneToMany<AdminFeeBandGroup, AdminFeeBand>(unitOfWork.Db, func1,func2,sql, 1,1,"10-18-2012","10-22-2012");
我在真实查询中传递了 4 个参数。我得到一个结果,TableBs 属性
已填充且看起来不错。但是,由于某种原因,EffectiveDate 没有填写,而是默认的 C# 时间。
我错过了什么?
编辑
这是我的查询
SELECT TableA.Id, TableA.EffectiveDate, TableB.TableBId, TableB.SomeNumber
FROM TableA INNER JOIN
TableB ON TableA.Id = TableB.Id
WHERE (TableA.EffectiveDate = @0)
Func<TableA, object> func1 = (x) => x.Id;
Func<TableB, object> func2 = (x) => x.Id;
var test = RelationExtensions.FetchOneToMany<AdminFeeBandGroup, AdminFeeBand>(unitOfWork.Db, func1,func2,sql, "10-18-2012");
最佳答案
它应该是这样工作的。
var sql = "select a.*, b.* from tablea a
inner join tableb b on a.id = b.id
where EffectiveDate = @0"
List<TableA> results =
db.FetchOneToMany<TableA,TableB>(x=>x.Id, sql, new DateTime(2012,10,18))
您必须确保您的列的选择顺序与通用参数的列出顺序相同。
关于c# - 如何使用 Npoco FetchOneToMany?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13019625/
我正在尝试使用 Npoco但在使用 FetchOneToMany 时遇到了一些问题 我有一个将 2 个表连接在一起的 sql 语句,并输出所有列。 [TableName("TableA")]
我是一名优秀的程序员,十分优秀!