C# - Problemi i rješenja izdvojena tema

poruka: 2.151
|
čitano: 704.829
|
moderatori: Lazarus Long, XXX-Man, vincimus
+/- sve poruke
ravni prikaz
starije poruke gore
15 godina
odjavljen
offline
Re: C# - Problemi i rješenja
Friday kaže...
royalhero kaže...

E o ovome govorim. Nema na Google-u sve, niko tebi neće pisati algritam za to i to, za neke osnovne stvari ima ih svukuda, ali da sve ima na Google-u, nema.

Ako ikada budeš radio ovaj posao profesionalno razočarati ćeš se koliko malo ćeš razmišljati o algoritmima a koliko puno ćeš zapravo biti kao daktilograf koji štanca kod. Ja sam u zadnjih 2-3 godine radio svega par stvari koje su zahtjevale ozbiljno razmišljanje (imaj na umu da ti se osobna ljestvica cijelo vrijeme diže). Sve ostalo je ono dosadno, rovovsko, programiranje. Rutina zbog koje ti se ne da ići na posao. Nekome sa strane to izgleda cool ali je dosadno za ubit se. Možda najzanimljivija stvar na kojoj sam radio je pisanje XML serijalizatora/deserijalizatora koji mi je trebao zbog neispravno napravljenog SOAP servisa sa kojim sam, nažalost, morao "pričati".

Slažem se, bez obzira o frameworku/jeziku, entuzijazam te drži samo u početku dok učiš. Svaki izazov je IZAZOV i tražiš način da se samom sebi dokažeš, brojne neprospavane noći, gomile šalica od kave po radnom stolu, enrgetska pića, uporno odbijanje svih dolaznih poziva na mobitelu, višesatno debugiranje nakon koje ispadne da sam zamijenio inicijalizaciju i uvjet u foor petlji, gubljenje semicolona, pa izmisliš toplu vodu, pa nakon toga u 3 ujutro shvatiš da si upravo izmislio kotač i onda odjednom na kraju danas shvatiš da si nakucao gomilu koda koja radi upravo ono što si očekivao, da je taj isti kod uredno formatiran, pregledan i jasan ostalim ljudskim bićima, naravno, zahvaljujući brižnom dokumntiranju i da nisi upogonio 3% svojih mentalnih sposobnosti. A i sutra se treba dići na posao ... {#}

13 godina
neaktivan
offline
Re: C# - Problemi i rješenja
alankish kaže...

 A i sutra se treba dići na posao ... {#}

A i žena ti sama u krevetu. :D

Ma razumijem ja vas, ali dok mogu, dok me ne pritiskaju rokovi i dok se time ne bavim profesionalno želim da to bude "na nivou".

15 godina
offline
Re: C# - Problemi i rješenja
royalhero kaže...

Athlon,
razdvoji programski jezik od programiranja!!! Programski jezik je, teoretski, moguće znati cjelog. (imam strica koji zna čisti C jer je u njemu radio od postanka od C++-a) Ali programiranje nije moguće znati u cjelosti. Svaki problem možeš rješiti na XYZ načina...
Što ti smatraš napredkom?, uzimanje gotovih funckija i kopiranje u svoj kôd? Što smatraš pod algoritmima?, samo ono što je na Infokupu su tebi algoritmi? Algoritmom možeš predstaviti sve, hodanje, pišanje, yebanje, k*rčenje, pa tako i bilo šta drugo.

Koliko sam puta čuo "reka mi prijatelj" ili "rekla mi ekipa", fuuuuuuuuuuuu, ti i tvoja ekipa, šta su oni bogovi, ja ozbiljno moram prestati biti ateista i početi vjerovati u DUMP.

Jednom u životu shvati da si TI pogrješio, poslušaj savjet, a ne samo raditi ono štati jedna grupa kaže.

Ti jesi tvrdoglav, ne želiš poslušati, pitaš za pomoć i onda se kur*čiš, sjeti se samo one stranice koju si radio.
Na vašim predavanjima su vas išli učiti MVC, međutim izašli ste bez znanja o onome M iz naziva. Uzeo si raditi stranicu za pansion koja ima samo jednu prezentaciju i to si pošao u ASP.NET-u raditi. HTML output je bio katastrofa.
Sjeti se priče o SQL-u, uporno si tvrdio da ćeš učiti LINQ2SQL a ne SQL, misllio si da je prvo zamjena za drugo. Pomogli su ti ljudi koji svakodnevno konzumiraju .NET i SQL, nisi ih htio poslušati nego si slušao svoju "ekipu".

I dokle sve ovo?, zašto bi neki poslodavac sutra išao zaposliti tebe (iako si i tu na one iz DUMP-a koji ne bi radili sve, nego samo ono šta im se sviđa, pogledaj temu PHP ili ASP, i postove tvog sensea Fearlesa), a ne nekoga ko je vrjedno radio i učio kako treba (ne NUŽNO po knjizi).

Čekaj spominješ moju stranicu mjesec dana nakon šta sam doznao šta je to html i css? Pa ja nisam dizajeromg ono je sprdnja o čemu ti govoriš. Šta bi nas ti naučio u 4 predavanja od 90 minuta? Nema mi potrebe slušat ikoga drugog ako sam okružen ljudima koji uspješno odrade svaki projekt koji im se da a znaju samo ono što trebaju znat.Jel tebi jasno koliko se meni smiju kad im prenesem tvoja mišljenja i tvoje postove? Entity framework je savršen, jednostavan za rad, jednostavan za komunikaciju, kad mi prvi put zafali duboko znanje iz SQL-a e onda ću ti se javit i reć ti da si u pravu ali mislim da se to neće tako skoro dogodit ako se ikad i dogodi s obzirom da svi kojima sam okružen koriste EF za rad na svemu što im se baci. Ako mi nekad sa 30 godina bude trebao SQL za neke zayebane baze naućit ću ga. Tebi nije jasno da su to ljudi s kojima ću radit. Sta hocs da ja jedini ko budala među 30 ljudi poćnem forsirat SQL a ostalih 29 koristi EF za izradu modela i baze a LINQ za komuniciranje s modelom + znaju mi objasnit sve šta treba vezano za njih. Ti ne možeš shvatit da ti ja cijelo vrijeme ne govorim da tvoje metode nisu bolje od mojih nego da jedostavno ljudi kojima sam okružen ih ne koriste pa neću ni ja i zato te PREKLINJEM da mi prestaneš nametat ono šta ti misliš da je ispravno, od velike si mi pomoći kad mi nešto zatreba,nije ti lijeno izgubit vrijeme za mi pokazat i za to sam ti zahvalan ali molim te prestani nametat svoje. SQL ću ućit kad mi netko od mojih kaže da će mi trebat za neki od projekata koji slijede.

Nikad te necemo zaboraviti. RIP EnlightenedPhoenix 24.6.2011.
17 godina
odjavljen
offline
Re: C# - Problemi i rješenja
athlon64 kaže...
...

 

Kreirati neke jednostavne view-ove i backup/restore procedure - to moraš znati, točka! Za ostale stvari ti EF može biti dovoljan.

Freak Show Inc.
15 godina
odjavljen
offline
Re: C# - Problemi i rješenja
royalhero kaže...
alankish kaže...

 A i sutra se treba dići na posao ... {#}

A i žena ti sama u krevetu. :D

Ma razumijem ja vas, ali dok mogu, dok me ne pritiskaju rokovi i dok se time ne bavim profesionalno želim da to bude "na nivou".

I ti, što misliš kako je tek onima koji imaju klinca?

 

Uglavnom, način učenja i metodika se razlikuju od pojednica do pojedinca. Osobno sam zagovaratelj učenja iz knjige, i to na način, da je knjiga na koljenu, šalica kave sa desne strane i omiljeni editor/IDE na ekranu koji nikad nema dovoljnu vertikalnu rezoluciju, eh, zato koristim samo Logijeve miševe sa hyperscroll fičurima, to ti funckionira, na način da stisneš kotačić, zavrtiš fa i on se inercijski vrti i u trenutku je na 1876 ili nekoj drugoj liniji koda. Dobor je poručavati stvari u dubinu dok želiš biti siguran zašto je TO upravo tako, ja sam svojedobno ispisavao za svaku rotaciju petlje vrijednost i varijable, slatko {#} ? Dobro ja naučiti da pisanje koda bude na nivou, a i ponekad je stvarno potrebno malo mućnuti glavom, ali zašto pisati stotine linije koda, kad nešto već postoji, što misliš koja je svrha devexpress ili telerik kontroli od strane trećeg "developera" ? Poanta je da naučiš razmišljati kao programer {#}, pišeš uredan kod,(tu i tamo ga dokumentiraš, dovoljni su i komentari)i naravno da si olakšaš posao, znaš onu don't repeat youreself&don't reinvent the wheel, da znaš skratiti repetitivne radnje i a da znaš specifična obiljećja pojedinog jezika i tehnologije. I svaki budući poslodavac je sretan sa tobom , a ostalo je na tebi.

16 godina
odjavljen
offline
C# - Problemi i rješenja

Slažem se sa Fridayem i alankishom u potpunosti. Programer mora dobro poznavati osnove jezika (ne da mora googlati kako napisati glupi select * from where query sa parametrima i kako ide select...case, pretvaranje iz stringa u double ili tako neke trivijalne stvari) i mora biti snalažljiv. Pod to smatram sposobnost da nađeš gotov kod (bilo svoj ili tuđi) i umjesto kucanja x linija x puta jednostavno kopiraš gotov kod od nekuda i prepraviš ga da radi jer ti rokovi ne dopuštaju da ponovno pišeš neku klasu (npr. generator/parser html/xml dokumenata). I da imaš vremena, zašto bi ga trošio na ponovno pisanje postojećeg

 

Treba iskoristiti postojeći kod koliko god se može da bi se uštedjelo vrijeme i resursi. Naravno, taj kod treba prilagoditi aplikaciji da ne vuče bez potrebe 120MB RAMa ako može 40. A da bi to mogli izvesti, treba znati osnove i sintaksu.

http://nighthawk-software.blogspot.com/
Moj PC  
2 0 hvala 0
17 godina
offline
Re: C# - Problemi i rješenja
Sum_of_all_fears kaže...

Slažem se sa Fridayem i alankishom u potpunosti. Programer mora dobro poznavati osnove jezika (ne da mora googlati kako napisati glupi select * from where query sa parametrima i kako ide select...case, pretvaranje iz stringa u double ili tako neke trivijalne stvari) i mora biti snalažljiv. Pod to smatram sposobnost da nađeš gotov kod (bilo svoj ili tuđi) i umjesto kucanja x linija x puta jednostavno kopiraš gotov kod od nekuda i prepraviš ga da radi jer ti rokovi ne dopuštaju da ponovno pišeš neku klasu (npr. generator/parser html/xml dokumenata). I da imaš vremena, zašto bi ga trošio na ponovno pisanje postojećeg

 

Treba iskoristiti postojeći kod koliko god se može da bi se uštedjelo vrijeme i resursi. Naravno, taj kod treba prilagoditi aplikaciji da ne vuče bez potrebe 120MB RAMa ako može 40. A da bi to mogli izvesti, treba znati osnove i sintaksu.

ok, to sa gotovim kodom da ubrza stvari, ali iskreno, nervira me kad tip kaže, ja sam to napravio, a kad pogledam source, skužim da je to sa code projecta, pa što mi onda ne kaže, pokupio sam od tamo to i to.

13 godina
neaktivan
offline
C# - Problemi i rješenja

Ovako, imam problem sa ASP.NET Web Formama, ali ću postati ovdje, jezik je C#, kada se o Windows Formama pričalo može i Web.

Dakle, radi se o editovanju nečega (profila u mom slučaju) kroz nekolika inputa ili asp:TextBoxa, kada se klikne button izvrši se ovaj event:

    protected void btnSpasi_Click(object sender, EventArgs e)
    {
        using (BLL data = new BLL())
        {
            int id = Convert.ToInt32(Session["korisnikID"]);
            data.uredi_korisnika(korisnicko.Value, ime.Value, prezime.Value, mail.Value, id);
        }
    }

Metoda uredi_korisnika to spasi u context:

    public void uredi_korisnika(string username, string ime, string prezime, string mail, int id)
    {
        Korisnici korisnik = korisnik_po_id(id);

        korisnik.KorisnickoIme = username;
        korisnik.Ime = ime;
        korisnik.Prezime = prezime;
        korisnik.Mail = mail;

        context.SaveChanges();
    }

 

Sve je to divno, krasno, bajno, ali problem je što dobivam stare vrijednosti textboxa. Dakle kada kliknem na uredi profil, dobijem formu i texboxe popunjene vrijednostima, kliknem na spasi, postavim break point na tu metodu i vidim da dobivam stare vrijednosti.

Dok sam koristio asp:TextBox, sumnjao sam na View State, međutim gasio sam ga, ali isto. Ovo nije problem, ne moram imati vrijednosti stare kada uređujem korisnika, nije problem username ponovo unjeti, ali što ako se radi o npr. vijestima.

Hvala unaprijed.

 
0 0 hvala 0
17 godina
offline
C# - Problemi i rješenja

Jesi li u OnLoad stavio da loada data u formu? OnLoad se izvrsava prije ove tvoje metode pa ti non stop vraca stare vrijednosti.

Prvo sto mi pada napamet.

 

Ako je to to, onda samo loadaj formu ako nije Postback.

Rvat katolik!
Poruka je uređivana zadnji put pon 27.8.2012 12:06 (tnakir).
 
0 0 hvala 1
13 godina
neaktivan
offline
Re: C# - Problemi i rješenja

Koji sam tupan!!!, Page Life Cycle mi nije na pameti. Puno hvala tnakir, dodao samo if(!IsPostback && !IsCallBack) i radi.

 

Pomalo me nervira Web Forms način programiranja i svi ti njegovi eventi, hoću da stavim svoju formu, da ne radim preko evenata, zeleni mi se, onda se sjetim da imam već jednu formu, onu koju ASP.NET kreira i ne mogu biti ugnježdene.

Poruka je uređivana zadnji put pon 27.8.2012 12:18 (royalhero).
17 godina
offline
C# - Problemi i rješenja

Meni je MVC puno drazi od formi. Em je cisci, em imas bolju kontrolu...

Rvat katolik!
 
1 0 hvala 0
13 godina
neaktivan
offline
Re: C# - Problemi i rješenja
tnakir kaže...

Meni je MVC puno drazi od formi. Em je cisci, em imas bolju kontrolu...

Ma čitao sam onu knjigu što si mi ti preporučio davno, gledao sam na Pluralsightu videe, radio neke mini sajtove sa MVC-om 3, ali teško mi se odvojiti od forma, iako ne koristim ama baš ništa od serverskih kontrola osim repeatera ili data lista (dobro i button, radi ovakvih stvari). Ostalo sve HTML, a u Viewsima u MVC-u opalim foreach(item in Model) i ne treba mi ni repeater. Malo je više kuckanja, ali valjda se isplati. Mada kod nas u BiH još nema MVC ASP.NET certifikata, jedino 3.5 forme. (Logosoft Sarajevo)

Domagoj je dotjerao forme u red, HTML output BugOnLine-a nije uopće loš, ali onda čemu trud oko uređivanja, no MVC je 2008 bio u povojima.

Trenutno radim ono dobrovoljno sa kolegom Davidom, moj nogomet, tu ne pazim na HTML output, ne plaća, nema ni optimiziranja kôda. {#}

 

I krenuo sam razvijati mini forum u Web Formama 4.5, ali stao sam trenutno, možda bolje da prebacim na MVC?

Poruka je uređivana zadnji put pon 27.8.2012 12:38 (royalhero).
17 godina
offline
C# - Problemi i rješenja

Imam pitanje. Radim jednu aplikaciju koja bi trebala ovisno o prijavljenom korisniku prikazivati drugačiji naziv labela. Kako to najlakše riješiti i je li to moguće uopće napraviti?

Znači, ako se prijavi Pero da se labela prikazuje kao "Općina", a kada se prijavi Marica da labela bude "Sektor".

 

 

'Dvije su stvari beskonačne - svemir i ljudska glupost. Za svemir nisam siguran' - Einstein ----- www.cigoff.eu -----
Moj PC  
0 0 hvala 0
16 godina
odjavljen
offline
Re: C# - Problemi i rješenja

Ručno definiraj ColumnHeadere tj. nemoj ih uzimati iz tablice. DataGridView, jel?

http://nighthawk-software.blogspot.com/
17 godina
offline
Re: C# - Problemi i rješenja

Kako misliš da ih ručno definiram? Misliš da ne čita ništa iz baze ili?

 

Jer da, trebao bi preko baze čitati koji je user spojen te ovisno o tome da mi ispiše takav naziv labele. 

'Dvije su stvari beskonačne - svemir i ljudska glupost. Za svemir nisam siguran' - Einstein ----- www.cigoff.eu -----
17 godina
protjeran
offline
Re: C# - Problemi i rješenja


šalica kave sa desne strane i omiljeni editor/IDE na ekranu koji nikad nema dovoljnu vertikalnu rezoluciju, eh, zato koristim samo Logijeve miševe sa hyperscroll fičurima, to ti funckionira, na način da stisneš kotačić, zavrtiš fa i on se inercijski vrti i u trenutku je na 1876 ili nekoj drugoj liniji koda. 

Koristi thumbnail scroller u IDE-u ;-). Na žalost opet ne postoji u VS2012. Morat ću ponovno tražiti plugin :-((

Programko http://programko.bloger.hr
16 godina
odjavljen
offline
Re: C# - Problemi i rješenja

dataGridView1.DataSource = dataTable_tablica;

 

switch (user_name)

{

     case "Pero":

          dataGridView1.Columns[1].HeaderText = "Općina";

          dataGridView1.Columns[2].HeaderText = "Neki drugi column";

          break;

     case "Štefica":

          dataGridView1.Columns[1].HeaderText = "Sektor";

          dataGridView1.Columns[2].HeaderText = "Neki drugi column";

          break;

}

http://nighthawk-software.blogspot.com/
17 godina
protjeran
offline
C# - Problemi i rješenja

Jel on to priča o lokalizaciji? O podešavanju labele ovisno o jeziku logiranog korisnima?

Programko http://programko.bloger.hr
 
0 0 hvala 0
17 godina
offline
Re: C# - Problemi i rješenja

Može li se nekako preko baze, da se tamo upiše recimo ime ekrana, labele i usera pa ovisno o tome koji je user da mu ispiše naziv labele za taj ekran za njega? Ovo je super, ali je problem kad imam više tih labela, ekrana i usera...

 

Nešto su mi spomenuli neku lokalizaciju, malo sam čitao ali nije mi baš jasno. Netko to probao koristiti?

'Dvije su stvari beskonačne - svemir i ljudska glupost. Za svemir nisam siguran' - Einstein ----- www.cigoff.eu -----
16 godina
odjavljen
offline
Re: C# - Problemi i rješenja

Pa, napravi tablicu "Nazivi stupaca" sa poljima id_stupca, naziv_1, naziv_2, naziv_3... U tablicu useri dodaj stupac "zadani_nazivi" i onda ovisno o tome koji je user logiran, uzmi odgovarajući stupac sa nazivima.

http://nighthawk-software.blogspot.com/
17 godina
protjeran
offline
Re: C# - Problemi i rješenja
Pero Dinamit kaže...

Može li se nekako preko baze, da se tamo upiše recimo ime ekrana, labele i usera pa ovisno o tome koji je user da mu ispiše naziv labele za taj ekran za njega? Ovo je super, ali je problem kad imam više tih labela, ekrana i usera...

 

Nešto su mi spomenuli neku lokalizaciju, malo sam čitao ali nije mi baš jasno. Netko to probao koristiti?

Dali imaš aplikaciju koja koristi više jezika? ako je odgovor DA onda koristi lokalizaciju. Zači napraviš resx datoteke za svaki jezik posebno. Kada se korisnik logira iz baze pročitaš koji jezik koristi. Tada thread podesiš da koristi određenu kulturu/jezik. U ovisnosti o kulturi jeziku aplikacija će čitati određeni resx file.

PS: Naravno da se lokalizacija koristi i to redovno.

Programko http://programko.bloger.hr
13 godina
neaktivan
offline
Re: C# - Problemi i rješenja
Pero Dinamit kaže...

Ovo je super, ali je problem kad imam više tih labela, ekrana i usera...

Tada se moraš baviti relacijama. Dakle, imaš još jednu tabelu sa određenim atributima kao što ti je SumOfAllFears preporučio. U nju dodaj i KorisnikID atribut koji povežeš sa primarnim ključem korisničke tabele. To ti predstavlja koji korisnik ima koje statuse.
To bi mogao vaditi ovom naredbom

SELECT [Naziv statusa] FROM [Statusi] WHERE [KorisnikID] = 1 --umjesto jedan staviš parametar @KorisnikID koji je ID logiranog korisnika.

I dalje manipulišeš kako želiš dobivenim rezultatima.

Za pristup bazi ti savjetujem da koristiš ORM alate, recimo LINQ2SQL ili Entity Framework.

17 godina
protjeran
offline
C# - Problemi i rješenja

Ako se radi o varijablama koje se mjenjaju, a vežu se za pojedinog korisnika, postoji dio .net frameworka koji se zove Personalization and User Profiles.  

Programko http://programko.bloger.hr
 
0 0 hvala 1
17 godina
offline
Re: C# - Problemi i rješenja

Hvala svima! 

Isprobam i proučim malo ovo Personalization and User Profiles, nisam čuo za to.

Ali da, radi se o varijablama koje se mijanjaju, a vežu se određenog usera.

'Dvije su stvari beskonačne - svemir i ljudska glupost. Za svemir nisam siguran' - Einstein ----- www.cigoff.eu -----
15 godina
neaktivan
offline
C# - Problemi i rješenja

 

Pozdrav! Evo pratim tutorial na Asp.net-u(Mvc music store).

 

Piše mi da napravim ovo

 

Now we need to add one line of code to tell Entity Framework about that SampleData class. Double-click on the Global.asax file in the root of the project to open it and add the following line to the top the Application_Start method.

 

 

 

protected void Application_Start()

{

   System.Data.Entity.Database.SetInitializer(

   new MvcMusicStore.Models.SampleData());

   AreaRegistration.RegisterAllAreas();

   RegisterGlobalFilters(GlobalFilters.Filters);

   RegisterRoutes(RouteTable.Routes);

 }

 

 

Al' ja dobivam ovaj error,neznam kako da ga rješim.Neznam da li trebam neku referencu ili šta.

 

The name 'RegisterGlobalFilters' does not exist in the current context

The name 'RegisterRoutes' does not exist in the current context

 

-Hvala

 

Programer,web developer
Poruka je uređivana zadnji put pet 31.8.2012 13:17 (Wedran Dev).
 
0 0 hvala 0
17 godina
offline
Re: C# - Problemi i rješenja

Možda trebaš nešto "inkludat" u projekt... tipa #include Register_bla_bla. Iako je moguće da nisi i referencu stavio.

'Dvije su stvari beskonačne - svemir i ljudska glupost. Za svemir nisam siguran' - Einstein ----- www.cigoff.eu -----
13 godina
neaktivan
offline
Re: C# - Problemi i rješenja

Da li imaš te dvije metode u Global.asax-u?

Jedna registruje filtere ruta, a druga rute.

 

Daj cijeli Global.asax ovamo.

15 godina
neaktivan
offline
C# - Problemi i rješenja

Ovako izgleda:

 

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.Http;

using System.Web.Mvc;

using System.Web.Optimization;

using System.Web.Routing;

 

namespace MvcMusicStore

{

   // Note: For instructions on enabling IIS6 or IIS7 classic mode, 

   // visit http://go.microsoft.com/?LinkId=9394801

 

   public class MvcApplication : System.Web.HttpApplication

   {

     protected void Application_Start()

     {

       System.Data.Entity.Database.SetInitializer(

         new MvcMusicStore.Models.SampleData());

       AreaRegistration.RegisterAllAreas();

       RegisterGlobalFilters(GlobalFilters.Filters);

       RegisterRoutes(RouteTable.Routes);

 

       WebApiConfig.Register(GlobalConfiguration.Configuration);

       FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);

       RouteConfig.RegisterRoutes(RouteTable.Routes);

       BundleConfig.RegisterBundles(BundleTable.Bundles);

     }

     }

   }

Programer,web developer
 
0 0 hvala 0
13 godina
neaktivan
offline
Re: C# - Problemi i rješenja

Da li u projektu imaš App_Start i u njemu RouteConfig.cs i FilterConfig.cs?

15 godina
neaktivan
offline
Re: C# - Problemi i rješenja

da imam

Programer,web developer
Nova poruka
E-mail:
Lozinka:
 
vrh stranice