に暗黙的に変換文字列ことができない私はViewModelにモデルタイプ
public class SubjectOverviewViewModel
{
[DisplayName("Neptunkód")]
public Subject NeptunId { get; set; }
public SubjectContent TaFoAdatok { get; set; }
public SubjectContent TaAdatok { get; set; }
public SubjectContent TaOktatok { get; set; }
public SubjectContent TaKurzusok { get; set; }
public SubjectContent IrodalomLista { get; set; }
public virtual SubjectContent SubjectContent { get; set; }
public virtual Subject Subject { get; set; }
}
とcontoller持っている:私はエラーを取得select new SubjectOverviewViewModel
セクションで
irfwebpage20161013070934_dbEntities2 db = new irfwebpage20161013070934_dbEntities2(); //dbcontext class
List<SubjectOverviewViewModel> list = new List<SubjectOverviewViewModel>(); // to hold list of Customer and order details
var customerlist = (from x in db.Subject
join c in db.SubjectContent on x.NeptunId equals c.NeptunId
select new SubjectOverviewViewModel { NeptunId=c.NeptunId,
TaAdatok=c.TaAdatok,
TaFoAdatok=c.TaFoAdatok,
IrodalomLista=c.IrodalomLista,
TaKurzusok=c.TaKurzusok });
例えばc.TaAdatokは、文字列とそれであることをモデルタイプに暗黙的に変換することはできません。最初の引数NeptunIDは他の文字列と同じように文字列型ですが、エラーは表示されません。私がここで立ち往生してくれるのを助けてください。私はStackOverflow上の他のスレッドを見ていましたが、私がすでに実装していて動作しなかったソリューションです。
public partial class SubjectContent
{
public string NeptunId { get; set; }
public string TaFoAdatok { get; set; }
public string TaAdatok { get; set; }
public string TaOktatok { get; set; }
public string TaKurzusok { get; set; }
public string IrodalomLista { get; set; }
public virtual Subject Subject { get; set; }
}
public partial class Subject
{
public string NeptunId { get; set; }
public string Name { get; set; }
public virtual Node Node { get; set; }
public virtual SubjectContent SubjectContent { get; set; }
public virtual SubjectRating SubjectRating { get; set; }
public static implicit operator Subject(string v)
{
throw new NotImplementedException();
}
}
SubjectとSubjectContentは、エンティティデータモデリングのデータベースファーストメソッドによって作成されます。
var customerlist = (from x in db.Subject
join c in db.SubjectContent on x.NeptunId equals c.NeptunId
select new SubjectOverviewViewModel { NeptunId=c.NeptunId,
TaAdatok=c.TaAdatok,
TaFoAdatok=c.TaFoAdatok,
IrodalomLista=c.IrodalomLista,
TaKurzusok=c.TaKurzusok });
c.TaAdatok
string
ですがSubjectOverviewViewModel.TaAdatok
はタイプSubjectContent
は次のとおりです。
「SubjectContent」と「Subject」が何であるかわからないので、私はそれらが文字列ではないと確信しています。 'NeptunId = c.NeptunId'が例外をスローすることも確信しています。おそらく、達成しようとしていること、文字列から 'Subject/SubjectContent'オブジェクトを作成する方法を記述するべきでしょう。 –
SziaTamás! 'SubjectOverviewViewModel.TaAdatok'プロパティのタイプは何ですか?おそらく、 'string'以外の何かであり、それが問題の原因です。 –
右 - たとえば、 'SubjectOverviewViewModel.TaAdatok'クラスを表示します。 – adamshakhabov