为什么这个简单的断言语句会失败?从我读过的我应该是。遗憾的是,由于该功能非常基础,因此没有太多信息。
public interface IDummy{}
public class Dummy : IDummy {}
Assert.IsAssignableFrom<IDummy>(new Dummy());
运行这个测试产生
Expected: assignable from <Application.Tests.ViewModels.IDummy>
But was: <Application.Tests.ViewModels.Dummy>
我曾尝试交换界面和对象端,但无济于事。
最佳答案
IsAssignableFrom 的工作方式与您的预期相反。它在问:Is (value) Assignable From IDummy。或者:“可分配给(值)吗?”
来自 XML 文档: ///断言可以为一个对象分配给定类型的值。
你可能需要 Assert.IsInstanceOfType()
关于c# - 简单 `Assert.IsAssignableFrom<T>` 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5560449/