에 나는 DbSet의 내부를 찾고 있었다. 왜 누군가가 이런 일을하고 싶어하겠습니까? 이 일을 할 때 어떤 이점이 있습니까?임의 할당 방법
부작용이있는 재산 get
접속과 같은 편집
private IEntityType EntityType
{
get
{
_context.CheckDisposed();
if (_entityType != null)
{
return _entityType;
}
_entityType = _context.Model.FindEntityType(typeof(TEntity));
if (_entityType == null)
{
throw new InvalidOperationException(CoreStrings.InvalidSetType(typeof(TEntity).ShortDisplayName()));
}
return _entityType;
}
}
ReSharper 경고를 억제하려면 다음과 같이하십시오. ReSharper가 사용하지 않는 반환 값이 있음을 상기시키는 메서드를 호출하면됩니다. – Sweeper
나머지 코드는 보지 않고는 말할 수 없습니다. 그러나 만약'EntityType'이 속성이라면, getter가 코드 작성자가 원하는 부작용을 가질 수 있습니다 (속성 getter에 대한 좋은 특성은 아니지만 때로는 상황이 그렇습니다). (링크가 속성이 정의 된 모듈로 곧바로 이동하기 때문에 실제로 속성이 값을 캐시한다는 것을 볼 수 있습니다. 따라서 저자가 값을 검색하거나 유효성을 검사하도록 할 수 있습니다.) 우리가 제안 할 수있는 전부는 의견입니다. 해당 코드의 작성자 만이 왜 그 코드를 작성했는지 확실히 알 수 있습니다. –
GitHub –