第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

LINQ中的IN子句

LINQ中的IN子句

C#
慕桂英546537 2019-09-20 14:29:32
如何在SQL Server中創(chuàng)建一個(gè)類似于where的子句?我自己做了一個(gè),但任何人都可以改進(jìn)嗎?    public List<State> Wherein(string listofcountrycodes)    {        string[] countrycode = null;        countrycode = listofcountrycodes.Split(',');        List<State> statelist = new List<State>();        for (int i = 0; i < countrycode.Length; i++)        {            _states.AddRange(                 from states in _objdatasources.StateList()                 where states.CountryCode == countrycode[i].ToString()                 select new State                 {                    StateName  = states.StateName                                     });        }        return _states;    }
查看完整描述

3 回答

?
子衿沉夜

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個(gè)贊

這個(gè)表達(dá)式應(yīng)該做你想要達(dá)到的目標(biāo)。


dataSource.StateList.Where(s => countryCodes.Contains(s.CountryCode))


查看完整回答
反對(duì) 回復(fù) 2019-09-20
?
慕容708150

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超4個(gè)贊

這將轉(zhuǎn)換為L(zhǎng)inq to SQL中的where in子句...


var myInClause = new string[] {"One", "Two", "Three"};


var results = from x in MyTable

              where myInClause.Contains(x.SomeColumn)

              select x;

// OR

var results = MyTable.Where(x => myInClause.Contains(x.SomeColumn));

在您的查詢的情況下,您可以做這樣的事情......


var results = from states in _objectdatasource.StateList()

              where listofcountrycodes.Contains(states.CountryCode)

              select new State

              {

                  StateName = states.StateName

              };

// OR

var results = _objectdatasource.StateList()

                  .Where(s => listofcountrycodes.Contains(s.CountryCode))

                  .Select(s => new State { StateName = s.StateName});


查看完整回答
反對(duì) 回復(fù) 2019-09-20
?
泛舟湖上清波郎朗

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超3個(gè)贊

我喜歡它作為擴(kuò)展方法:


public static bool In<T>(this T source, params T[] list)

{

    return list.Contains(source);

}

現(xiàn)在你打電話:


var states = _objdatasources.StateList().Where(s => s.In(countrycodes));

您也可以傳遞單個(gè)值:


var states = tooManyStates.Where(s => s.In("x", "y", "z"));

感覺更自然,更接近sql。


查看完整回答
反對(duì) 回復(fù) 2019-09-20
  • 3 回答
  • 0 關(guān)注
  • 640 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)