C# IsNull() и IsEqualTo() - Visual Studio не распознает их в примере кода Dapper.net / Contrib
Я уверен, что я действительно глупый здесь - но я вхожу в Dapper и вклад. Пример кода включает в себя такие строки:
using (var connection = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString))
{
connection.Get<User>(3).IsNull();
var id = connection.Insert(new User { Name = "Adam", Age = 10 });
IsNull () никогда не распознается. И IsEqualTo не находится в том же контексте.
Я гуглил - ничего не закрывал, искал в браузерах объектов - использую Dapper - и использую Dapper.Contrib.Extensions; Но он по-прежнему не может его найти.
Спасибо
1 ответ
Это на самом деле методы из используемой среды тестирования. Это на самом деле утверждения; IsNull()
утверждает, что значение слева null
и бросить исключение в противном случае. IsEqualTo
утверждает, что значение слева равно значению, переданному методу, и выдает исключение в противном случае.
Вам не нужны эти методы для реального кода. Я предполагаю, что пример был взят из тестового метода, где он используется для подтверждения состояния данных до и после вставки.
Приходит на ум, что AssertNull
а также AssertEqualTo
может быть, лучше имена!
Код находится в Assert.cs
; они также могут быть вызваны через:
Assert.IsNull(connection.Get<User>(3));
...
Assert.IsEqualTo(someObj.SomeProp, 42);
и т.д., в этом случае намерение было бы более очевидным. Тот факт, что они являются методами расширения, скрывает в этом случае немного деталей (в частности, тот факт, что декларирующий тип Assert
).