2016-10-07 6 views
0

Web APIを開発していますが、データを返す際にエラーが発生しています。明示的変換エラー

が暗黙タイプ

を変換することはできません私は私があなたのような偉大な開発者からいくつかの助けを持って聞かせて、エラーを修正しようとしたが失敗しました。私は感謝します。

public IEnumerable<TABLE1> LoadSubIndustryByID(int id) 
{ 
    foreach (var subIndustry in Db.TABLE1.Where((u) => u.us_user_id == id)) 
    { 
     var childIndustry = Db.TABLE2.Where((c) => c.sci_cat_id == subIndustry.sci_cat_id); 
     yield return childIndustry; 
    } 
} 

このステートメントは: は以下のコードであるyield return childIndustry;がエラーを与え、他の文は大丈夫です。実際にはそれはchildIndustryのためだけに文句を言う。

+0

'childIndustry'は' IEnumerable 'ですが、あなたのメソッドは' IEnumerable 'を返すためです。メソッドの戻り値の型を 'IEnumerable 'に変更する必要があります。 –

答えて

1

TABLE2のタイプを生成しているときに、関数がTABLE1のIEnumerableを戻しています。

あなたはこれがうまくいくIEnumerable<TABLE2>

0
public IEnumerable<TABLE2> LoadSubIndustryByID(int id) 
{ 
    foreach (var subIndustry in Db.TABLE1.Where((u) => u.us_user_id == id)) 
    { 

     var childIndustry = Db.TABLE2.Where((c) => c.sci_cat_id == subIndustry.sci_cat_id); 

     yield return childIndustry; 
    } 
} 

返すために機能を変更する必要があります。

関連する問題