2014-04-18 58 views
0

我在我的Web应用程序和Web服务中都有一个“用户”类。如何通过Web服务检索类?

一切正常,我找回数据,但是当我分配User类在我的Web应用程序的Web服务的话,就无法在两个

我怎么把它在我的web应用程序之间转换

User user = new User(); 
     user = userService.Login(UserName.Text, Password.Text); // Here it says it can't convert 

如何从我的web服务

[WebMethod] 
    public User Login (string userName, string Password) 
    { 
     UserData usrData = new UserData(); 
     return usrData.UserExists(userName, Password); 
    } 

什么我的课看起来像两个Web App和Web服务发送

[Serializable] 
public class User 
{ 
    /// <summary> 
    /// User Id 
    /// </summary> 
    public int ID { get; set; } 

    /// <summary> 
    /// User Name 
    /// </summary> 
    public string Name { get; set; } 

    /// <summary> 
    /// User Surname 
    /// </summary> 
    public string Surname { get; set; } 

    /// <summary> 
    /// User Email 
    /// </summary> 
    public string Email { get; set; } 

    /// <summary> 
    /// User Password 
    /// </summary> 
    public string Password { get; set; } 
} 
+0

这样的事情如何:http://stackoverflow.com/questions/560722/asmx-web-service-expose-class? –

回答

1

所以你试图从C#代码调用它?只要做到这一点...

User user = userService.Login(UserName.Text, Password.Text); 

如果你从服务器端调用它,你可以删除[WebMethod]属性。假设userService的类型为UserService,则只需将UserService.cs类放入App_Code文件夹中即可。或者更好的办法是将UserService类放在类库中,并在您的Web应用程序中将引用添加到该库中。

+0

试着你在说什么问题。由于名称空间不同,它无法将服务中的用户转换为应用程序中的用户。另外我的userService是我自己创建的服务,用于处理用户和服务之间的输入。 – JcMey3r

+0

@ JcMey3r在这种情况下,您需要更新您的问题,以便清楚地描述您的情况。您没有描述不同的名称空间,也没有描述您的Web服务如何与Web应用程序分离。 – mason

+0

我确实提到过,我在Web服务和实际的Web应用程序中拥有完全相同的类,以便在命名空间中给出2个区别。 – JcMey3r