Allen,
voor het aankomende examen ben ik wat aan het 'prullen' met C#, databanken en klassen
Ik weet dat het allemaal heel erg basic is enzo, maar je moet ergens beginnen
De databank 'MyDB.mdf' bestaat uit 2 tabellen: Product & ProductType.
ProductType bestaat uit: Id (uniqueIdentifier)*, Naam (nvarchar)
Product bestaat uit: ID *, Naam, Prijs, Type (UniqueIdentifier)
waar product.type en productType.ID een relatie vormen.
vervolgens heb ik een dataset aan het project gekoppeld "ProductDS.xsd" en reeds volgende classen aangemaakt:
ProductType.cs
Product.cs
en vervolgens nog een klasse "DBManager.cs"
Nu krijg ik bij bovenstaand rood-gekleurde regel volgende error:
Op regel 18 van DBManager.cs krijg ik volgende foutmelding:
Cannot convert type 'oefening_1.ProductDS.ProductTypeRow' to 'Oefening_1.ProductType'.
Na enig gevloek en gezoek met de ICloneable dacht ik dat het ging werken, maar tevergeefs....
Heb al in de dataset-code gekeken naar welk type er verwacht wordt, de overige klassen nagekeken e.d. maar kan niets terug vinden...
Iemand die me in de goeie richting kan sturen?
voor het aankomende examen ben ik wat aan het 'prullen' met C#, databanken en klassen
Ik weet dat het allemaal heel erg basic is enzo, maar je moet ergens beginnen
De databank 'MyDB.mdf' bestaat uit 2 tabellen: Product & ProductType.
ProductType bestaat uit: Id (uniqueIdentifier)*, Naam (nvarchar)
Product bestaat uit: ID *, Naam, Prijs, Type (UniqueIdentifier)
waar product.type en productType.ID een relatie vormen.
vervolgens heb ik een dataset aan het project gekoppeld "ProductDS.xsd" en reeds volgende classen aangemaakt:
ProductType.cs
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| namespace Oefening_1 { public class ProductType { public Guid Id { get;set; } public String Naam { get; set; } public override string ToString() { return string.Format("{0}",Naam); } } public class ProductTypeList : List<ProductType> { } } |
Product.cs
C#:
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
| namespace Oefening_1 { public class Product:ICloneable { public Guid Id { get; set; } public Guid Type { get; set; } public string Naam { get; set; } public int Prijs { get; set; } public void Assign(Product p) { this.Naam = p.Naam; this.Type = p.Type; } #region ICloneable Members public object Clone() { return this.Clone(); } #endregion } public class ProductList : List<Product> { } |
en vervolgens nog een klasse "DBManager.cs"
C#:
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
| using Oefening_1.ProductDSTableAdapters; namespace Oefening_1 { public static class DBManager { public static ProductTypeList productTypes() { var productTypes = new ProductTypeList(); var adapter = new ProductTypeTableAdapter(); var dataset = new ProductDS(); adapter.Fill(dataset.ProductType); adapter.Dispose(); foreach (ProductDS.ProductTypeRow row in dataset.ProductType.Rows) { productTypes.Add((ProductType)row); } return productTypes; } } } |
Nu krijg ik bij bovenstaand rood-gekleurde regel volgende error:
Op regel 18 van DBManager.cs krijg ik volgende foutmelding:
Cannot convert type 'oefening_1.ProductDS.ProductTypeRow' to 'Oefening_1.ProductType'.
Na enig gevloek en gezoek met de ICloneable dacht ik dat het ging werken, maar tevergeefs....
Heb al in de dataset-code gekeken naar welk type er verwacht wordt, de overige klassen nagekeken e.d. maar kan niets terug vinden...
Iemand die me in de goeie richting kan sturen?
Last night I lay in bed looking up at the stars in the sky and I thought to myself, where the heck is the ceiling.