The LINQ expression node type 'ArrayIndex' is not supported in LINQ to Entities.

源代碼

string[] strCD = colneM.BusinessTypeCD.Split(',');
for (int i = 0; i < strCD.Length; i++)
{
    T_BUSINESSTYPE typeModel = ibusinesstype.FirstOrDefault(t => t.TYPE_CD == strCD[i]);
    if (typeModel != null)
    {
        if (BusinessTypeName_EN == "")
            BusinessTypeName_EN = BusinessTypeName_EN + typeModel.TYPE_NAME_EN;
        else
            BusinessTypeName_EN = BusinessTypeName_EN + "," + typeModel.TYPE_NAME_EN;
    }
}

原因是 LINQ To Entities 不認識  strCD[i]  這個鬼

解決方法  將 strCD[i] 用一個變量接收即可   

改後的代碼

string[] strCD = colneM.BusinessTypeCD.Split(',');
for (int i = 0; i < strCD.Length; i++)
{
    string TYPE_CD = strCD[i];
    T_BUSINESSTYPE typeModel = ibusinesstype.FirstOrDefault(t => t.TYPE_CD == TYPE_CD);
    if (typeModel != null)
    {
        if (BusinessTypeName_EN == "")
            BusinessTypeName_EN = BusinessTypeName_EN + typeModel.TYPE_NAME_EN;
        else
            BusinessTypeName_EN = BusinessTypeName_EN + "," + typeModel.TYPE_NAME_EN;
    }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章