/ / Преобразуване на низове за валидиране на modelstate в масив от обекти - c #, asp.net-mvc, mbunit

Конвертирайте струните за проверка на модела за масив от обекти - c #, asp.net-mvc, mbunit

Все още не е удобно с всички изброени номера. Опитвам се да направя това:

 Assert.IsTrue(actionResult.ViewData.ModelState.IsValid, null, Enumerable.ToArray<object>(actionResult.ViewData.ModelState as IEnumerable<object>));

Това е mbUnit твърдение със следния подпис.

public static void IsTrue(bool actualValue, string messageFormat, params object[] messageArgs);

Третите параметри причиняват (в превод на английски)

Система.ArgumentNullException: Стойността не може да бъде нулева. Име на параметър: източник в System.Linq.Enumerable.ToArray [TSource] (IEnumerable`1 source) в Coin.UnitTests.AccountControllerTests.MyTest () в Г: ... ТестовеMbUnitTestsControllerTests.cs: ред 85

в Галио. Как го правиш?

Btw, някой знае ли как да получи тези съобщения на английски? Vista е на шведски.

Отговори:

2 за отговор № 1

ModelState не изпълнява IEnumerable<T> така актьорският състав се оказва нищожен и Enumerable.ToArray() не харесва нули, следователно изключение.

Опитайте нещо подобно:

var errors = actionResult.ViewData.ModelState.Errors.Select(e => e.ErrorMessage).ToArray();
Assert.IsTrue(actionResult.ViewData.ModelState.IsValid, string.Join("n", errors));