zoukankan      html  css  js  c++  java
  • 一个泛型的小例子 Linq查询解决Combox绑定问题

    自己写的皮肤为了好看只取了Text没有Value,现在用这个方法解决一下只有Text取Value值不方便的方式
    你只要有一个查询这个表中所有数据的方法就可以了当然也可以只返回这两列
     
    代码
    /// <summary>
            
    /// 根据栏目栏目名称获取索引
            
    /// </summary>
            
    /// <param name="fiId">栏目名称</param>
            
    /// <returns>栏目索引</returns>
            private string GetFunctionNameByName(string Name)
            {
                var result 
    = this.objWSM.GetFunctionInfo().AsEnumerable().Where(f1 => f1["fiName"].ToString().Trim() == Name.ToString().Trim()).FirstOrDefault();
                
    return result["fiId"].ToString();
            }


    GetFunctionInfo是一个查询表中所有信息的方法

    /// <summary>
            
    /// 根据栏目索引获取栏目名称
            
    /// </summary>
            
    /// <param name="fiId">栏目索引</param>
            
    /// <returns>栏目名称</returns>
            private string GetFunctionNameById(int fiId)
            {
                var result 
    = this._fiTable.AsEnumerable().Where(fi => Convert.ToInt32(fi["fiId"]) == fiId).FirstOrDefault();
                
    return result["fiName"].ToString();
            }

    两个方法是对应的,感觉这样查询方便不少,直接在前台就可以完成,跟数据库连接的时候只要一个查询所有的方法就可以了

    来解释一下这一步吧

    this.objWSM.GetFunctionInfo().AsEnumerable().Where(f1 => f1["fiName"].ToString().Trim() == Name.ToString().Trim()).FirstOrDefault();

    this.objWSM.GetFunctionInfo()是一个查询所有的方法

    AsEnumerable().Where()反回的是一个泛型的行,可以用LinQ表达式查询

    f1 => f1["fiName"].ToString().Trim() == Name.ToString().Trim())Linq表达式

    F1是新生成的一个行的名称

     f1["fiName"].当然就是这个行里的列名了,=>后面是条件前面是集合

    f1["fiName"].ToString().Trim() == Name.ToString().Trim()就表达在这个行里有这两个值相等的,就取出来

    FirstOrDefault();表示取第一行的意思

    到这里问题差不多都解决了,只要一个查询这两列的方法,在前台写上这样两个方法,每次调用就OK了,不用专门的写两个访问数据库的方法,感觉还是很方便的。


     

                                                                                                                                                                                                                        

  • 相关阅读:
    QT::目录/文件
    QT::标题栏/目录/托盘/工具条/状态栏
    QT::布局
    PHP 发送http请求
    php 图片缩放然后合成并保存
    PHP 打开已有图片进行编辑
    一些实用的方法整理(与语言无关)
    PHP 与pdf文档 与条码
    Excel导入遇到的问题An object with the same key already exists in the ObjectStateManager……
    【随笔】Apache降权和禁用PHP危险函数
  • 原文地址:https://www.cnblogs.com/sufei/p/1645763.html
Copyright © 2011-2022 走看看