0

IRepositoryBase

IQueryable<T> GetAll(Expression<Func<T, bool>> predicate = null, params Expression<Func<T, object>>[] includes);

存储库库

 public IQueryable<T> GetAll([OptionalAttribute][DefaultParameterValueAttribute(null)]Expression<Func<T, bool>> predicate, params Expression<Func<T, object>>[] includes)     
 {
   var set = CreateSet().IncludeMultiple(includes);
   return (predicate == null) ? set : set.Where(predicate);            
 }

IAccountService

IEnumerable<int> GetAllReferenceIds();

账户服务

public IEnumerable<int> GetAllReferenceIds()       
{    
  var accountOwners = _accountOwnerRepository.GetAll();
  return accountOwners.Select(m => m.ReferenceId).ToList();
}

帐户控制器

public ActionResult ReferenceIdPartial()      
{

ViewData["AccountOwners"] = accountOwnerService.GetAllReferenceIds();

return PartialView();

}

MVC 部分视图- devexpress 组合框 mvc 扩展

settings.Properties.Columns.Add("ReferenceId", "Reference Id", Unit.Percentage(100));

错误 - 未找到列 ReferenceId

我正在通过 GetReferenceIds() 发送一个 int 集合

有没有办法从 Controller 调用列。AccountOwner(a=>a.ReferenceIds, select ReferenceIds) 之类的东西 - 我应该能够获取列名和数据。

谢谢你的时间。

4

1 回答 1

0

这是一个进入黑暗的镜头,我实际上只理解你的最后一句话“我应该能够获取列名以及数据” - 并且可以想象如果你将一个集合绑定到一个组合框(我不知道DevExpress 组合框扩展) 组合框控件需要一个具有属性名称/属性值对的对象的集合,而不仅仅是一个值的集合 ( )。因此,无需触摸您可以尝试:intAccountService

public ActionResult ReferenceIdPartial()      
{
    ViewData["AccountOwners"] = accountOwnerService.GetAllReferenceIds()
        .Select(i => new { ReferenceId = i });

    return PartialView();
}

ViewData["AccountOwners"]现在将持有(匿名)对象的集合。每个对象都有一个调用属性ReferenceId,其值i从您从服务返回的 Id 中获取。

于 2012-11-06T22:24:33.990 回答