在数据库中,我有一个名为“联系人”的表。名字和其他字符串字段都是设计使用Char数据类型(不是我的数据库设计)。我的Contact对象映射到属性中的字符串类型。如果我想通过id检索Contact对象进行简单测试,我会像这样做:
Contact contact = db.Contacts.Single(c => c.Id == myId);
Contact test = new Contact();
test.FirstName = "Martin";
Assert.AreEqual(test.FirstName, contact.FirstName);
由于字符类型的原因,contact.FirstName的值为“Martin”。当加载FirstName属性时,我应该在哪里拦截它?在初始加载(联系人)时不会调用OnFirstNameChanging(string value),但在测试对象上会调用。
contact.FirstName.Trim()
来完成这个操作。我看到了自己的一些旧代码,现在需要更新。以下是关于规范字符串LINQ to SQL函数的参考链接:https://learn.microsoft.com/en-us/dotnet/framework/data/adonet/ef/language-reference/string-canonical-functions。 - threadster