熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

asp.net 學習筆記

2013-11-13 10:14:23  來源: .NET編程 

  用WSDL命令可以注冊web service
  
  在APSNET中創建WEB服務
  
  以ASMX擴展名保存文件
  <%@ WebService Language=c# class=TestWS %>
  using SystemWebServices;
  class TestWS
  {
  [WebMethod]
  public string SayHello(string name)
  {
  return Hello+name;
  }
  }
  
  POST 調用Web service
  
  //以下為l文件內容
  <form name=f method=post action=>
  <input type=test name=name><input type=submit>
  </form>
  
  Get 調用Web service
  
  在url中傳參
  
  如:
  
  
  將APSX頁面修改為用戶控件
  
  去除<html> <body> <form>元素
  
  將Web窗體頁中ASPNET指令類型從@Page更改為@Control
  
  更改指令的CodeBehind屬性引用以反映aspx擴展名將更改為 ascx
  
  將基類從SystemWebUIPage更改為SystemWebUIUserControl
  
  在用戶控件中控件的值可以定義屬性
  
  有一個用戶控件如果無法訪問的話可以用FindControl方法
  
  變量=((testControl)thisFindControl(tc))txtUsername;
  //ResponseWrite(((testControl)thisFindControl(tc))txtUsername);
  (testControl)是強制類型轉換括號內是類型
  FindControl(tc) tc是控件的name
  txtUsername是控件的屬性
  
  用戶控件的使用(在APSX頁面中注冊)
  <%@ Register TagPrefix=uc TagName=menu Src=menuascx %>
  
  TagPrefix 確定用戶控件的唯一命名空間它將是標記中控件名稱的前綴
  
  TagName 為用戶控件的名稱
  
  Src 用戶控件的虛擬路徑例如UserControlascx
  
  WEB自定義控件
  
  nfig
  <!
  說明:
  
  所有的配置都必須被放在<configuration>和</configuration>標記之中
  
  <appSettings>和</appSettings>之間是自定義配置通常用來自己設置一些常量Add添加常量Key是常量的名稱
  value是常量的值
  <appSettings>
  <add key=con value=server=;database=northwind;uid=sa;pwd=;></add>
  </appSettings>
  
  在程序中可以用SystemConfigurationConfigurationSettingsAppSettings[con]取值
  SqlConnection con=new SqlConnection(SystemConfigurationConfigurationSettingsAppSettings[con]);
  conOpen();
  SqlCommand cmd=new SqlCommand(select * from employeescon);
  thisDataGridDataSource=cmdExecuteReader();
  thisDataGridDataBind();
  
  <systemweb>和</systemweb>之間的標記是關於整個應用程序的設置
  如 <pages buffer=true/> 使用頁緩沖
  
  <location>和</location>是一個區域標記Path=aaa表示下面的設置只對該文件有效
  >
  
  customErrors設置(在<systemweb>和</systemweb>之間)
  
  語法
  <customErrors
  defaultRedirect=url
  mode=On|Off|RemoteOnly>
  <error statusCode=statuscode redirect=url/>
  </customErrors>
  
  身份驗證和授權
  
  身份驗證類型: WINDOWS 描述: WINDOWS 身份難作為默認的身份驗證模式用於任何形式的IIS身份驗證
  
  身份驗證類型: FORMS 描述: 基於APSNET窗體的身份驗證作為默認的身份驗證模式
  
  身份驗證類型: PASSPORT 描述:Microsoft Passport身份驗證作為默認的身份驗證模式
  
  身份驗證類型: NONE 描述: 沒有身份驗證用於匿名用戶和可以提供其自己的身份驗證的應用程序
  <configuration>
  <systemweb>
  <authentication mode=Windows|Forms|Passport|None>?
  <forms name=name loginUrl=url
  protection=All|NOne|Encryption
  timeout=xx path=/>?
  <credentials passwordFormat=Clear|SHA|MD> /*Clear為明文密碼*/
  <user name=用戶名 password=密碼/>
  </credentials>
  </forms>?
  <passport redirectUrl=internal/>?
  </authentication>
  </systemweb>
  </configuration>
  
  //基於forms先把IIS中該應用的匿名訪問去掉
  
  <forms>標記的屬性
  
  屬性   選項     描述
  name    None    登錄身份驗證的Cookie名稱
  loginUrl  None    登錄頁URL如果沒有身份驗證Cookie客戶端將被重定向到此URL
  protection ALL     應用程序同時使用數據驗證和加密來保護Cookie
  None    加密和驗證都禁用
  timeout        一段時間(按分鐘計)這段時間之後身份驗證Cookie將到期默認值為
  path          由應用程序發布的Cookie的路徑默認值是反斜槓(/)
  
  <authentication mode=Forms>
  <forms name=YourCookieName loginUrl=loginaspx protection=ALL></forms>
  </authentication>
  //授權
  <authorization>
  <allow users=?/>    //<allow users=*/><!允許所有用戶 >
  <!
  <allow users=[逗號分隔的用戶列表]
  roles=[逗號分隔的角色列表]/>
  <deny users=[逗號分隔的用戶列表]
  roles=[逗號分隔的角色列表]/>
  >
  </authorization>
  
  //loginaspx
  
  登錄代碼
  
  //連接數據庫進行驗證
  
  if(true)//用戶名是否合法
  {
  // SystemWebSecurityFormsAuthenticationSetAuthCookie(thisTextBoxTextfalse);//指定的用戶名寫入到Cookie中(false臨時Cookietrue永久Cookie)
  // ResponseRedirect();
  SystemWebSecurityFormsAuthenticationRedirectFromLoginPage(thisTextBoxTextfalse);//轉到用戶原訪問的頁
  //如果為true可用SystemWebSecurityFormsAuthenticationSignOut();刪除以後又要求登錄
  }
  else
  {
  ResponseWrite(用戶不合法);
  }
  
  //如果用戶少的話可以不用數據庫直接允許/拒絕用戶
  <authentication mode=Forms
  <forms name=authCre loginUrl=loginaspx protection=ALL>
  <credentials passwordFormat=Clear>
  <user name=aaa password=aaa/>
  <user name=bbb password=bbb/>
  </credentials>
  </forms>
  </authentication>
  
  登錄代碼
  
  private void Button_Click(object senderSystemEventArgs e)
  {
  if(SystemWebSecurityFormsAuthenticationAuthenticate(thisTextBoxTextThisTextBoxText)
  {
  //  SystemWebSecurityFormsAuthenticationSetAuthCookie(thisTextBoxTexttrue);//此方法需重定向
  //  ResponseRedirect(WebFormaspx);
  SystemWebSecurityFormsAuthenticationRedirectFromLoginPage(thisTextBoxTextfalse);//此方法不需要重定向直接轉到原訪問頁
  }
  else
  {
  ResponseWrite(用戶不合法);
  }
  }
  //授權時通配符*表示任何人?表示匿名
From:http://tw.wingwit.com/Article/program/net/201311/13015.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.