1
// HomeController.cs
[AutoMap(typeof(Test), typeof(TestViewModel))]
public ActionResult Index()
{
    var tests = new List<Test>();
    tests.Add(new Test());
    return View(tests);
}

// Index.cshtml
@model IEnumerable<AutoMapperTest.Models.TestViewModel>

// AutoMapper Configuration
CreateMap<Test, TestViewModel>();

// Automapper configuration test is fine
[TestMethod]
public void Should_map_dtos()
{
    AutoMapperConfiguration.Configure();
    Mapper.AssertConfigurationIsValid();
}

ここから取得したAutoMapAttribute

アクションが「テスト」を返す場合、それは機能します。'IEnumerable'を返す場合は、返しません(明らかに、TestViewModelとIEnumerableを期待するようにビューが変更されました)。私は何が間違っているのですか?私が理解していることから、リストタイプを明示的にマップする必要はありません。

これはおそらく簡単な答えですが、これを機能させるために過去2時間費やしたので、誰かが私に解決策を教えてくれれば幸いです。

4

1 に答える 1

2

リストを含めるように AutoMapper 属性を変更したかどうかは、あなたの説明からはわかりません。

[AutoMapper(typeof(List<Test>), typeof(List<TestViewModel>)]
于 2012-04-09T05:38:42.560 に答える