Dapper com Access, atualizar instrução parcialmente não funciona
Eu tenho uma classe de produto e tentei avaliar o Dapper com o banco de dados Access. As operações Selecionar, Excluir e Inserir estão funcionando bem, mas tenho um problema com a operação de atualização. Está funcionando de uma maneira apenas no código abaixo)
Quando tentei mudar oDescrição baseado emNúmero de produto funciona (updateStatement2) e Descrição são atualizados, mas quando tentei alterar oNúmero de produto baseado emDescrição (updateStatement1) não funciona e o ProductNumber não é atualizado. Isso me pareceu estranho. É um bug ou estou perdendo alguma coisa? Meu banco de dados é apenas básico e nenhum conjunto de chaves primárias. Anexei uma captura de tela abaixo
(Para mais informações, veja meu código abaixo)
public class Products
{
public string ProductNumber { get; set; }
public string Description { get; set; }
}
static void Main(string[] args)
{
using (var con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb"))
{
Products product2 = new Products();
product2.ProductNumber = "P2";
product2.Description = "TestProduct2Changed";
var updateStatement2 = @"Update Products Set Description = @Description Where ProductNumber = @ProductNumber";
int outp2 = con.Execute(updateStatement2, product2);
Products product1 = new Products();
product1.ProductNumber = "P3Changed";
product1.Description = "TestProduct3";
var updateStatement1 = @"Update Products Set ProductNumber = @ProductNumber Where Description = @Description";
int outp1 = con.Execute(updateStatement1, product1);
}
}
Estou usando o Dapper versão 1.50.2. Esta é a minha captura de tela do banco de dados