#nullable Enable вызывает исключение SqlNullValueExceptionC#

Место общения программистов C#
Ответить
Anonymous
 #nullable Enable вызывает исключение SqlNullValueException

Сообщение Anonymous »

Предупреждающее сообщение о сборке побудило меня попытаться добавить директиву #nullable Enable в мой класс объекта данных.
Однако я обнаружил, что это вызывает исключение SqlNullValueException при выполнении следующего кода. >

Код: Выделить всё

var customerId = 5 // a valid key
var db = GetMyDbContext() // my code to get the DbContext
var cust = db.MyExtCustomers.AsNoTracking().SingleOrDefault(x => x.CustomerID == customerId);
Сообщение об исключении:

System.Data.SqlTypes.SqlNullValueException: 'Data is Null. Этот метод
или свойство нельзя вызвать для значений NULL.'

[img]https://i .sstatic.net/zZHfZ75n.png[/img]

Стек вызовов

Код: Выделить всё

    Microsoft.Data.SqlClient.dll!Microsoft.Data.SqlClient.SqlDataReader.GetString(int i) Line 2122  C#
[Lightweight Function]
Microsoft.EntityFrameworkCore.Relational.dll!Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable.Enumerator.MoveNext()    Unknown
System.Linq.dll!System.Linq.Enumerable.TryGetSingle(System.Collections.Generic.IEnumerable source, out bool found) Line 7391    C#
[Lightweight Function]
Microsoft.EntityFrameworkCore.dll!Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.Execute(System.Linq.Expressions.Expression query)  Unknown
Microsoft.EntityFrameworkCore.dll!Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryProvider.Execute(System.Linq.Expressions.Expression expression)   Unknown
dll!Helpers.DataAccessStd2.MakeReadOnlyProperties(string connectionString, int jobId) Line 439  C#
Это намеренная ошибка? Как мне заняться рефакторингом моего класса?

Подробнее здесь: https://stackoverflow.com/questions/790 ... eexception
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»