신사 숙녀 여러분,코드를 단순화하기 위해 작성한 다양한 확장 메서드가 포함 된 몇 가지 다른 프로젝트간에 공유 할 수있는 DLL을 만들려고합니다. 이러한 DLL은 C#과 VB.net 프로젝트간에 공유하는 것이 타당하다는 것을 이해해야합니다. 그러나 지금까지는 DLL을 만들 수 없었습니다. 심지어는 하위 프로젝트를 포함하고 그런 식으로 참조하고 내 확장 프로그램에 액세스 할 수 없게되었습니다.VB.net에서 확장 메서드에 대한 DLL을 만들려면 어떻게해야합니까?
개체 브라우저에서 참조를 볼 수 있지만 가져 오기 문은 내 하위 프로젝트 참조를 옵션으로 가져 오지 않습니다. VB.net에서는 클래스 내에 확장을 배치 할 수 없으며이를 설명 할 수있는 웹 단서를 찾지 못하는 것 같습니다. 미리 감사드립니다.
예 ...
Imports System.Runtime.CompilerServices
Imports System.Text.RegularExpressions
Module Extensions
<System.Runtime.CompilerServices.Extension()>
Public Function ToEnum(Of T)(ByVal value As String) As T
Try
Return (CType([Enum].Parse(GetType(T), value.Replace(" ", ""), True), T))
Catch ex As Exception
Return (CType([Enum].Parse(GetType(T), 0, True), T))
End Try
End Function
End Module
VS2010을 사용하는 것 같습니다. Enum.TryParse()를 강력하게 선호하십시오. 그리고 현지화가이 코드에 어떤 영향을 미칠지 염두에 두십시오. –
Hans에게 감사드립니다. try/catch는 아마도 내가 상상하는 것보다 덜 효율적일까요? 플러스 타입 변환 지연? 나는 작은 코드가 도움이되도록 많은 코드 변환을 처리한다. 감사! –