Entwickler-Ecke
Sonstiges (.NET) - Eingabezeichenfolge hat falsches Format nach int.Parse
Haardy - Do 11.04.13 17:17
Titel: Eingabezeichenfolge hat falsches Format nach int.Parse
Hallo liebe community
Ich habe ein kleines problem
erstmal eine kleine einführung woran ich grade arbeite :
also es sollen über ein webinterface kollektionen erstellt werden (Klappt) danach kann man in die kollektions verwaltung gehen und sind alle kollektionen aufgelistet neben den aufgelisteten kollektionen ist noch eine weiterleitung auf die seite produkte hinzufügen die eingabe funktioniert auch. nur habe ich das problem das der die produkte automatisch in die kollektion speichern soll
(als beispeil wie es auf der seite aussieht :"Kollektionsname" "produkt hinzufügen" ) und sie die KollektionsID aus der Url nehmen soll und diese dann in die Produktliste einfügt.
C#-Code:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31:
| protected void AddProductButton_Click(object sender, EventArgs e) { AddProduct product = new AddProduct();
bool addSuccess = product.AddProducts(AddProductCodeNumber.Text, AddProductName.Text,DropDownAddProductTypeID.SelectedValue,GetCollectionID(collectionID.Text)); if (addSuccess) { string pageUrl = Request.Url.AbsoluteUri.Substring(0, Request.Url.AbsoluteUri.Count() - Request.Url.Query.Count()); Response.Redirect(pageUrl + "?ProductAction=add"); } else { LabelAddStatus.Text = "Produkt konnte nicht hinzugefügt werden"; } } public string GetCollectionID([QueryString("collectionID")]string collectionID) {
return collectionID; }
public bool AddProducts(string ProductCodenumber, string ProductName, string Producttype,string collectionID) {
var myProduct = new Product();
myProduct.ProductCodeNumber =ProductCodenumber; myProduct.ProductName = ProductName; myProduct.ProductTypeID =Convert.ToDouble (Producttype); myProduct.CollectionID = int.Parse(collectionID); } |
das sind denke ich mal die beiden wichtigsten dinge.
so mein problem ist jez das der nach dem drücken des konpfes"Produkt hinzufügen" mir eine fehlermeldung umd die ohren haut
Fehlermeldung:
Die Eingabezeichenfolge hat das falsche format
und streicht mir die zeile "myproduct.CollectionID=int.Parse(collectionID)" rot an.
ich danke jez schonmal für die antworten und entschuldige mich für den langen post ;)
mfg Haardy
Moderiert von
Th69: C#-Tags hinzugefügt
Haardy - Do 11.04.13 19:20
an sich sollte da was drin sthen da ich auf einer anderen seite eine kollektion erstelle und die Collection id is der key in der grund cs datei ;)
achso gut weiss ich bescheid denk ich beim nächsten mal dran ;)
Th69 - Do 11.04.13 19:56
Oder laß dir doch einfach mal den String in
LabelAddStatus.Text ausgeben (und kommentiere die int.Parse-Zeile temporär mal aus).
Was mir noch einfällt: die Parse-Methode liefert auch diesen Fehler bei Leerzeichen (am Anfang oder Ende). Du könntest dann
C#-Quelltext
1:
| myproduct.CollectionID = int.Parse(collectionID.Trim()) |
mal versuchen.
Und dann ist mir noch aufgefallen, daß du bei der Zeile drüber
Convert.ToDouble(...) anstatt
double.Parse(...) benutzt - du solltest einheitlich die Parse-Methode (oder um Exceptions abzufangen besser noch die TryParse-Methode benutzen).
Haardy - Do 11.04.13 21:30
ok werde ich morgen mal testen ;) und zu dem convert.todouble is noch von davor ;) also der rest is halt testen gewesen ;)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!