contramundum, Библиотеки содержат классы. А в классах можно реализовывать все необходимые свойства, методы и функции для решения поставленных задач. К примеру у меня есть класс описывающий фактуру. Он находится вместе с другими классами в библиотеке классов. Я подключаю эту библиотеку к проекту и из него вызываю методы, функции и свойства, которые нужны. Вот пример класса на C#, разницы в принципе ни какой, только синтаксис другой.
| Код | using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Text; using System.ComponentModel;
namespace HuisWerkBl { class Factuur : INotifyPropertyChanged { #region Properties
private string _factuurnr; public string Factuurnr { get { return _factuurnr; } set { _factuurnr = value; } }
private DateTime _datum; public DateTime Datum { get { return _datum; } set { if (!value.Equals(_datum)) { _datum = value; if (PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs("datum")); } } } }
private string _klantnaam; public string Klantnaam { get { return _klantnaam; } set { if (!value.Equals(_klantnaam)) { _klantnaam = value; if (PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs("klantnaam")); } } } }
private string _klantadres; public string Klantadres { get { return _klantadres; } set { if (!value.Equals(_klantadres)) { _klantadres = value; if (PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs("klantadres")); } } } }
private string _klantpostnr; public string Klantpostnr { get { return _klantpostnr; } set { if (!value.Equals(_klantpostnr)) { _klantpostnr = value; if (PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs("klantpostnr")); } } } }
private string _klantgemeente; public string Klantgemeente { get { return _klantgemeente; } set { if (!value.Equals(_klantgemeente)) { _klantgemeente = value; if (PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs("klantgemeentes")); } } } }
private string _btw; public string Btw { get { return _btw; } set { if (!value.Equals(_btw)) { _btw = value; if (PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs("btw")); } } } }
#endregion
#region INotifyPropertyChanged Members
public event PropertyChangedEventHandler PropertyChanged;
#endregion
#region Static CRUD Methods
#region Public Methods
public static List<Factuur> GetEntityList() { List<Factuur> factuurList = new List<Factuur>();
using (SqlConnection con = new SqlConnection(Common.conStr)) { string sql = "SELECT factuurnr, datum, klantnaam, klantadres, klantpostnr, klantgemeente, btw FROM tblFactuur"; using (SqlCommand cmd = new SqlCommand(sql, con)) { cmd.CommandType = CommandType.Text; con.Open(); SqlDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection); while (rdr.Read()) { Factuur factuur = FillFactuur(rdr); factuurList.Add(factuur); } if (!rdr.IsClosed) rdr.Close(); } } return factuurList; }
public static Factuur GetEntity(string factuurnr) { Factuur factuur = null;
using (SqlConnection con = new SqlConnection(Common.conStr)) { string proc = "pr_Factuur"; using (SqlCommand cmd = new SqlCommand(proc, con)) { cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@factuurnr", factuurnr); con.Open(); SqlDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection); if (rdr.HasRows) { rdr.Read(); factuur = FillFactuur(rdr); } if (!rdr.IsClosed) rdr.Close(); } } return factuur; }
public static Factuur SaveEntity(Factuur factuur) { if (factuur.Factuurnr != null) return UpdateEntity(factuur); else return AddEntity(factuur); }
public static void DeleteEntity(Factuur factuur) { using (SqlConnection con = new SqlConnection(Common.conStr)) { string proc = "pr_Factuur_Delete"; using (SqlCommand cmd = new SqlCommand(proc, con)) { cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@factuurnr", factuur.Factuurnr); con.Open(); cmd.ExecuteNonQuery(); } } }
#endregion
#region Private Methods
private static Factuur FillFactuur(SqlDataReader rdr) { Factuur factuur = new Factuur(); factuur.Factuurnr = rdr["factuurnr"].ToString(); factuur.Datum = Convert.ToDateTime(rdr["datum"]); factuur.Klantnaam = rdr["klantnaam"].ToString(); factuur.Klantadres = rdr["klantadres"].ToString(); factuur.Klantpostnr = rdr["klantpostnr"].ToString(); factuur.Klantgemeente = rdr["klantgemeente"].ToString(); factuur.Btw = rdr["btw"].ToString(); return factuur; }
private static Factuur UpdateEntity(Factuur factuur) { using (SqlConnection con = new SqlConnection(Common.conStr)) { string proc = "pr_Factuur_Update"; using (SqlCommand cmd = new SqlCommand(proc, con)) { cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@factuurnr", factuur.Factuurnr); cmd.Parameters.AddWithValue("@datum", factuur.Datum); cmd.Parameters.AddWithValue("@klantnaam", factuur.Klantnaam); cmd.Parameters.AddWithValue("@klantadres", factuur.Klantadres); cmd.Parameters.AddWithValue("@klantpostnr", factuur.Klantpostnr); cmd.Parameters.AddWithValue("@klantgemeente", factuur.Klantgemeente); cmd.Parameters.AddWithValue("@btw", factuur.Btw); con.Open(); cmd.ExecuteNonQuery(); } } factuur = GetEntity(factuur.Factuurnr); return factuur; } // доработать параметры private static Factuur AddEntity(Factuur factuur) { string factuurnr = ""; using (SqlConnection con = new SqlConnection(Common.conStr)) { string proc = "pr_Factuur_Add"; using (SqlCommand cmd = new SqlCommand(proc, con)) { cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@datum", factuur.Datum); cmd.Parameters.AddWithValue("@klantnaam", factuur.Klantnaam); cmd.Parameters.AddWithValue("@klantadres", factuur.Klantadres); cmd.Parameters.AddWithValue("@klantpostnr", factuur.Klantpostnr); cmd.Parameters.AddWithValue("@klantgemeente", factuur.Klantgemeente); cmd.Parameters.AddWithValue("@btw", factuur.Btw); cmd.Parameters.Add(new SqlParameter("@factuurnr", SqlDbType.NChar)); cmd.Parameters["@factuurnr"].Direction = ParameterDirection.Output; con.Open(); cmd.ExecuteNonQuery(); factuurnr = cmd.Parameters["@factuurnr"].Value.ToString(); } factuur = GetEntity(factuurnr); } return factuur; }
private static object GetValue(object value) { if (value == null) return DBNull.Value; else return value; }
#endregion
#endregion } }
|
|