글쎄, 지원되지 않습니다. 여기에는 관련 issue이 있으며 솔루션은 Dapper v2에서만 예상됩니다. 또한 source code 검사 (꽤 간단합니다) 다음과 같이 업데이트 속성이 검색되는 것을 볼 수 있습니다
var allProperties = TypePropertiesCache(type);
keyProperties.AddRange(explicitKeyProperties);
var computedProperties = ComputedPropertiesCache(type);
var nonIdProps = allProperties.Except(keyProperties.Union(computedProperties)).ToList();
그래서 키 \ ExplicitKey \ 계산되는 표시되지 않은 모든 속성 쓰기가 포함되어 있습니다.
InsertAsync
에 대해서도 마찬가지입니다 (
ExplicitKey
속성도 삽입물에 포함되어 있지만 속성은 결국 중요하지 않으므로 situtaion에서이 속성을 사용할 수 없습니다).
이렇게 구현하거나 포크하여 구현할 때까지 기다리거나 직접 UpdateAsync
메서드를 작성해야합니다. 소스 코드에서 매우 간단하고 다시 구현하기 어렵지 않다는 것을 알 수 있습니다.
출처
2017-12-07 21:18:06
Evk
다른 라이브러리를 사용해야하며 Dapper에는 Update.Async 확장이 없습니다. 어쩌면 Dapper-Extension 또는 이와 비슷한 것이 있습니까? –
@VoidRay 정답. Dapper.Contrb.Extensions –
리포지터리 패턴 또는 임의의 가까운 패턴을 사용하고 있다면 (그리고 구체적인 구현에서 코드를 분리해야 함) 단순히 '업데이트'를 무시하고 자신의 논리를 사용할 수 있습니다. –