Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 31 odgovor
  • 9.447 pregleda

Najnovija ↓

Re: izrada .net aplikacija sa bazom 14.07.2009. u 14:04 · pre 210 meseci #22
Svi ti uporedni testovi su bespredmetni, za pocetak da imas bulk operaciju nad 10,000 redova neces koristiti nista od toga, zar ne ;)

Poenta ORM alata je da ti olaksa zivot i izradu i odrzavanje koda, ne brzina i ne da li ce dobrila da saceka 2ms duze za insert reda na kome radi. i Nhib i LLBL i EF, do neke mere i Linq2SQL rade svoj posao. Ja licno ne koristim vise ni NHib ni LLBL nakon sto je EF stupio na scenu, ako nista drugo ukljucen je u .NET :)
Potpis
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić
Re: izrada .net aplikacija sa bazom 14.07.2009. u 15:02 · pre 210 meseci #23
Ne naravno, ovo je više informativno.
Meni je NH odličan za portovanje nekih java solucija, koje su radjene u Hibernate-u uz korišćenje UML-a.
Re: izrada .net aplikacija sa bazom 15.07.2009. u 19:39 · pre 210 meseci #24
Ovo je moja store procedura
Code:
ALTER PROCEDURE [dbo].[sp_Klijenti_Insert]
(
    @Mib int, 
    @Ime nvarchar(30),
    @Prezime nvarchar(30),
    @Adresa nvarchar(30),
    @Broj_Telefona nvarchar(30),
    @Grad nvarchar(30),
    @Drzava nvarchar(30),
    @Datum_iznajmljivanja datetime,
    @Datum_vracanja datetime,
    @ID_vozila int
)
AS

BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    SET NOCOUNT ON;
     
    -- Sprecava dupliranje unosa po polju ID_vozilo
    if exists (select * from Klijenti where ID_vozila = @ID_vozila)
     select -1 
    else  
      -- Insert statements for procedure here
    INSERT INTO Klijenti (Mib,Ime,Prezime,Adresa,Broj_Telefona,Grad,Drzava,Datum_iznajmljivanja,Datum_vracanja,ID_vozila)
    VALUES (@Mib,@Ime,@Prezime,@Adresa,@Broj_Telefona,@Grad,@Drzava,@Datum_iznajmljivanja,@Datum_vracanja,@ID_vozila)
END

A ovo je deo koda koji to izvrsava
Code:

// BLL
public void save_client(int Mib, string Ime, string Prezime, string Adresa,string Broj_telefona, string Grad, string Drzava,
            DateTime DatumIznajmljivanja, DateTime DatumVracanja, int IdVozila)
        {
            //declare a boolean variable
            Boolean passed = true;

            /* assgning the boolean results from the check_rules function to 
            * the variable bopassed, that means the data is valid*/
            passed = check_rules(Mib,  Ime, Prezime, Adresa, Broj_telefona, Grad, Drzava,
             DatumIznajmljivanja, DatumVracanja, IdVozila);

            //creating an object of a class and instatiating it
            DAL.DAL obj = new DAL.DAL();
         
            try
            {
                if (passed == true) // If the rules pass then
                {
                    //// Ovaj deo se pravilno izvrsi cak i kad se unese duplikat i prikaze poruku "Client added", ali u tabeli se ne prikazuje posto je unesen duplikat.
                    obj.insert_client(Mib,Ime,Prezime,Adresa,Broj_telefona,Grad,Drzava,
                         DatumIznajmljivanja, DatumVracanja, Convert.ToInt32(IdVozila));
                        MessageBox.Show("Client added");                 
                }
                else //else 
                {
                    //the rules are not passed send the user a notification that something 
                    //is wrong
                     MessageBox.Show("ID zauzet");
                }
            }
            catch (SqlException)
            {
                throw;
            }
             
        }

Moje pitanje je kako da korisniku dam do znanja da kad se ovaj deo procedure izvrsi
Code:
 
//Sprecava dupliranje unosa po polju ID_vozilo
    if exists (select * from Klijenti where ID_vozila = @ID_vozila)
     select -1 
da se prikaze poruka ID je vec zauzet. A ako ne onda prikaze "client added".

Dali je uopste proveru bolje raditi u BLL-u ili u proceduri?
Potpis
http://i.imgur.com/V3feW.jpg
http://on.wsj.com/H9yjz6 -- India Graduates Millions, but Too Few Are Fit to Hire
Re: izrada .net aplikacija sa bazom 15.07.2009. u 19:53 · pre 210 meseci #25
ExecuteNonQuery() vraća broj unetih redova, ako je 0, izbaci poruku da ništa
nije uneto, ako je 1, izbaci poruku da je unet.
To radiš na BLL.
Nije mi jasno šta ti je u tabeli PK, a šta FK

Ovaj deo:
if exists (select * from Klijenti where ID_vozila = @ID_vozila)
select -1

je nepotreban.
Ili radi sa složenim PK ili stavi unique key constraint nad ID_VOZILA
Potpis
77 77 77 2E 65 73 6E 69 70 73 2E 63 6F 6D
Re: izrada .net aplikacija sa bazom 16.07.2009. u 01:23 · pre 210 meseci #27
Da li ti uopšte razumeš šta su PL, BLL, DAL, etc?
Džabe ti kodiraš sve ako ne razumeš šta kodiraš.
Ne možeš ti u BLL da pišeš nešto tipa MessageBox.Show("some text");
Nije ti to PL. Tamo se ispisuju poruke, radi sa forama i sl.
U BLL treba samo da kažeš Save(). End of story!
Onda BLL pozove DAL i metodu SaveCustomer kojoj prosledi parametre.
...
Potpis
77 77 77 2E 65 73 6E 69 70 73 2E 63 6F 6D
Re: izrada .net aplikacija sa bazom 16.07.2009. u 08:44 · pre 210 meseci
izmenjeno 2 puta, poslednji put AMD guy 16.07.2009. u 12:00
  1. AMD guy16.07.2009. u 12:00zapis iz teksta poruke
  2. AMD guy16.07.2009. u 09:00zapis iz teksta poruke
#28
Pa evo, ima otprilike mesec dana kako radim sa time. (ne na ovom zadatku, nego 3-tier aplikacijama)
Jel mozes neku knjigu na tu temu da mi preporucis?

EDIT: Tek sad sam video ovo http://www.elitesecurity.org/t364179-0#2282163
Potpis
http://i.imgur.com/V3feW.jpg
http://on.wsj.com/H9yjz6 -- India Graduates Millions, but Too Few Are Fit to Hire
Re: izrada .net aplikacija sa bazom 16.07.2009. u 16:32 · pre 210 meseci #31
Da, vrijedi ... Nisam je lično čitao, ali je mnogi preporučavaju kao dobru (lakšu?) zamjenu za orginalnu GoF knjigu. Ipak, tu se objašnjavaju samo "generalni" design pattern-i, ono što ti želiš (rad sa bazom podataka, višeslojne arhitekture itd...) je objašnjeno u prethodnoj knjizi.
Potpis
My programs don’t have bugs, they just develop random features.
Re: izrada .net aplikacija sa bazom 16.07.2009. u 16:41 · pre 210 meseci
izmenjeno 1 put, poslednji put AMD guy 17.07.2009. u 18:37
  1. AMD guy17.07.2009. u 18:37zapis iz teksta poruke
#32
Citat:
Sapphire: Probaj Patterns of Enterprise Application Architecture od Martina Fowler-a. Možda čak i prije toga da počneš generalno sa design pattern-ima ...


Ta knjiga je iz 2003 godine. Jel postoji novije izdanje?
Nije bas da nista ne znam, samo smo malo ucili o n-tier aplikacijama.

[EDIT] jel ima ta knjiga da se kupi u nasim knjizarama, nije vazno dali je na eng ili nasem?
Potpis
http://i.imgur.com/V3feW.jpg
http://on.wsj.com/H9yjz6 -- India Graduates Millions, but Too Few Are Fit to Hire
Odgovori
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme