Как отправить переменную класса в типе byte [] в веб-сервис - PullRequest
1 голос
/ 11 апреля 2019

Я хочу преобразовать переменную моего экземпляра класса в byte [], а затем передать ее в веб-службу.
В моем веб-службе я пытаюсь преобразовать ее обратно в класс - сервер получает эту ошибку:

System.Runtime.Serialization.SerializationException: «Невозможно найти сборку» App_Web_xrrt4fej, версия = 0.0.0.0, культура = нейтральная, PublicKeyToken = null '.'

// client code:        
[Serializable]        
public class result        
{
          public string message { get; set; }
}    

protected void Page_Load(object sender, EventArgs e)    
{                   
      byte[] b = ObjectToByteArray(new result() {  message = "ok" });            
      string ss = serv.HelloWorld34(b);    
}

// server code:    
[Serializable]    
public class result    
{            
     public string message { get; set; }    
}

[WebMethod]    
public string HelloWorld34(byte[] arrBytes)    
{    
        MemoryStream memStream = new MemoryStream();    
        BinaryFormatter binForm = new BinaryFormatter();    
        memStream.Write(arrBytes, 0, arrBytes.Length);    
        memStream.Seek(0, SeekOrigin.Begin);


        // the line that has error    
        result obj = (result)binForm.Deserialize(memStream);    
        return "1";    
}

1 Ответ

0 голосов
/ 11 апреля 2019

Вместо того, чтобы объявлять класс результата в проекте сервера и клиента, создайте отдельный проект библиотеки классов и объявите в нем класс результата. Затем обратитесь к проекту библиотеки классов в коде вашего клиента и сервера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...