我的情况:
所以,上周我用ILSpy将.NET程序集反编译成C#; 从那时起,我已经投入大量精力来按摩文件/项目等,以便它们都能正常工作(有很多小错误[主要由ILSpy的代码生成过程引起]和随机问题而且我我一直在修理它们.我现在距离我的目标只有几英寸,看到终点线!
但是,瞧瞧:我刚刚意识到所有的XML评论都缺失了.> <
我做了一些淘洗,我能够找到.xml智能文件,里面有所有Visual Studio生成的注释.
我想要完成的内容:
我希望将生成的.xml智能文件中的这些注释复制回源文件(当然,这是自动化的,因为在这个程序集中有大约5000个类).
我的问题:
我该怎么办?是否有任何工具可以帮助我自动执行此任务?
我有一个DbSet<Items>集合.
主键是Guid.我不想通过这个主键订购.我想通过名为"Order"的可编辑十进制属性进行排序.
我所拥有的代码非常简单,在用户将"$ top"参数放入请求之前,它非常有用:
public class ItemsController : ApiController
{
protected DbContext ctx = // ...
// GET api/documents
[EnableQuery()]
public IQueryable<Item> Get()
{
return ctx.Items.OrderBy(o => o.Order).AsQueryable();
}
Run Code Online (Sandbox Code Playgroud)
当用户将"$ top"放入查询字符串时,订单会全部搞乱(这可能会强制排序由主键完成,以获得一致的分页结果 - 但是,在我的情况下,这是相反的效果,它阻止我有一致的分页结果).
我已经尝试过移动.AsQueryable()到查询的早期(在.OrderBy(...)子句之前),我已经尝试过没有了.AsQueryable(),我已经尝试了两个AsQueryables等.
这个表中会有很多项目,所以需要通过一个来完成IQueryable(枚举Web服务器上的所有项目IEnumerable都不是一个选项).
到目前为止唯一有用的是从客户端传递"$ orderby = Order",但我不想强迫它(似乎很容易被遗忘).
1.)我可以做些什么来使我的Order财产订购这里的默认行为?
2.)或者失败了,无论如何,是否有人欺骗WebApi/OData认为自定义了"$ orderby = Order"子句?