11. april 2007 - 12:10
Der er
10 kommentarer og 1 løsning
DateTime undefined
jeg sidder og kæmper lidt med en shoppingcart til et projekt. jeg arbejder ud af ASP.NET with C# bogen og har fulgt det eksempel som er beskrevet der. det eksempel bruger de DateTime til at update kurven men mit problem er at visual studio siger: the type or namespace name "DateTime" could not be found (are you missing a using directive or assembly referance?) min kode ser sådan ud: public class ShoppingCart { private DateTime _dateCreated; private DateTime _lastUpdated; private List<CartItem> _items; public ShoppingCart() { if (this._items == null) { this._items = new List<CartItem>(); this._dateCreated = DateTime.Now; } } .... osv for samme besked for jeg for <CartItem> som jeg heller ikke helt forstår hvorfor :( jeg sidder i visual studio 2005 hvis det kan være til nogen hjælp
Annonceindlæg fra Cognizant
11. april 2007 - 12:43
#1
har du using System; i toppen?
11. april 2007 - 13:29
#2
jeg har følgende med using System.Data; using System.Web; using System.Data.SqlClient; using System.Collections.Generic; de ligger helt i toppen.. nu har jeg prøvet med smide dem ind over min public class ShoppingCart... oven over den har jeg min public class CartItem.. det løste mit første problem med DateTime men nu får jeg så bare en fejl for hver af de nye usings jeg satte ind. a using clause must precede all other namespace elements except extern alias declarations
11. april 2007 - 13:32
#3
using System.Data; using System.Web; using System.Data.SqlClient; using System.Collections.Generic; namespace Wrox.Comerce { har denne namespace med begge steder... men jeg ved ikke hvad den gør eller om den skal hedde det samme :) jeg er total newbie til det her :(
11. april 2007 - 13:35
#4
jeg tror bare der er rod i dine paranteser og sådan.. smid hele koden til siden herind
11. april 2007 - 13:40
#5
ok :) bare hold godt fast: using System.Data; using System.Web; using System.Data.SqlClient; using System.Collections.Generic; namespace Wrox.Comerce { public class CartItem { private int _ProductID; private string _productname; private int _quantity; private double _price; private double _lineTotal; public void New() { } public void New(int ProductID, string ProductName, string Productname, int Quantity, double Price) { _productID = ProductID; _productName = ProductName; _quantity = Quantity; _price = Price; _lineTotal = Quantity * Price; } public int ProductID { get { return _productID; } set { _productID = value; } } public string ProductName { get { return _productName; } set { _productName = value; } } public int Quantity { get { return _quantity; } set { _quantity = value; } } public double Price { get { return _price; } set { _price = value; } } public double LineTotal { get { return _quantity * _price; } } } } using System.Data; using System.Web; using System.Data.SqlClient; using System.Collections.Generic; namespace Wrox.Comerce { public class ShoppingCart { private DateTime _dateCreated; private DateTime _lastUpdated; private List<CartItem> _items; public ShoppingCart() { if (this._items == null) { this._items = new List<CartItem>(); this._dateCreated = DateTime.Now; } } public List<CartItem> Items { get { return _items; } set { _items = value; } } public void Insert(int ProductID, double Price, int Quantity, string ProductName) { int ItemIndex = ItemIndexOfID(ProductID); if(ItemIndex == -1) { CartItem NewItem = new CartItem(); NewItem.productID = ProductID; NewItem.Quantity = Quantity; NewItem.Price = Price; NewItem.ProductName = ProductName; _items.Add(NewItem); } else { _items[ItemIndex] .Quantity += 1; } _lastUpdate = DateTime.Now; } public void Update(int RowID, int ProductID, double Price) { CartItem = _items[RowID]; Item.ProductID = ProductID; Item.Quantity = Quantity; Item.Price = Price; _lastUpdate = DateTime.Now; } public void DeleteItem(int rowID) { _items.RemoveAt(rowID); _lastUpdate = DateTime.Now; } private int ItemINdexOfID(int ProductID) { int index = 0; foreach (CartItem item in _items) { if (item.ProductID == ProductID) { return index; } index += 1; } return -1; } public double Total { get { double t = 0; if (_items == null) { return 0; } foreach (CartItem Item in _items) { t += Item.LineTotal; } return t; } } } }
11. april 2007 - 14:04
#6
har kun rettet dine syntax fejl og ændret småting.. ikke tjekket om din logik kode er korrekt. using System; using System.Data; using System.Web; using System.Data.SqlClient; using System.Collections.Generic; namespace Wrox.Comerce { public class CartItem { private int _ProductID; private string _productname; private int _quantity; private double _price; private double _lineTotal; public CarItem() { } public void CarItem(int ProductID, string ProductName, string Productname, int Quantity, double Price) { this._ProductID = ProductID; this._productname = ProductName; this._quantity = Quantity; this._price = Price; this._lineTotal = Quantity * Price; } public int ProductID { get { return _ProductID; } set { _ProductID = value; } } public string ProductName { get { return _productname; } set { _productname = value; } } public int Quantity { get { return _quantity; } set { _quantity = value; } } public double Price { get { return _price; } set { _price = value; } } public double LineTotal { get { return _quantity * _price; } } } } using System; using System.Data; using System.Web; using System.Data.SqlClient; using System.Collections.Generic; namespace Wrox.Comerce { public class ShoppingCart { private DateTime _dateCreated; private DateTime _lastUpdated; private List<CartItem> _items; public ShoppingCart() { if (this._items == null) { this._items = new List<CartItem>(); this._dateCreated = DateTime.Now; } } public List<CartItem> Items { get { return _items; } set { _items = value; } } public void Insert(int ProductID, double Price, int Quantity, string ProductName) { int ItemIndex = ItemIndexOfID(ProductID); if (ItemIndex == -1) { CartItem NewItem = new CartItem(); NewItem.productID = ProductID; NewItem.Quantity = Quantity; NewItem.Price = Price; NewItem.ProductName = ProductName; _items.Add(NewItem); } else { _items[ItemIndex].Quantity += 1; } _lastUpdate = DateTime.Now; } public void Update(int RowID, int ProductID, double Price) { CartItem = _items[RowID]; Item.ProductID = ProductID; Item.Quantity = Quantity; Item.Price = Price; _lastUpdate = DateTime.Now; } public void DeleteItem(int rowID) { _items.RemoveAt(rowID); _lastUpdate = DateTime.Now; } private int ItemINdexOfID(int ProductID) { int index = 0; foreach (CartItem item in _items) { if (item.ProductID == ProductID) { return index; } index += 1; } return -1; } public double Total { get { double t = 0; if (_items == null) { return 0; } foreach (CartItem Item in _items) { t += Item.LineTotal; } return t; } } } }
11. april 2007 - 14:24
#7
nu melder den ihvertfald ikke om flere fejl :) mange tak :) jeg får sikkert flere problemer senere ikke gå for langt væk hehe :D
11. april 2007 - 14:29
#8
husk at c# skelner mellem store og små bogstaver.. dvs. _dateCreated; er ikke _datecreated; og heller ikke _DateCreated; mange af dine fejl var bla. det.
11. april 2007 - 14:34
#9
ok det skal jeg huske :) jeg har godt nok røde streger under de der usings når de står der anden gang.. men tror ikke at det betyder noget... jeg kan heller ikk vælge debug i menuen men det er vel fordi der ikke er nogle fejl?
11. april 2007 - 14:43
#10
du burde godt kunne vælge debug.. angående using.. hvis den er der flere gange kan du godt fjerne duplicates:)
11. april 2007 - 14:50
#11
super :)
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.