バディークラス(described in this answer)を設定しようとしていたため、モデルからデータベースを更新するたびに、自動生成されたEntity Frameworkクラスの設定が失われることはありません。Entity Frameworkバディークラスの結果タイプ変換エラー
MVCプロジェクトのModelsディレクトリにbuddyクラスを作成しました。このEDMXはソリューションの別のプロジェクトにあります。これは、このエラーでコンパイルに失敗します。
エラーCS0029:\プロジェクト\のBitbucket \カタログ・ツール\ TrinityCatalogTool.Data \ binに\デバッグ\ TrinityCatalogTool.Data:暗黙的に型「TrinityCatalogTool.Data.Details [Cを変換できません。 (112,35)
私は理由を理解できません。バディクラスは元のクラスの一部であるため、元のクラスをバディクラスにキャストできません。私が間違って何をしているのか?
これは私の自動生成されたクラスは、次のようになります。
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated from a template.
//
// Manual changes to this file may cause unexpected behavior in your application.
// Manual changes to this file will be overwritten if the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace TrinityCatalogTool.Data
{
using System;
using System.Collections.Generic;
public partial class Details
{
public int detail_id { get; set; }
public int parent_id { get; set; }
public string short_description { get; set; }
public string long_description { get; set; }
public string feature1 { get; set; }
public string feature2 { get; set; }
public string feature3 { get; set; }
public string feature4 { get; set; }
public string feature5 { get; set; }
public string feature6 { get; set; }
public string feature7 { get; set; }
public string feature8 { get; set; }
public virtual Parents Parents { get; set; }
}
}
そして、これは私が
using System.ComponentModel.DataAnnotations;
namespace TrinityCatalogTool.Data
{
[MetadataType(typeof(Details.Metadata))]
public partial class Details
{
private sealed class Metadata
{
[Display(Name = "Short Description")]
public string short_description { get; set; }
[Display(Name = "Long Description")]
public string long_description { get; set; }
[Display(Name = "Feature #1")]
public string feature1 { get; set; }
[Display(Name = "Feature #2")]
public string feature2 { get; set; }
[Display(Name = "Feature #3")]
public string feature3 { get; set; }
[Display(Name = "Feature #4")]
public string feature4 { get; set; }
[Display(Name = "Feature #5")]
public string feature5 { get; set; }
[Display(Name = "Feature #6")]
public string feature6 { get; set; }
[Display(Name = "Feature #7")]
public string feature7 { get; set; }
[Display(Name = "Feature #8")]
public string feature8 { get; set; }
}
}
}
[this](http://stackoverflow.com/questions/3858649/partial-classes-in-separate-dlls)が問題にヒントを与えていますか? –
ありがとう、あなたは頭の爪を打つ。私はバディクラスを自分のEntity Frameworkモデルと同じプロジェクトに移しました。今すぐ動作します。 – Patrick