请教问 xml webservice 的一些问题
初次使用.net xml webservice,我有问题请教大家
1.webservice 的类不能使用带参数的构造函数吗?
我用重载了一个构造函数,使他可以带有参数,但是发觉引用后使用时还是没有参数的。即使我只有一个构造函数,而且带有参数的,在引用后还是只给我提供一个没有参数的,我写了参数反而编译时出错了。
2.webmethod不能对类中的字段赋值吗?
比如我的类中有一个字段:public CConfig application;
我有一个method
[WebMethod]
public void Register(string applicationname, string username)
{
application = ConfigBus.GetOneAppConfig(applicationname, username);
if (application == null)
{
throw new Exception( "没有该实例,或者实例的licencekey 不正确 ");
}
}
这样我为application 赋值了.
之后我在另一个webmethod中使用这个 appication ,结果居然还是 null
[WebMethod]
public void CreateBucket(string folder)
{
if (application == null)
throw new Exception( "CreateBucket:没有找到应用实例 ");
MappingBus.CreateFolder(application.applicationname, folder);
}
而如果我在构造函数里对applicationname 赋值,再使用就好像是有的
[解决办法]
webservice是无状态的,你在webmethod里的处理彼此之间应该没有影响才对。
我的理解,不知道对不对啊,呵呵
[解决办法]
我来也
1. 返回类对象的webmethod 该类对象可以有参数的构造对象,但请同时提供不带参数的构造函数。(应该是)
2.(肯定是)楼上的是正解,webservice是无状态的,就是说webmethod 彼此不认识 完全不相关。每次你的webservice请求 都是独立的(当然你可以程序保存状态信息)。另外,不要将逻辑放在webservice 里面 ,放到业务或数据访问中去吧。