본문 바로가기

컴퓨터 이야기/Visual Studio

웹 서비스 관련 ArrayOfInt, ArrayOfString 등의 문제

실버라이트를 개발하다 보니 웹 서비스를 많이 사용하게 되는데, 한 번은 웹 서비스로 전달하는 파라미터를 ArrayOfString 써서 개발을 하고 보니 잘되다가 웹 서비스 업데이트를 하고 나서 에러가 나는 겁니다.

 

자세히 보니까, 로컬로는 잘 인식을 하는데 로컬이 아닌 웹 서비스를 참조를 하게 되면 그 에러가 나더라고요.

 

물론 별 상관없는 우연적인 이야기입니다만.. 어쨌든, 해결책은 다음과 같습니다.

 

해당 웹서비스 데이터가 있는 폴더의 Reference.cs 파일을 열어 ArrayOfString 이 놈들을 선언을 해주고 사용하면 됩니다.

 

[System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.CollectionDataContractAttribute(Name = "ArrayOfInt", Namespace = "http://tempuri.org/", ItemName = "int")]
    public class ArrayOfInt : System.Collections.ObjectModel.ObservableCollection<int>
    {
    }

    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.CollectionDataContractAttribute(Name = "ArrayOfString", Namespace = "http://tempuri.org/", ItemName = "string")]
    public class ArrayOfString : System.Collections.ObjectModel.ObservableCollection<string>
    {
    }

 

파일을 열어서, using 밑에 붙여넣기 해주시면 해결이 되는거예요. 네.

 

다른 거 말고 int, string만써서 그렇지 다른 타입들도 똑같이 만들어주면 될 것 같네요. :D