0

コレクション内のすべてのアイテムを含むコレクションの特定のオカレンスを取得したいと思います。たとえば、最初のオカレンスのすべての値を取得します。たとえば、3つのオカレンスを取得します

以下のコードがある場合、どうすればこれを達成できますか?iが1に等しい場合、コレクションの最初のオカレンスを、コレクション全体ではなく、この1つのオカレンスだけでProcessForm4PDFFormFieldsメソッドに渡します。

したがって、パラメータ「myResult」には、「i」が何であるかに基づいて渡す​​オカレンスの1つだけが含まれます。

public void GetForm4Results(string FormId, int LoanId, string MainDir3, string TemplateFile, Int16 i)
    {
        try
        {
            using (VisionEntities DbContext = new VisionEntities())
            {
                DbContext.Configuration.LazyLoadingEnabled = false;
                DbContext.Database.Connection.Open();

                int? LoanIdTmp = LoanId;

                ObjectResult<SelectForm4_Result> result = DbContext.SelectForm4(8900, LoanId);

                List<SelectForm4_Result> myResult = new List<SelectForm4_Result>();

                myResult = result.ToList();

                ProcessForm4PDFFormFields(myResult, FormId, MainDir3, TemplateFile, i);
            }
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
4

3 に答える 3

2

つまり、myResultiに結果の最初のオブジェクトを含める必要があるということですか?

myResult = result.Take(i).ToList();

または、myResultiに結果のthオブジェクトのみを含める場合は、次のようになります...

myResult = new List<SelectForm4_Result>() { result.ElementAt(i) };

ソース: http: //msdn.microsoft.com/en-us/library/bb739113.aspx

于 2012-10-25T16:48:58.230 に答える
0

質問がわからないかもしれませんが、リストの最初の項目だけが必要な場合は、次のようにすることができます。

myResult = result.ToList()[0];

またはリストにさまざまなものが含まれている場合

foreach (object o in result.ToList())
        {
            if (o.Equals(target))
            {
                myResult = o;
                break;
            }
        }
于 2012-10-25T16:44:30.150 に答える
0

これを試して、

myResult = i == 1 ? new List<PDFConverterModel.SelectForm4_Result>(result.Take(i)) : result.Take(i);

ProcessForm4PDFFormFields(myResult, FormId, MainDir3, TemplateFile, i);
于 2012-10-25T16:54:48.807 に答える