MS SQL 데이터베이스의 데이터를 개체 목록으로 읽는 데 도움이되는 클래스가 있습니다. 대부분은 꽤 간단합니다. 클래스의 속성 이름을 테이블의 열 이름과 일치시키고 그에 따라 할당한다고 가정 할 수 있지만 때때로 데이터를 변환 할 수 있어야합니다.Func <> 매개 변수를 사용하여 사용자 지정 특성을 만드는 방법
내 클래스 속성에 넣어 사용자 지정 특성을 만들었습니다
[TransformData(TransformThisData = new Func<object, string, object>((v, p) => "My name is " + v.ToString()))]
public string Name { get; set; }
오류를 :이 전 다음과 같이 즉석에서 Func을을 만들려는 말을하자, 이제
[AttributeUsage(AttributeTargets.Property, AllowMultiple = false, Inherited = true)]
public class TransformDataAttribute : Attribute
{
public Func<object, string, object> TransformThisData { get; set; }
}
을 유효한 속성 매개 변수 유형이 아니기 때문에 'TransformThisData'가 유효한 명명 된 속성 인수가 아닙니다.
속성 속성으로 Func을 수행하는 가장 좋은 방법은 무엇입니까?
프리미티브의 프리미티브 또는 배열 만 특성 매개 변수로 사용할 수 있습니다. – DavidG
클래스에서 표준 메서드를 사용하는 대신 함수로 특성을 지정해야하는 이유는 무엇입니까? – DavidG
특정 속성의 데이터를 변환하는 특정 기능을 지정할 수 있기를 원했습니다. 예를 들어, 필자는 이상하게 혼합 된 데이터로 채워진 컬럼을 포함하는 데이터 테이블을 가지고있다. 문자열 (enum 값에 매핑 됨) 또는 숫자 (해당 숫자에 대한 열거 형의 문자열 값을 가져 오는 데 사용) 또는 열거 형 값에 매핑되는 키워드를 포함하는 문자열 열입니다. 데이터를 정리할 수 있기를 바랍니다.하지만이 방법으로 필요합니다. –