none
自定义页面绑定的问题? RRS feed

  • 问题

  • 现有一个自定义页面,使用GridView 绑定BusinessEntities[],当实体的字段类型为nvarchar时,绑定列是可以显示出来的,但是如果是int、money、picklist或lookup等类型时,列值就显示不出来了。

    需要怎么样处理呀? TKS

    2010年8月4日 9:08

答案

  • DataTable dt=new DataTable();

    dt.AddColumn(...);

    dt.AddColumn(...);

    foreach (BusinessEntity be in wareproducts )

    {

    DataRow row=dt.NewRow();

    row["xxx"]=((wareproduct)be).xxx.value;

    dt.AddRow(row);

    }

    类似这样写.

    • 已标记为答案 laterlu 2010年8月10日 5:24
    2010年8月9日 23:53
  • 我有很多就直接下sql.不过要注意权限,如果不涉及权限的还好.

    也可以用FilteredView这个是有权限的.

    • 已标记为答案 laterlu 2010年8月12日 2:07
    2010年8月11日 12:24

全部回复

  • 转换为数组后再绑定吧


    Batistuta Cai | MSCRM MVP | www.techsun.com
    2010年8月6日 1:15
    版主
  • 我看到一个Sample是先建一个DataTable ,然后把Entity转为DataTable
    2010年8月6日 2:38
  • 我是把GridView的数据源直接设置为BusinessEntities[] 了代码大概如下:

    gv.DataSoruce= this.QueryStock();

    gv.DataBind();

    public BusinessEntity[] QueryStock(string wareId, string productId)
    {

           ... ...

           BusinessEntityCollection wareproduct = service.RetrieveMultiple(query);
           return wareproduct.BusinessEntities;

    }

    碰到int、money、picklist或lookup等类型时就傻眼了啊??如何处理啊?

    2010年8月7日 14:50
  • 不可能是多种类型共存吧,你只能认为转换一下,转换成可以绑定的类型。
    2010年8月9日 2:39
  • 不可能是多种类型共存吧,你只能认为转换一下,转换成可以绑定的类型。
    不是多种类型共存,一个字段一个类型嘛。如果要转的话,怎么个转法啊,给个Demo看看呀
    2010年8月9日 10:42
  • 各位给个意见啊,我整个项目的90%都是isv页面啊 

    2010年8月9日 12:12
  • DataTable dt=new DataTable();

    dt.AddColumn(...);

    dt.AddColumn(...);

    foreach (BusinessEntity be in wareproducts )

    {

    DataRow row=dt.NewRow();

    row["xxx"]=((wareproduct)be).xxx.value;

    dt.AddRow(row);

    }

    类似这样写.

    • 已标记为答案 laterlu 2010年8月10日 5:24
    2010年8月9日 23:53
  • DataTable dt=new DataTable();

    dt.AddColumn(...);

    dt.AddColumn(...);

    foreach (BusinessEntity be in wareproducts )

    {

    DataRow row=dt.NewRow();

    row["xxx"]=((wareproduct)be).xxx.value;

    dt.AddRow(row);

    }

    类似这样写.

    这样搞就晕菜了,开发速度慢不说,性能还低,查一次还的转一次;

    NND,惹毛了我直接在数据库里写几个store procdures,然后sqlconnection 过去算了,有没有这么搞的啊 ??

    2010年8月10日 2:57
  • 我有很多就直接下sql.不过要注意权限,如果不涉及权限的还好.

    也可以用FilteredView这个是有权限的.

    • 已标记为答案 laterlu 2010年8月12日 2:07
    2010年8月11日 12:24
  • 可以直连数据库用FilteredView试图传入用户guid就可有权限啦
    2010年8月16日 10:14