如何让WebServer返回指的定XML内容

来源:互联网 发布:js slice string 编辑:程序博客网 时间:2024/06/06 13:22
导读:
  
  通过创建WEBServer代理可以当作本地类使用,但能不能返回指定的XML呢?
  比如通过checkpass服务检测帐号和密码之后要返回该用户拥有的权限列表。怎么实现呢?
  bitsCN.nET*中国网管博客
  研究中........
  [bitsCN.Com]
  请各大侠指点
  DL@bitsCN_com网管软件下载
  asp_net高级编程928页19.4.2 数据类型
  www@bitscn@com
  ASP.NET Web服务支持在公共语言运行时中支持的所有基本数据类型,包括String,integer,Long等等。除了简单的基本数据类型之外,还支持基本数据类型的数组。 [bitsCN_com]
  但是,更有趣的是支持用户定义的类和结构体。基本上,任何可由XSD模式代表的类型都是可以作为ASP.NET的参数或返回类型。 [bitsCN_com]
  asp_net 高级编程946页 19.7.1控制并整理xml 中国_网管联盟bitsCN.com
  通过一个星期的摸索,解决了这个问题,并学习了如何读取和输出XML文档;数据库操作;WebServer的创建和引用。下面就部分源码供初学习者参考,不足之此请指正。
  DL@bitsCN_com网管软件下载
  /*CheckLogin服务*/中国_网管联盟bitsCN.com
  using System;
  using System.Web;
  using System.Collections;
  using System.Web.Services;
  using System.Web.Services.Protocols;
  using System.Configuration;
  using System.Data;
  using System.Data.SqlClient;
  using mysql.SQL;
  using myfunc.Common; bbs.bitsCN.com
  ///
  /// CheckLogin 的摘要说明
  ///

  [WebService(Namespace = "http://localhost/")]
  [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
  public class CheckLogin : System.Web.Services.WebService { [bitsCN.Com]
  public CheckLogin () {
  DL@bitsCN_com网管软件下载
  //如果使用设计的组件,请取消注释以下行
  //InitializeComponent();
  }
  bitsCN#com中国网管联盟
  //[WebMethod(Description = "Login", EnableSession = true)]
  [WebMethod]
  public checkuser Login(string sUserCode, string sPassword)
  {
  checkuser objcheckuser= new checkuser();
  string sCheckLogin = ConfigurationManager.AppSettings["strCheckLogin"];
  SqlShell objShell = new SqlShell();
  SqlCommand objCommand = new SqlCommand(sCheckLogin);
  objCommand.CommandType = CommandType.Text;
  objCommand.Parameters.AddWithValue("@sUserCode", sUserCode);
  objCommand.Parameters.AddWithValue("@sPassword", sPassword);
  DataTable objDataTable = objShell.executeDataSet(ref objCommand).Tables[0];
  中国_网管联盟bitsCN.com
  objcheckuser.logined = (objDataTable.Rows.Count >0);
  if (objcheckuser.logined)
  {
  //帐号和密码正确,反回帐号信息
  DataRow objDataRow = objDataTable.Rows[0];
  objcheckuser.userid = objDataRow["UserID"].ToString().Trim(); ;
  objcheckuser.pass = objDataRow["Pass"].ToString().Trim();
  objcheckuser.username = objDataRow["UserName"].ToString().Trim();
  DL@bitsCN_com网管软件下载
  //检查Allow字段是否为空
  if (objDataRow.IsNull("Allow")) { objcheckuser.allow = ""; }
  else { objcheckuser.allow = objDataRow["Allow"].ToString().Trim(); } bbs.bitsCN.com中国网管论坛
  menulist objmenulist = new menulist(objDataRow["UserID"].ToString().Trim());
  objcheckuser.menuxml = objmenulist.buf;//返回菜单列表的XML字符串
  
  [bitsCN.Com]
  }
  return objcheckuser; bitsCN#com中国网管联盟
  }
  [bitsCN.Com]
  public class checkuser
  {
  public bool logined;
  public string userid;
  public string pass;
  public string username;
  public string allow;

本文转自
http://www.bitscn.com/dotnet/xml/200709/109616.html
原创粉丝点击