مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

salehi_so

عضویت از 1394/08/04

تنظیم profile provider در وب کانفیگ

  • چهارشنبه 21 مهر 1395
  • 16:12
تشکر میکنم

با سلام خدمت دوستان ،من قصد دارم در mvc با استفاده از profile سبد خرید ایجاد کنم ،و پروزه ام از نوع database first می باشد جداول aspnet_Profile و aspnet_Users رو هم به مدلم اضافه کردم اما هنگامی که قصد دارم property cart  رو از profile بخونم خطای connection string  می  دهد.

لطفا کمک کنید چکار باید انجام بدم ،منبع مشخصی برای آموزش ندارم و در اینترنت هم به نتیجه نرسیدم..با تشکر

کانکشن استرینگ
<connectionStrings><add name="DataBase" connectionString="metadata=res://*/Models.Domain.Model1.csdl|res://*/Models.Domain.Model1.ssdl|res://*/Models.Domain.Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=SALEHI-PC;initial catalog=sobooneh;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" /></connectionStrings>

  <anonymousIdentification enabled="true" />

    <profile  defaultProvider="AspNetSqlProfileProvider"  enabled="true">
      <providers>
        <clear/>
        <add name="AspNetSqlProfileProvider"
             type="System.Web.Profile.SqlProfileProvider"
             connectionStringName="DataBase" 
             applicationName="/" />
      </providers>
      <properties>
        <add name="Name"/>
        <add name="Family"/>
        <add name="Email"/>
        <add name="Mobile"/>
       <add name="Cart" type="Sobooneh.Models.ShoppingCart.ShoppingCart" serializeAs="Xml"   allowAnonymous="true" />
      </properties>

    </profile>
  #region افزودن به سبد خرید
       
        public ActionResult AddToCart(int productid)
        {
            var q = (from a in db.pakages
                     where a.ID == productid
                     select a).SingleOrDefault();
            int productId = productid;
            int price = q.Price.Value;
            string productName = q.Name;
            int discount = q.Off_Price.Value;
            ShoppingCart cart = ((ShoppingCart)HttpContext.Profile["Cart"]);
            if(cart==null)
            {
                cart = new ShoppingCart();
            }
            cart.Insert(productid, price, productName, discount);
            return Json(productid);
        }

        #endregion

 

پاسخ های این پرسش

تعداد پاسخ ها : 4 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • پنجشنبه 22 مهر 1395
  • 07:55

از  Identiity استفاده کردید یا Simple MemberShip ؟

کاربر سایت

salehi_so

عضویت از 1394/08/04

  • پنجشنبه 22 مهر 1395
  • 09:26

از Identity

کاربر سایت

salehi_so

عضویت از 1394/08/04

  • پنجشنبه 22 مهر 1395
  • 09:36

استاد گرامی اگر از session به جای این روش استفاده کنم آیا این امکان دارد که محتوای سبد خرید را برای مدت طولانی تری برای کاربر ذخیره کنم ؟ من فقط session time out را میشناسم اما استفاده از آن باعث میشود اطلاعات لاگین کاربر هم به همان میزان حفظ شود ، در حالی که من میخواهم فقط محتویات سبد خرید حفظ شود و اطلاعات لاگین کاربر که درون session ریخته ام به صورت معمول بعد از بیست دقیقه عدم استفاده از بین برود..

با تشکر

 

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • پنجشنبه 22 مهر 1395
  • 13:09

بله بهتره از Session استفاده کنید و میتونید زمان را بیشتر کنید

یا میتونید از Cookie هم استفاده کنید

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)