2015-12-02 9 views
5

Visual Studio 2015のMVCビューの足場は、汎用IDを含む継承した基本クラスでは機能しませんか?簡単なテストケース:MVCビューの足場は汎用ベースクラスでは機能しませんか?

public abstract class BaseEntity 
{ 
} 

public abstract class Entity<TKey> : BaseEntity 
{ 
    public TKey Id { get; set; } 
} 

public class Country : Entity<int> 
{ 
    public string Name { get; set; } 
    public string CountryCode { get; set; } 
} 

次のエラーのポップアップで国のエンティティの結果を用いて(削除、編集、例えばリストの作成)足場のビューを作成しようとしてい:

にエラーが発生しました選択されたコードジェネレータを実行しています: 'メソッドまたは操作は実装されていません。

私はTKey型パラメータを削除し、IDの固定式を定義することによって、Entity非ジェネリックを作る場合、私は、ビューを足場ことができます。

私はこの単純なケースで知っていますが、ジェネリックベースクラスを持つことで多くの作業を節約できません。また、「ベストプラクティス」は、ビュー内でドメインモデルの代わりにビューモデルを使用することです。しかし、ジェネリック型の基本クラスを使用していることが、足場に問題を引き起こしている理由を理解したいと思います。

答えて

2

私もこのバグを経験し、Microsoft Connectで既に報告されていることを発見しました。私たちは今のところ持っているように見える唯一のオプションは次のとおりです。

  • は、Microsoftから修正を待っている
  • (ではないが素晴らしいアイデアが、多くの時間を失うことを避けることができ)、一時的な取り外し継承することにより、コントローラからビューを生成します

:同じ問題は、Visual Studio 2013(アップデート5)に影響を与えるようだが、私はそのための任意のバグトラッカーエントリを見つけられませんでした。

あなたはバグ修正の進歩に従うか、サポートチームへの更なる情報を提供したいなら、あなたはここで、Microsoftのバグトラッカーへの訪問を支払うことができます。 https://connect.microsoft.com/VisualStudio/feedback/details/2187798/mvc-view-scaffolding-not-working

関連する問題