搜索文章:

首页  |  Java技术  |  Asp.net  |  Asp编程  |  VC/C++  |  Delphi  |  VB编程

使用webservice解决多系统登陆问题

首先新建一个空项目project1

  添加一个webform1

  写如下代码

  private void page_load(object sender, system.eventargs e)
  {
   if(session["userid"] != null)
   {
    this.response.write(session["username"].tostring());
   }
   else
   {
    this.response.write("你输入的用户名或密码不正确!");
   }
  }

  在项目名称上点又键,填加一个新webservie login.asmx

  代码文件如下

  using system;
  using system.collections;
  using system.componentmodel;
  using system.data;
  using system.diagnostics;
  using system.web;
  using system.web.services;

  namespace workflow
  {
   /// <summary>
  /// login 的摘要说明。
   /// </summary>
   public class login : system.web.services.webservice
   {
    workflowwebui.portallogin.frameworkservice loginservice = new workflowwebui.portallogin.frameworkservice();
    public login()
    {
     //codegen:该调用是 asp.net web 服务设计器所必需的
    initializecomponent();
    }

  #region component designer generated code
 
  //web 服务设计器所必需的
  private icontainer components = null;

/// <summary>
  /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  /// 此方法的内容。
  /// </summary>
  private void initializecomponent()
  {
  }

  /// <summary>
  /// 清理所有正在使用的资源。
  /// </summary>
  protected override void dispose( bool disposing )
  {
   if(disposing && components != null)
   {
    components.dispose();
   }
   base.dispose(disposing); 
  } 
  #endregion

  [webmethod(enablesession=true)]
  public bool loginmethod(string username,string password)
  {
      if(username == "admin" & password== "admin")
      {
       session["username"] = "admin"

       return true;     

      }

      return false;
 }
  }}

  再建一个新web项目,webproject1

  添加login的web引用,并在webform1中调用loginmethod,如果返回值为true重定向到project1的webform1.aspx

  这里需要注意两点

  一:在webservice的特性里面需要加入(enablesession=true)的描述

  二:如果你是现在已经有的web项目将不允许你向其中添加新的webservice,这时候你要先在其它位置建立一个webservie文件,然后在你的项目里面添加这个现有文件就可以了

()

相关文章:
© 2006   www.java-asp.net