我已经有一个已经存在的the服务,它有100个从应用程序调用的函数。
每次调用时,我需要从应用程序到webservice再添加一个参数(UserId)。
我必须手动编辑所有函数的签名和来自应用程序的调用才能实现它。
有没有更好的/替代的方法在每次呼叫时将我的用户Id发送到webservice?
发布于 2015-06-22 15:21:04
100个方法有不同的方法签名。如果方法签名共享同一个对象,您可以向该对象添加额外的参数,并且至少不需要更改这些方法的参数。
否则,必须更改SOAP标头并在每个请求的标头中附加"UserId“。
不管我怎么想都需要做很多工作..
发布于 2015-06-22 15:42:16
如果您还没有启用会话,并且web服务正在同一台服务器上运行。
[WebMethod(EnableSession = true)]您可以将其存储在会话中,
Session["UserID"] = User.Identity.GetUserId<int>();像这样访问它,
HttpContext.Current.Session["UserID"];https://stackoverflow.com/questions/30973828
复制相似问题