суббота, 20 ноября 2010 г.

MVC модель Repository ( Тарифи )




public class TarufRepository
    {
        private DataClasses1DataContext data()
        {
            return DataProvider.DataContext();
        }


        public IQueryable<taruf> GetTarufs()
        {
            return data().taruf.OrderBy(t => t.name).Cast<taruf>();
        }


        public IQueryable<taruf> GetTarufs(taruf tarufs)
        {
            return data().taruf.Select(t => t.id == tarufs.id).Cast<taruf>();
        }


        public taruf GetTaruf(int tarufId)
        {
            return data().taruf.SingleOrDefault(t => t.id == tarufId);
        }


        public void DeleteTaruf(int tarufId)
        {
            data().taruf.DeleteOnSubmit(GetTaruf(tarufId));
            data().SubmitChanges();
        }


        public void UpdateTaruf(taruf Taruf)
        {
            taruf data1 = GetTaruf(Taruf.id);
            data1.id = Taruf.id;
            data1.name = Taruf.name;
            data1.vartist = Taruf.vartist;
            data().SubmitChanges();
        }


        public taruf CreateTaruf(string name, int vartist)
        {
            taruf tar = new taruf();
            tar.name = name;
            tar.vartist = vartist;
            data().taruf.InsertOnSubmit(tar);
            data().SubmitChanges();
            return tar;
        }


        public ObservableCollection<taruf> GetTaruf()
        {
            return new ObservableCollection<taruf>(data().taruf);
        }       


        public void DelTaruf()
        {
            var delete = from pole in data().taruf
                         select pole;


            foreach (var name in delete)
            {
                data().taruf.DeleteOnSubmit(name);
            }
            SaveTaruf();       
        }


        public string SaveTaruf()
        {
            string error = "Дані оновлені!";
            try
            {
                data().SubmitChanges();
            }
            catch (Exception ext)
            {
                error = "Помилка, ви не коректно вели дані";
            }
            return error;
        }
        public IQueryable<taruf> Search(string name)
        {
            return data().taruf.Where(o => o.name.StartsWith(name));
        }
        public object TarufName()
        {
            return from s in data().taruf
                   select s.name;
        }
        public decimal TarufNameVartist(string tar)
        {
            return (from s in data().taruf
                   where s.name==tar
                   select s.vartist).Single().Value;
        }
        public object TarufSetName(string tar)
        {
            return from s in data().taruf
                   where s.name!=tar
                   select s.name;
        }
        public int TarufSetClient(string tar)
        {
            return (from s in data().taruf
                    where s.name==tar
                    select s.id).Single();
        }
        public int TarufNameID(string tar)
        {
            return (from s in data().taruf
                    where s.name == tar
                    select s.id).Single();
        }
    }

Комментариев нет:

Отправить комментарий