Я использую Dapper для выполнения хранимой процедуры и получения однострочного ответа. Мой код следующий:
public async Task<Provider> GetProvider(int id)
{
try
{
using (var connection = _connectionFactory.Create())
{
var provider = await connection.QueryFirstOrDefaultAsync("GetProvider",
new {
Id = id
},
commandType: CommandType.StoredProcedure);
return new Provider()
{
DimProviderId = provider.DimProviderID,
ProviderNumber = provider.ProviderNumber,
FirstName = provider.FirstName,
MiddleName = provider.MiddleName,
LastName = provider.LastName,
};
}
}
....
Когда я отлаживаю эту функцию, я вижу, что объект провайдера содержит свойства, которые я пытаюсь получить из него, но я получаю следующую ошибку при попытке доступа к provider.DimProviderID:
Cannot convert null to 'int' because it is a non-nullable value type
Это то, что я получаю, когда наблюдаю за поставщиком переменных, вы можете видеть, что свойство DimProviderID существует и имеет значение:
Вот мой класс Провайдера:
public class Provider
{
public int DimProviderId { get; set; }
public string ProviderNumber { get; set; }
public string FirstName { get; set; }
public string MiddleName { get; set; }
public string LastName { get; set;
}
Как мне получить доступ к значениям результата?