2017-09-07 1 views
3

매우 긴/복잡한 매개 변수 목록이있는 특성이 있다고 가정 해 보겠습니다. 예를 들면 : 대신 모든 메소드에 대해 위를 입력하는 난 그냥 [CustomDataSource]을 사용할 수 있도록 [DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV","|DataDirectory|\\stores.csv","stores#csv", DataAccessMethod.Sequential)]C# 사용자 지정 속성 약식

이 속기 등의 사용자 지정 특성을 만들 수있는 방법이 있나요?

+2

은'DataSource' 속성은'sealed' :

가장 쉬운 해결책은 상수를 사용하는 것입니다. 'DataSource' 속성을 찾는 코드는 사용자 정의 속성을 볼 수 없습니다. – Amy

+1

문제가 길이라면'DataSource'의 과부하 중 하나를 사용하십시오 – Nkosi

+0

@amy, 감사합니다. 나는 그것이 어려운 길을 알았다. :). 그러나 대체 솔루션이 있습니까? –

답변

0

DataSource 속성은 봉인되어 있기 때문에 상속 할 수 없습니다. 당신이 그것에서 상속 할 수 없습니다, 그래서

public class Const 
{ 
    public const string Provider = "Microsoft.VisualStudio.TestTools.DataSource.CSV"; 
    public const string ConnString = "|DataDirectory|\\stores.csv"; 
    public const string Table = "stores#csv"; 
    public const string Method = DataAccessMethod.Sequential; 
} 

[DataSource(Const.Provider, Const.ConnString , Const.Table , Const.Method)]