天天看點

ASP EF架構,部分列查詢。linq表達式和lamb表達式兩種方式實作

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace WebApplication1
{
    public partial class WebForm3 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        //一、linq表達式,部分查詢(不是查詢所有列)
        protected void Button1_Click(object sender, EventArgs e)
        {
            EFFristModelEntities db = new EFFristModelEntities();//資料庫操作類,上下文類。
            var userInfoList = from u in db.UserInfo
                               where u.ID == 343
                               select new { UName = u.UserName, UPwd = u.UserPass };  //查詢部分列,匿名類。并不是UserInfo類型。select u;表示查詢全部列,此時userInfo是UserInfo類型。
            //var userInfoList=db.UserInfo.Where(u => u.ID>0).Select(u => new { UName = u.UserName, UPwd = u.UserPass }); 
            foreach (var userInfo in userInfoList)  //userInfo并不是UserInfo類型。
            {
                Response.Write(userInfo.UName + ":" + userInfo.UPwd);
            }
        }

        //二、擴充函數和lambda表達式,部分查詢(不是查詢所有列)
        protected void Button2_Click(object sender, EventArgs e)
        {
            EFFristModelEntities db = new EFFristModelEntities();//資料庫操作類,上下文類。
            var userInfoList = db.UserInfo.Where(u => u.ID>0).Select(u => new { UName = u.UserName, UPwd = u.UserPass }); //查詢部分列,匿名類。并不是UserInfo類型。select u;表示查詢全部列,此時userInfo是UserInfo類型。
            foreach (var userInfo in userInfoList)  //userInfo并不是UserInfo類型。
            {
                Response.Write(userInfo.UName + ":" + userInfo.UPwd);
            }
        }
    }
}
           

繼續閱讀