Не удается получить доступ к свойствам динамического объекта из ответа Dapper на запрос - PullRequest
0 голосов
/ 24 августа 2018

Я использую 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 существует и имеет значение:

enter image description here

Вот мой класс Провайдера:

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; 
}

Как мне получить доступ к значениям результата?

...