xml 속성의 값을 어떻게 설정합니까?Spring.net에서 xml 속성의 값을 어떻게 설정합니까?
이 내가 어떤 succes에 함께 시도한 것입니다 :
<property name="Resources" value="<resources/>"/>
자원 XmlDocument를 필드입니다.
xml 속성의 값을 어떻게 설정합니까?Spring.net에서 xml 속성의 값을 어떻게 설정합니까?
이 내가 어떤 succes에 함께 시도한 것입니다 :
<property name="Resources" value="<resources/>"/>
자원 XmlDocument를 필드입니다.
명확하게 :이 속성은 XmlDocument 인 필드가있는 개체에 있으며 루트 요소가 "resources"인 빈 XmlDocument로 초기화되기를 원합니다.
XmlDocuments는 항상 작업하기에 가장 쉬운 개체가 아닙니다.
스프링을 사용하면 문자열을 XmlDocument로 변환하는 방법을 알 수 없습니다.
코드를 사용하여 원하는 XmlDocument를 쉽게 생성 할 수 있습니다. 예를 들어 XmlDocument를 생성하는 정적 도우미 메서드를 만들고 해당 메서드를 호출하여 속성 값을 설정합니다.
다른 옵션 (kludge-y)은 xml을 문자열로 처리하는 "도우미"속성을 갖는 것입니다. 예를 들어 null 또는 ""로 설정하는 "_ResourcesXml"이라는 속성이 있습니다. 그런 다음이 속성은 XmlDocument를 구성하고 Resources 속성의 백킹 필드를 설정합니다. 마찬가지로 _ResourcesXml을 읽으면 Resources.OuterXml을 반환 할 수 있습니다.
<object id="Document" type="System.Xml.XmlDocument, System.Xml" />
<object type="Spring.Objects.Factory.Config.MethodInvokingFactoryObject, Spring.Core">
<property name="TargetObject">
<ref local="Document" />
</property>
<property name="TargetMethod" value="AppendChild" />
<property name="NamedArguments">
<dictionary>
<entry key="newChild">
<object type="Spring.Objects.Factory.Config.MethodInvokingFactoryObject, Spring.Core">
<property name="TargetObject">
<ref local="Document" />
</property>
<property name="TargetMethod" value="CreateElement" />
<property name="NamedArguments">
<dictionary>
<entry key="name" value="resources" />
</dictionary>
</property>
</object>
</entry>
</dictionary>
</property>
</object>
어쨌든, 이것은 당신이 얻을 작은 효과를 매우 복잡한 것 같다
난 당신합니다 (MethodInvokingFactoryObject를 사용하여) 같은 것을 함께 요청 결과를 얻을 수 있다고 생각합니다. Nader가 이미 언급했듯이 작은 도우미 공장을 만드는 것이 좋습니다.
또 다른 옵션은 expressions입니다. 구성 내에서 메소드를 호출 할 수 있습니다 (예 : 다음과 같이 :
<object id="..." type="..." expression="@(Document).CreateElement('resources')" />