Błąd przy pobieraniu danych C# + SQŁ

Odpowiedz Nowy wątek
2015-01-11 19:24
0

Witam mam mały problem. Zacznę od początku pobieram do Comboboxa nazwę produktu i teraz chcę pobrać z bazy cenę która jest przypisana do konkretnej nazwy i pomnożyć ją przez ilość i wyliczyć wartość końcową. Na razie mam to tak ale wywala mi błąd i nie wiem jak to poprawić. Pomożecie??

private void txtIlosc_Leave(object sender, EventArgs e)
{
var cena = (from x in baza.podzial_tuszy_miesas
                select x.cena).ToList();
var koszt = cena * Convert.ToDecimal(txtIlosc.Text);
txtWartosc.Text = koszt.ToString();
}

Próbowałem zamiast

ToList

dać FirstOrDefault


....
edytowany 1x, ostatnio: wolfen, 2015-01-11 19:25

Pozostało 580 znaków

2015-01-11 19:53
ne0
0

Jaki błąd Ci wywala? Na której linijce?
Nie do końca rozumiem jak dostajesz konkretną nazwę i cenę.
Twoje zapytanie robi coś takiego: z X w tabeli podzial_tuszy_miesas wybierz x.cena.
Wydaje mi sie ze takie zapytanie zwroci Ci liste cen z calej tej tabeli.


Pomogłem? To dobrze :)
edytowany 1x, ostatnio: ne0, 2015-01-11 19:55

Pozostało 580 znaków

2015-01-11 20:59
0

W załączniku wrzuciłem fotkę co chce osiągnąć. Dobrze rozumujesz to zapytanie. A błąd mam taki:

Error 1 Operator '*' cannot be applied to operands of type 'System.Linq.IQueryable<decimal>' and 'decimal'

Pozostało 580 znaków

2015-01-11 21:26

Jakim cudem tam masz IQueryable jeśli dałeś ToList?
Powinno raczej być

var cena = (from x in baza.podzial_tuszy_miesas
                where x.nazwa == "twoja nazwa"
                select x.cena).First();
Mam pytanie przy okazji : W jaki sposób w ten sposób odpytuje się bazę ? Dotychczas robię to "klasycznie" tak jak podają kursy, czyli SqlCommand(string, connection) i tak dalej, a ten prezentowany sposób wydaje mi się szybszy ... - hipekk 2015-01-19 12:27
Poszukaj w google np Entity Framework. - dam1an 2015-01-19 12:53

Pozostało 580 znaków

2015-01-11 21:39
0

Wielkie dzięki już działa :) musiałem też zmienić nazwę cena bo mi się dublowało i teraz dzięki Tobie działa :)

Pozostało 580 znaków

2015-01-11 21:45
0

To może jeszcze mi pomożesz ale tego nawet nie wiem jak ruszyć :/

Powiedzmy że chce zrobić magazyn połączony z dostawami. Ogólnie piszę program do rzeźni. Wracając do tematu chce zrobić tak że wybieram zwierze które waży, np. 100kg i chce aby według podziału który jest zapisany w bazie podzieliło mi to 100kg na różne rodzaje mięsa i zapisało do magazynu.

Podpowiesz jak to ruszyć?

Pozostało 580 znaków

2015-01-11 21:52
0

Pokaż model i ten przelicznik.

Pozostało 580 znaków

2015-01-11 22:10
0

W załączniku jest schemat bazy i przelicznik. Przelicznik znajduje się w tabeli podzial_tuszy_miesa. Dostawy towaru natomiast zapisywane są w tabeli inwentarz. Na diagramie nie ma tabeli magazyn do której wyciągam id_inwentarz (czyli id dostawy), id_gatunek (czyli id danego rodzaju miesa no i ilość (czyli ilość mięsa tego już podzielonego i sumowanego po każdej dostawie. Coś takiego mam nadzieje że dobrze opisałem.

Pozostało 580 znaków

2015-01-12 19:15
0

Dam1an i jak tam wymyśliłeś coś? :)

Nie, nie chce mi się nad tym myśleć. W dodatku nie do końca rozumiem co gdzie chcesz dodać. - dam1an 2015-01-12 19:18

Pozostało 580 znaków

2015-01-12 21:59
ne0
0

tabela podzial_tuszy_miesa zawiera tylko jakas cene i nazwe. Ja totalnie nie rozumiem tego.
Wez napisz to w krokach. Co sie dzieje po kolei.


Pomogłem? To dobrze :)

Pozostało 580 znaków

2015-01-12 22:07
Wielki Mleczarz
0

Ja pierdziele sory chłopaki :D zamiast kolumny cena powinno być napisane jak jest na zdjęciu przelicznik.pgn czyli zamiast ceny powinnien byc podział wybaczcie.

jaki podzial? jak to jest liczone? skad mam wiedziec ze mam wziac nie wiem 10% d**y, 20% glowy i czegos tam? - ne0 2015-01-12 22:27

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0