疑問があります。私はC#とソフトウェアアーキテクチャの初心者であることを認めます。ASP.NET MVC4 + EF5に取り組んでおり、3層アーキテクチャを使用してアプリを構造化しようとしています。
私のBLでは、次の2つのビューモデルを作成しました。
語
namespace BL
{
public class WordViewModel : IWord
{
[Required, ReadOnly(true)]
public int WordId { get; set; }
public string LanguageId { get; set; }
public int VocabularyId { get; set; }
public LanguageViewModel Language { get; set; }
public VocabularyViewModel Vocabulary { get; set; }
}
}
単語
namespace BL
{
public class VocabularyViewModel : IVocabulary
{
[Required, ReadOnly(true)]
public int VocabularyId { get; set; }
public string Name { get; set; }
public List<WordViewModel> Words { get; set; }
}
}
デバッグ私は一種の「ネストされたループ」があることに気づきました(そしてそれは明らかです)。つまり、単語には単語のリストを含む語彙が含まれ、各単語には単語のリストを含む語彙が含まれます...そしてすぐ。
チュートリアルに続いて、私が書いたものは正しいように思えます..しかし、私はパフォーマンスとメモリ消費を考えています..それは問題ですか?(しかし、私の設計も間違っているはずです、私はそうしないことを望みます)
さらに、それは大きな問題ではありませんが、AutoMapperを使用して、DALレイヤー(実際にはWordRepositoryとVocabularyRepository)によって提供されるオブジェクトをビューモデルにマップしています。ネストされたマッピングを作成するのは簡単ですが、繰り返しになりますが、メモリを消費しますか?
ありがとう..私は初心者であることを知っています、そして私は最善を尽くそうとしています:)