Spring.Net을 사용하여 System.Net.IPEndPoint
을 인스턴스화하려고합니다. 여기 내 XML 코드 :Spring.Net에서 같은 양의 매개 변수를 가진 많은 생성자가있는 유형을 인스턴스화하는 방법
<object id="MulticastAddress" type="System.Net.IPAddress" factory-method="Parse">
<constructor-arg value="239.239.239.1"/>
</object>
<object id="DestinationEndPoint" type="System.Net.IPEndPoint">
<constructor-arg name="address" ref="MulticastAddress"/>
<constructor-arg name="port" value="2010"/>
</object>
하지만이 추가 정보와 함께 Spring.Core.TypeMismatchException
가 발생합니다 ''[System.Int64] 속성에 필요한 유형 [System.Net.IPAddress] 유형의 속성 값을 변환 할 수 없습니다.
public IPEndPoint(long address, int port);
public IPEndPoint(IPAddress address, int port);
그 봄이 실제로 나쁜 생각 첫 번째 생성자를 사용하는 것 같다
IPEndPoint로는 두 개의 생성자가 있습니다.
그래서 스프링에 두 번째 생성자를 사용해야한다고 어떻게 알 수 있습니까?
업데이트 : 긴으로하여 IPAddress를 변환하는 방법을 알아 냈
:
<object id="DestinationEndPoint" type="System.Net.IPEndPoint">
<constructor-arg name="address" expression="T(System.Net.IPAddress).Parse('239.239.239.1')"/>
<constructor-arg name="port" value="2010"/>
</object>
하지만 지금은 예외를 가지고 : 유형의 속성 값을 변환 할 수 없습니다 [System.Int64] 속성 ''에 대해 필수 형식 [System.Net.IPAddress]로 변경하십시오.
이제 스프링이 다른 생성자를 사용하는 것 같습니다. 그것은 무엇입니까!?
감사합니다. 그렇습니다. Microsoft에서 직접 물어볼 것입니다. 나는 단지 여기에 관련 질문이 있기 때문에 생각했다 : https://stackoverflow.com/questions/779604/is-a-separate-visual-studio-license-required-for-a-build-machine 나는 대답을 얻을 수 있었다. 너무. – Portikus
여기에서 답을 얻을 수 있습니다. 어쩌면 완벽하게 정답 일 수도 있습니다. 그러나 그들은 여전히 사이트의 범위 밖에있을 것입니다 ... 그래서 동의합니다 : MS에 더 잘 물어보십시오. 그들은 당신이 뭔가 잘못했을 때 ... 그랬지 ;-) – GhostCat