亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? bookshopprofileprovider.cs

?? 一個非常好的網上書店系統
?? CS
?? 第 1 頁 / 共 2 頁
字號:
?using System;
using System.Text;
using System.Configuration;
using System.Web;
using System.Web.Profile;
using System.Collections;
using System.Collections.Specialized;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
//自定義配置文件提供程序
public sealed class BookShopProfileProvider : ProfileProvider
{

    //// 獲取數據操作配置類
    private static readonly SqlBookShopProfileProvider dal = new SqlBookShopProfileProvider();

    // 內部變量
    private const string ERR_INVALID_PARAMETER = "Invalid Profile parameter:";
    private const string PROFILE_SHOPPINGCART = "ShoppingCart";
    private const string PROFILE_ACCOUNT = "AccountInfo";
    private static string applicationName = "BookShop";

    /// <summary>
    /// 應用程序名
    /// </summary>
    public override string ApplicationName
    {
        get
        {
            return applicationName;
        }
        set
        {
            applicationName = value;
        }
    }

    /// <summary>
    /// 初始化提供程序
    /// </summary>
    /// <param name="name">提供程序的名稱</param>
    /// <param name="config">提供程序的配置</param>
    public override void Initialize(string name, NameValueCollection config)
    {
        if (config == null)
            throw new ArgumentNullException("config");
        if (string.IsNullOrEmpty(config["description"]))
        {
            config.Remove("description");
            config.Add("description", "BookShop Custom Profile Provider");
        }
        if (string.IsNullOrEmpty(name))
            name = "ShoppingCartProvider";

        if (config["applicationName"] != null && !string.IsNullOrEmpty(config["applicationName"].Trim()))
            applicationName = config["applicationName"];
        base.Initialize(name, config);
    }

    /// <summary>
    /// 返回指定應用程序實例的設置屬性值集合和設置屬性組。
    /// </summary>
    /// <param name="context">當前應用程序上下文</param>
    /// <param name="collection">一個系統的配置集合</param>
    /// <returns>返回一個當前的配置集合</returns>
    public override SettingsPropertyValueCollection GetPropertyValues(SettingsContext context, SettingsPropertyCollection collection)
    {
        //獲取登錄用戶信息
        string username = (string)context["UserName"];
        bool isAuthenticated = (bool)context["IsAuthenticated"];

        SettingsPropertyValueCollection svc = new SettingsPropertyValueCollection();
        //遍歷集合中的屬性
        foreach (SettingsProperty prop in collection)
        {
            SettingsPropertyValue pv = new SettingsPropertyValue(prop);
            //判斷屬性名稱
            //本實例涉及到兩個屬性的保存:購物籃和帳戶地址
            switch (pv.Property.Name)
            {
                case PROFILE_SHOPPINGCART:
                    pv.PropertyValue = GetCartItems(username, true);
                    break;
                case PROFILE_ACCOUNT:
                    pv.PropertyValue = GetAccountInfo(username);
                    break;
                default:
                    throw new ApplicationException(ERR_INVALID_PARAMETER + " name.");
            }
            svc.Add(pv);
        }
        return svc;
    }

    /// <summary>
    /// 設置指定的屬性設置組的值。
    /// </summary>
    /// <param name="context">當前應用程序上下文</param>
    /// <param name="collection">一個系統的配置集合.</param>
    public override void SetPropertyValues(SettingsContext context, SettingsPropertyValueCollection collection)
    {
        //判斷當前登錄用戶
        string username = (string)context["UserName"];
        CheckUserName(username);
        bool isAuthenticated = (bool)context["IsAuthenticated"];
        int uniqueID = dal.GetUniqueID(username, isAuthenticated, false, ApplicationName);
        if (uniqueID == 0)
            uniqueID = dal.CreateProfileForUser(username, isAuthenticated, ApplicationName);

        //遍歷用戶的保存信息
        foreach (SettingsPropertyValue pv in collection)
        {
            if (pv.PropertyValue != null)
            {
                switch (pv.Property.Name)
                {
                    case PROFILE_SHOPPINGCART:
                        SetCartItems(uniqueID, (CartItem)pv.PropertyValue, true);
                        break;
                    case PROFILE_ACCOUNT:
                            SetAccountInfo(uniqueID, (AddressInfo)pv.PropertyValue);
                        break;
                    default:
                        throw new ApplicationException(ERR_INVALID_PARAMETER + " name.");
                }
            }
        }
        //更新配置時間等信息
        UpdateActivityDates(username, false);
    }

    // 獲取profile屬性

    // 獲取帳戶信息
    private static AddressInfo GetAccountInfo(string username)
    {
        return dal.GetAccountInfo(username, applicationName);
    }
    // 獲取購物籃信息
    private static CartItem GetCartItems(string username, bool isShoppingCart)
    {
        //初始化一個購物籃實體操作類
        CartItem cart = new CartItem();
        foreach (CartItemInfo cartItem in dal.GetCartItems(username, applicationName, isShoppingCart))
        {
            //在購物籃中添加商品信息
            cart.Add(cartItem);
        }
        return cart;
    }
    // 更新帳戶地址
    private static void SetAccountInfo(int uniqueID, AddressInfo addressInfo)
    {
        dal.SetAccountInfo(uniqueID, addressInfo);
    }
    // 更新購物籃信息
    private static void SetCartItems(int uniqueID, CartItem cart, bool isShoppingCart)
    {
        dal.SetCartItems(uniqueID, cart.CartItems, isShoppingCart);
    }
    /// <summary>
    /// 更新當前用戶的購物籃信息
    /// </summary>
    /// <param name="uniqueID">用戶ID</param>
    /// <param name="cartItems">購物籃中的商品</param>
    /// <param name="isShoppingCart">購物籃標志</param>
    private void SetCartItemsProfile(int uniqueID, ICollection<CartItemInfo> cartItems, bool isShoppingCart)
    {
        string sqlDelete = "DELETE FROM Cart WHERE UniqueID = @UniqueID AND IsShoppingCart = @IsShoppingCart;";

        SqlParameter[] parms1 = {				   
			new SqlParameter("@UniqueID", SqlDbType.Int),
			new SqlParameter("@IsShoppingCart", SqlDbType.Bit)};
        parms1[0].Value = uniqueID;
        parms1[1].Value = isShoppingCart;

        if (cartItems.Count > 0)
        {

            // 通過SQL事務更新信息
            string sqlInsert = "INSERT INTO Cart (UniqueID, ItemId, Name, Type, Price, CategoryId, ProductId, IsShoppingCart, Quantity) VALUES (@UniqueID, @ItemId, @Name, @Type, @Price, @CategoryId, @ProductId, @IsShoppingCart, @Quantity);";
            //定義購物籃的參數
            SqlParameter[] parms2 = {				   
			new SqlParameter("@UniqueID", SqlDbType.Int),	
			new SqlParameter("@IsShoppingCart", SqlDbType.Bit),
			new SqlParameter("@ItemId", SqlDbType.VarChar, 10),
			new SqlParameter("@Name", SqlDbType.VarChar, 80),
			new SqlParameter("@Type", SqlDbType.VarChar, 80),
			new SqlParameter("@Price", SqlDbType.Decimal, 8),
			new SqlParameter("@CategoryId", SqlDbType.VarChar, 10),
			new SqlParameter("@ProductId", SqlDbType.VarChar, 10),
			new SqlParameter("@Quantity", SqlDbType.Int)};
            parms2[0].Value = uniqueID;
            parms2[1].Value = isShoppingCart;
            SqlConnection conn = new SqlConnection(SqlHelper.ConnectionStringLocalTransaction);
            conn.Open();
            //開始事務
            SqlTransaction trans = conn.BeginTransaction(IsolationLevel.ReadCommitted);
            try
            {
                //在購物籃中添加信息
                SqlHelper.ExecuteNonQuery(trans, CommandType.Text, sqlDelete, parms1);
                foreach (CartItemInfo cartItem in cartItems)
                {
                    parms2[2].Value = cartItem.ItemId;
                    parms2[3].Value = cartItem.Name;
                    parms2[4].Value = cartItem.Price;
                    parms2[5].Value = cartItem.SupplierId;
                    parms2[6].Value = cartItem.ProductId;
                    parms2[7].Value = cartItem.Quantity;
                    SqlHelper.ExecuteNonQuery(trans, CommandType.Text, sqlInsert, parms2);
                }
                //執行事務

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
青青青爽久久午夜综合久久午夜| 天天色天天操综合| 精品久久五月天| 欧美一区二区成人6969| 欧美色老头old∨ideo| 一本一道综合狠狠老| 色综合天天综合网国产成人综合天 | 亚洲国产精品天堂| 一区二区国产视频| 亚洲一二三区不卡| 亚洲观看高清完整版在线观看| 亚洲一区二区三区免费视频| 亚洲男人的天堂av| 亚洲午夜一二三区视频| 午夜欧美视频在线观看| 久久99这里只有精品| 国产裸体歌舞团一区二区| 国产综合色视频| 国产成a人亚洲精品| 色婷婷狠狠综合| 7777精品伊人久久久大香线蕉完整版 | 欧美一区二区三区成人| 337p日本欧洲亚洲大胆精品| 久久久.com| 亚洲欧美日韩一区二区| 爽好久久久欧美精品| 国产美女精品一区二区三区| 成a人片国产精品| 欧美日韩电影在线播放| 制服丝袜中文字幕一区| 国产视频一区二区在线观看| 国产精品传媒入口麻豆| 日韩av在线播放中文字幕| 国产寡妇亲子伦一区二区| 成人妖精视频yjsp地址| 欧美少妇bbb| 久久精品人人做人人综合| 亚洲四区在线观看| 捆绑调教一区二区三区| 一本久久a久久精品亚洲| 日韩免费高清电影| 亚洲美女一区二区三区| 国产老肥熟一区二区三区| 99re这里只有精品视频首页| 欧美成人vps| 亚洲综合色丁香婷婷六月图片| 久久电影网站中文字幕| 久久这里只有精品视频网| 中文字幕一区二区三区蜜月| 午夜婷婷国产麻豆精品| 99视频一区二区三区| 欧美成人一区二区三区在线观看| 亚洲视频 欧洲视频| 理论片日本一区| 欧美丝袜丝交足nylons| 中文字幕视频一区二区三区久| 日本在线不卡视频一二三区| 色偷偷久久一区二区三区| 国产亚洲精品精华液| 免费在线观看一区二区三区| 欧美性大战久久久久久久蜜臀| 国产欧美综合在线观看第十页| 另类人妖一区二区av| 欧美精品国产精品| 一区二区三区免费观看| 91蜜桃在线观看| 国产精品网曝门| 懂色av一区二区在线播放| 精品sm在线观看| 美女脱光内衣内裤视频久久网站| 欧美日韩亚洲综合一区二区三区| 亚洲男帅同性gay1069| 丰满白嫩尤物一区二区| 国产欧美日产一区| 欧美午夜视频网站| 伊人夜夜躁av伊人久久| 99久久婷婷国产| 国产精品嫩草影院com| 国产成人福利片| 国产精品久线观看视频| 成人手机在线视频| 欧美激情一区二区三区蜜桃视频| 国产大陆亚洲精品国产| 欧美激情在线一区二区| 不卡一二三区首页| 亚洲色图欧美偷拍| 色婷婷综合在线| 性做久久久久久免费观看欧美| 欧美日韩激情在线| 美国十次了思思久久精品导航| 欧美一区二区三区的| 国产一区二区影院| 国产精品无遮挡| 91成人免费在线视频| 亚洲永久精品大片| 欧美精品精品一区| 国产美女精品在线| 成人欧美一区二区三区1314| 91原创在线视频| 日韩激情一区二区| 欧美精品一区二| 一本色道久久综合精品竹菊| 日韩vs国产vs欧美| 久久综合给合久久狠狠狠97色69| 国产精品一二三在| 成人欧美一区二区三区| 欧美精品乱码久久久久久按摩| 六月丁香综合在线视频| 国产清纯白嫩初高生在线观看91 | 日韩欧美一区二区视频| 黄网站免费久久| 亚洲日穴在线视频| 日韩一区二区视频在线观看| 国产成人午夜99999| 国内精品写真在线观看| 亚洲欧洲综合另类在线| 欧美一级日韩一级| 99国产精品一区| 麻豆成人免费电影| 亚洲欧美一区二区久久 | 国产美女娇喘av呻吟久久| 成人欧美一区二区三区黑人麻豆| 欧美精品自拍偷拍动漫精品| 粉嫩av一区二区三区| 日本在线不卡视频一二三区| 国产精品久久久久一区| 欧美mv和日韩mv的网站| 欧美性极品少妇| 99久久精品免费精品国产| 麻豆一区二区三| 亚洲成人福利片| 18涩涩午夜精品.www| 久久亚洲免费视频| 在线播放中文一区| 色综合天天天天做夜夜夜夜做| 国产一区二区三区在线观看精品| 天天影视涩香欲综合网| 亚洲精品国产视频| 亚洲天堂福利av| 中文成人av在线| 国产三区在线成人av| 日韩欧美国产综合一区 | 日韩欧美电影一二三| 欧美中文字幕亚洲一区二区va在线| 激情成人午夜视频| 热久久久久久久| 日韩国产欧美三级| 亚洲一二三专区| 一区二区在线观看视频 | 午夜精品久久久| 亚洲福利视频一区| 亚洲亚洲精品在线观看| 亚洲一区中文在线| 亚洲午夜精品在线| 亚洲一区在线观看免费观看电影高清| 亚洲欧洲无码一区二区三区| 国产精品天美传媒| 国产精品成人在线观看| 亚洲图片另类小说| 一区二区三区日本| 亚洲高清免费在线| 日韩综合一区二区| 日韩精品一二区| 美国欧美日韩国产在线播放| 91免费版在线| 欧美喷水一区二区| 欧美一区二区三区思思人| 日韩欧美一级二级| 26uuu精品一区二区三区四区在线| 日韩欧美国产三级| 中文字幕欧美区| 国产精品视频第一区| 一区二区三区精品在线| 亚洲aⅴ怡春院| 精品伊人久久久久7777人| 国产麻豆精品久久一二三| 成人涩涩免费视频| 在线观看视频91| 日韩欧美国产午夜精品| 国产精品天干天干在观线| 一区二区三区 在线观看视频 | 欧美xxxxxxxx| 久久久久久久综合日本| 中文字幕av在线一区二区三区| 亚洲女女做受ⅹxx高潮| 日韩在线一二三区| 国产一区二区三区黄视频 | 喷水一区二区三区| 九色综合狠狠综合久久| 丁香激情综合国产| 欧美主播一区二区三区美女| 日韩免费福利电影在线观看| 日韩毛片精品高清免费| 婷婷综合另类小说色区| 韩国成人福利片在线播放| 99vv1com这只有精品| 欧美r级在线观看| 亚洲欧美综合色| 六月婷婷色综合| 色嗨嗨av一区二区三区|