Eksperci miesiąca

1
grzegorz.tworek
Senior
miesiąc
33
łącznie
814
2
dbsoft
Gość
miesiąc
29
łącznie
38
3
burzak
Guru
miesiąc
28
łącznie
1086
4
styrni
Top10
miesiąc
21
łącznie
4101
5
Bulax
Senior
miesiąc
21
łącznie
589

Z blogów MVP

Microsoft w Polsce

Statystyka

  • W tej chwili mamy:
    98 czytelników online
    58 605 zarejestrowanych
  • Do dziś zanotowaliśmy:
    46 038 436 odsłon
    65 642 odsłon / 24h
Microsoft Most Valuable Professional

Forum - Wątek

Idź do grupy:
Widok:
Autor

Wątek


phobos17
Gość

wypowiedzi: 3
od: 2010-03-20
problem z ObjecDataSource 2010-03-20 (So) 00:57

Witam,

 

mam problem z dodawaniem produktów do koszyka. Po rejestracji nowego użytkownika próbuje dodać produkt do koszyka, niestety produkt nie zostaje dodany. Przy kolejnej próbie wszystko ok, produkt ląduje w koszyku. Może ktoś zerknąć i pomóc mi w jakiś sposób?

 

 

<%@ Page Title="" Language="C#" MasterPageFile="~/sklep.master" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>

<%@ MasterType TypeName="sklep" %>

<%@ Register Assembly="Microsoft.Web.GeneratedImage" Namespace="Microsoft.Web" TagPrefix="cc1" %>

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPl

aceHo
lder1
" Runat="Server">

<asp:UpdateProgress ID="UpdateProgress1" runat="server" DisplayAfter="0"

AssociatedUpdatePanelID="upProdSzczeg

"
>
;

<ProgressTemplate>

<div>

Ładowanie...

</div>

</ProgressTemplate>

</asp:UpdateProgress>

<asp:UpdatePanel runat="server" ID="upProdSzczeg">

<ContentTemplate>

<asp:FormView runat="server" DataSourceID="SzczegolyProdZrodlo" ID="FormView1" DataKeyNames="ProdId"

EnableViewState="false">

<ItemTemplate>

<table style="font-size: 12px; width: 100%">

<tr>

<td style="width: 500px">

<b>

<span style="font-size: 18px">Szczegóły produktu</span>

</b>

</td><br /><br />

<td style="width: 250px" align="right">

Id produktu:

<asp:Label ID="lblProdId" runat="server" Text='<%# Eval("ProdId") %>'></asp:Label>

</td>

</tr>

<tr>

<td style="width: 500px">

Nazwa produktu:

<asp:Label ID="lblNazwaProd" runat="server" Text='<%# Eval("NazwaProd") %>'></asp:Label><br /><br />

Nazwa producenta:

<asp:Label ID="lblNazwaProducenta" runat="server" Text='<%# Eval("NazwaProducenta") %>'></asp:Label><br /><br />

Opis produktu:

<asp:Label ID="lblOpisProd" runat="server" Text='<%# Eval("OpisProd") %>'></asp:Label><br /><br />

Kategoria produktu:

<asp:Label ID="lblKategoria" runat="server" Text='<%# Eval("NazwaKat") %>'></asp:Label><br /><br />

Cena:

<asp:Label ID="lblCena" runat="server" Text='<%#String.Format("{0:##.00}", Eval("CenaSprzed")) %>'></asp:Label><br /><br />

Dostępna ilość produktu:

<asp:Label ID="lblIloscProd" runat="server" Text='<%# Eval("IloscProd") %>'></asp:Label><br /><br />

Uwagi:

<asp:Label ID="lblUwagi" runat="server" Text='<%# Eval("Uwagi") %>'></asp:Label><br /><br />

</td>

<td style="width: 250px" align="right">

<asp:Panel runat="server" ID="pnlZdjecie">

<cc1:GeneratedImage ID="GeneratedImage1" runat="server"

ImageHandlerUrl="~/Zdjecia.ashx" width="220" height="270" >

<Parameters>

<cc1:ImageParameter Name="imageid" Value='<%# Eval("ZdjId") %>'/>

</Parameters>

</cc1:GeneratedImage><br />

</asp:Panel>

</td>

</tr></table>

</ItemTemplate>

</asp:FormView>

<asp:SqlDataSource ID="SzczegolyProdZrodlo" runat="server"

 

SelectCommand="SELECT Produkt.ProdId, Produkt.NazwaProd, Produkt.NazwaProducenta, Produkt.OpisProd, Produkt.IloscProd, Kategorie.NazwaKat, Produkt.CenaSprzed, Produkt.Uwagi, Zdjecia.ZdjId FROM Produkt, Kategorie, Zdjecia WHERE (Produkt.KatId=Kategorie.KatId) AND (Produkt.ProdId=@ProdId) AND (Produkt.ZdjId=Zdjecia.ZdjId)"

ConnectionString="<%$ ConnectionStrings:svConnectionString %>" >

<SelectParameters>

<asp:QueryStringParameter Name="ProdId" QueryStringField="ProdId" DefaultValue="1" />

</SelectParameters>

</asp:SqlDataSource>

</ContentTemplate>

</asp:UpdatePanel>

<asp:Button runat="server" Text="Dodaj do koszyka" ID="btnDodajDoKosz"

onclick="btnDodajDoKosz_Click" />

 

</asp:Content>

using System;
using System.Collections;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Security;
using sklepvenditaTableAdapters;
using System.Configuration;
using System.Web.UI.HtmlControls;
using System.Data;
using System.Web.UI.WebControls.WebParts;
using System.Data.SqlClient;
public partial class Default2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
try
{
if (!Page.User.Identity.IsAuthenticated)
{
this.Master.Informacja.Text = ">> Szczegóły produktu";
this.Master.KomunikatBledu.ForeColor = System.Drawing.Color.Green;
this.Master.KomunikatBledu.Text = "** Aby dodać produkt do koszyka, powinieneś być zalogowany!";
btnDodajDoKosz.Visible = false;
}
}
catch
{
this.Master.Informacja.Text = ">> Szczegóły produktu";
}
}
protected void btnDodajDoKosz_Click(object sender, EventArgs e)
{
if (Page.User.Identity.IsAuthenticated)
{
if (Page.User.IsInRole("Klient"))
{
KoszykTableAdapter polKoszyk = new KoszykTableAdapter();
MembershipUser obiektUzyt = Membership.GetUser();
Guid uzytkownik = (Guid)obiektUzyt.ProviderUserKey;
sklepvendita.KoszykDataTable Koszyk = polKoszyk.CzyIstnieje(uzytkownik);
object KoszId = null;
if (Koszyk.Rows.Count == 0)
{
KoszId = polKoszyk.WstawDoKoszyk(uzytkownik);
}
else
{
KoszId = int.Parse(Koszyk.Rows[0]["KoszId
"
]
.ToString
(
)
)
;
}
int ProdId = int.Parse(Request.QueryString[
"ProdId
"
]
.ToString
(
)
)
;
ProduktTableAdapter polProdukty = new ProduktTableAdapter();
sklepvendita.ProduktDataTable Produkty;
Produkty = polProdukty.PobierzProduktyId(ProdId);
decimal Cena = decimal.Parse(Produkty.Rows[0]
[
"CenaSprzed
"
]
.ToString
(
)
)
;
KoszSzczegolyTableAdapter polKoszSzczeg = new KoszSzczegolyTableAdapter();
sklepvendita.KoszSzczegolyDataTable KoszSzczeg = polKoszSzczeg.CzyJestProd1(uzytkownik, ProdId);
if (KoszSzczeg.Rows.Count == 0)
{
polKoszSzczeg.DodajDoKoszyka(int
.Parse
(KoszId
.ToString
(
)
)
, ProdId, 1, Cena, DateTime.Now);
}
else
{
int nowaIlosc = int.Parse(KoszSzczeg.Rows[0]["IloscZam
"
]
.ToString
(
)
) + 1;
decimal nowaCena = nowaIlosc * Cena;
int KoszSzczegId = int.Parse(KoszSzczeg.Rows[0]["Ko
szSzc
zegId
"
]
.ToString
(
)
)
;
polKoszSzczeg.AktProdKosz(nowaIlosc, nowaCena, DateTime.Now, KoszSzczegId);
}
Response.Redirect("Default5.aspx
?UserId
=
" + uzytkownik.ToString());
}
else
{
this.Master.KomunikatBledu.Text = "Aby móc kupować, musisz się zalogować";
this.Master.KomunikatBledu.ForeColor = System.Drawing.Color.Red;
}
}
else
{
this.Master.KomunikatBledu.Text = "** Zaloguj się, aby dokonać zakupu";
this.Master.KomunikatBledu.ForeColor = System.Drawing.Color.Red;
}
}
}

 

Zaloguj się, żeby odpowiedzieć

adrole
Junior

wypowiedzi: 148
od: 2010-01-20

Odp: problem z ObjecDataSource 2010-03-21 (N) 01:45

Hmm może by tak debuder odpalić ??

Zaloguj się, żeby odpowiedzieć