0

で検索したい場合req_ser ,req_year .. ,so on fields

私は次のことを行います:

            if (obj.RequestSerial != 0)
            {
                if (condition != "")
                    condition = condition + " AND ";

                condition += " req_ser= " + obj.RequestSerial;
            }

            if (obj.RequestYear != 0)
            {
                if (condition != "")
                    condition = condition + " AND ";

                condition += " req_year = " + obj.RequestYear;
            }

次に、selectステートメントで次のことを行います:

SELECT * FROM .... WHERE ..... + condition 

LINQ TO SQL エンティティで同じ概念を使用して検索する方法は?

4

1 に答える 1

6

あなたは同じロジックでそれを行うことができます...

var query = DB.MyItems;

if(conditionA != 0)
    query = query.Where(x => x.A == conditionA);

if(conditionB != 0)
    query = query.Where(x => x.B == conditionB);

var items = query.ToList();

質問のプロパティを使用すると、コードは次のようになります。

var query = DB.MyItems;//I don't know what you table it called

if(obj.RequestSerial != 0)
    query = query.Where(x => x.req_ser == obj.RequestSerial);

if(obj.RequestYear != 0)
    query = query.Where(x => x.req_year== obj.RequestYear);

var items = query.ToList();
于 2013-06-13T14:14:41.393 に答える