我正在尝试了解Breeze.js,
似乎Breeze要求后端对象定义了PK。 我的情况是我试图从SQL视图中读取数据。
Breeze可以使用Breeze查询SQL视图吗?什么是变通方法或更好的替代方案。
谢谢,
答案 0 :(得分:0)
是。我的C#Model到SQL视图看起来与SQL表的映射完全相同。
答案 1 :(得分:0)
是的,你可以。
Breeze需要PK进行双向绑定,即将修改后的对象发送回服务器以进行保存更改。
在您的情况下,只有一种方法可以使用SQL视图。
答案 2 :(得分:0)
以下是我如何为t-sql命令执行此操作。同样的想法适用于视图(尽管我们在模型中定义了这些视图)。效果很好。当然,没有更新或添加,但这是可以预期的。
internal class RvRDetail
{
public string DistrictName { get; set; }
public string EmployeeName { get; set; }
public string SiteName { get; set; }
public System.DateTime CalendarDate { get; set; }
public string RevenueCategoryName { get; set; }
public decimal TotalRepayment { get; set; }
public decimal TotalRevenue { get; set; }
}
[BreezeController]
public class SeasonlessRvRController : BreezeAbstractApiController
{
// GET: breeze/SeasonlessRvR/RvRData
[HttpGet]
public object RvRData(string districtList="", string showAllPeriods="0")
{
var returnData = _dbContextProvider.Context.Database
.SqlQuery<RvRDetail>("SELECT * from dbo.udf_SeasonlessRvR(@DistrictList, @ShowAllPeriods)",
new SqlParameter("@DistrictList", districtList),
new SqlParameter("@ShowAllPeriods", showAllPeriods))
.ToList();
return returnData;
}
}