在每个wcf调用上传递参数

时间:2010-08-31 20:27:37

标签: wcf structuremap

我遇到了这个问题。 我已经将结构图与wcf集成在一起,如下所述: http://www.lostechies.com/blogs/jimmy_bogard/archive/2008/07/29/integrating-structuremap-with-wcf.aspx

问题是我正在使用具有构造函数参数的类,例如userId和applicationId,我必须传递它,以便structmap可以创建它们。

怎么做? 如何在每次wcf调用时传递这些参数?

1 个答案:

答案 0 :(得分:1)

创建实例提供程序时,在调用GetInstance期间从邮件中获取这些参数:

public object GetInstance(InstanceContext instanceContext, Message message)
{
   YourDataContract data = message.GetBody<YourDataContract()>;
   string userID = data.userID;
   string applicationID = data.appID;

   //now go ahead and use structuremap....
}

这假定您的Message正文是一个已定义的数据协定类型(在我的示例中,它是一个名为'YourDataContract'的类型)。