カスタム クラス (ユーザー) のオブジェクトを返す Web サービスがあります。
Web サービス コード
public class User
{
public string login { get; set; }
public string firstName { get; set; }
public string lastName { get; set; }
public string email { get; set; }
}
[WebMethod]
public User GetUserInfo(int userID)
{
ITDashboardDataContext db = new ITDashboardDataContext();
User usr = (from u in db.tl_sb_users
where u.userID == userID
select new User
{
firstName = u.firstName,
lastName = u.lastName,
email = GetUserEmail(userID),
login = u.login
}).FirstOrDefault();
return usr;
}
別のアプリケーションから Web サービスを呼び出すときに、結果をユーザー オブジェクトとしてキャストしたいと考えています (このアプリでもユーザー クラスを再定義しました)。
アプリケーション コードの呼び出し
public class User
{
public string login { get; set; }
public string firstName { get; set; }
public string lastName { get; set; }
public string email { get; set; }
}
これでユーザーオブジェクトを取り戻そうとしています:
RolloutWriter.RolloutWriter rw = new RolloutWriter.RolloutWriter();
rw.Credentials = new NetworkCredential("myuser", "mypassword", "mydomain");
var vu = rw.GetUserInfo(userID);
User u = (from v in vu
select new User {
email = vu.email,
firstName = vu.firstName,
lastName = vu.lastName,
login = vu.login
}).FirstOrDefault();
これは機能しません-それは私に言います:
Could not find an implementation of the query pattern for source type 'amstaffsite.RolloutWriter.User'. 'Select' not found.
どうすればユーザー オブジェクトを取り戻すことができますか?