我想提出这个问题的背景.如果你愿意,可以跳过.很长一段时间以来,我一直密切关注stackoverflow和其他地方关于代码测试的正在进行的辩论,因为它与EF有关.一个阵营说,由于Linq与Objects&Sql和实现之间的差异,直接针对数据库进行测试.另一个人说通过嘲弄测试.
另一个意见分歧是使用存储库或接受DbContext和DbSet已经提供工作单元和存储库模式的问题.在我使用EF的时候,我已经尝试过这些阵营提供的各种意见组合.无论我做了什么,EF证明很难测试.
我很高兴地发现EF团队使得DbSet在EF 6中更具可模仿性.他们还提供了有关如何模拟DbSet的文档,包括使用Moq的异步方法.在处理涉及Web Api的最新项目时,我意识到如果我可以模拟EF,我可以跳过编写存储库,因为编写它们的正常原因是使事情变得可测试.在阅读了一些博客文章后,灵感来了......
- 背景结束---
实际问题是,遵循EF团队提供的关于如何使用Moq DbSet的示例代码,如果在任何代码中使用.Include(),则抛出ArgumentNullException.
这是我的DbContext界面:
public interface ITubingForcesDbContext
{
DbSet<WellEntity> Wells { get; set; }
int SaveChanges();
Task<int> SaveChangesAsync();
Task<int> SaveChangesAsync(CancellationToken cancellationToken);
}
Run Code Online (Sandbox Code Playgroud)
这是我的控制器处理的主要实体
public class WellEntity
{
public int Id { get; set; }
public DateTime DateUpdated { get; set; }
public String UpdatedBy { get; set; }
[Required]
public string Name { get; set; }
public string Location { get; set; }
public …
Run Code Online (Sandbox Code Playgroud) 我玩过Google Charts和其他一些java脚本图表包,但我还没有达到预期的效果.我想知道是否有人能够指向我的JavaScript绘图包,开源或商业,他们知道能够创建我们目前使用.Net图表控件创建的以下类型的图表.
注意负轴......
这里我们有多个X,Y轴.
在这里,我们有时间轴,放大...
我们正在寻找一个JavaScript图表库,可以处理这种复杂性的图表,同时配置和使用仍然有点简单......任何想法?谢谢!
目前在我的Rest服务中,我使用下面的模型返回分页数据.
public class PagedResults<T>
{
public List<LinkModel> Links { get; set; }
public int TotalCount { get; set; }
public double TotalPages { get; set; }
public List<T> Results { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这没关系,但我发现了以下帖子.
http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api#pagination
我的好奇心达到了顶峰,它提到使用HTTP标头返回链接和分页信息.虽然这篇文章提到了RFC 5988,但是我无法解读这究竟意味着什么?它是否真的被采纳为某种标准?
这里的问题是在ASP.Net Web API 2中,是否有任何支持在链接头中添加分页信息?我使用intellisense来仔细阅读HTTP响应标题,但我没有找到Links或类似的东西.
我找到了这篇文章,但它并没有真正回答我在Web API 2中轻松做到这一点的问题.