많은 규칙을 정의하는 XML 파일이 있습니다. XML 파일을 내 규칙 엔진에로드합니다.규칙 엔진에 대한 동적로드 클래스
내가로드하는 XML 파일에 따라 필요한 네임 스페이스를 선택할 필요가 있습니다. 그런 다음 XML의 각 행에서로드 할 클래스를 결정해야합니다.
내 XML
<RuleList assembly="BMW">
<rule>
<code>2345</code>
<errorMessage>foo bar</errorMessage>
<order>1</order>
</rule>
</RuleList>
<RuleList assembly="FORD">
<rule>
<code>0045</code>
<errorMessage>foo bar</errorMessage>
<order>3</order>
</rule>
</RuleList>
나는 한 번에 하나의 규칙리스트를 처리합니다.
로드 할 ClassName을 정의하는 각 규칙에 추가 XML 특성을 추가해야합니까? 코드를 클래스 이름으로 사용하고 싶지 않으므로? 아니면 그냥 내 클래스에 속성으로 코드를 추가하고 "
namespace FORD
{
[code=0045]
public bool IsValidColor(foo) : IisValid
{
return true
}
}
내가로부터 클래스를로드 할 수 [코드 = 0045] 또는 그냥 저장한다
예를 들어 동적를로드 할 것을 사용할 수 있습니다 IsValidColor "를 사용합니다. 성능 차이가 있습니까?
그래서 [Code ("0045")] 구문을 사용했습니다. 어떻게 실제로 필터링합니까? 어셈블리 클래스에서 사용할 수있는 linq 쿼리가 있습니까? – Daveo
그래,'Assembly.GetTypes()'를 사용하고 모든 유형의 속성을 확인해야합니다. 편집을 참조하십시오. – svick