JsFW20를 이용한 DB Select.
* JsFW20을 설치 후 가능함.
1. 프로젝트를 생성한다.
2. 프로젝트 참조경로에 JsFW20 설치된 폴더를 추가해준다.
기본 : 프로그램폴더\JsFW20Dll\
3. 응용프로그램설정( app.Config )파일 추가
4. DB연결에 필요한 App.Config를 추가 후
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="Server" value="서버명"/>
<add key="DataBase" value="데이타베이스명"/>
<add key="Uid" value="아이디"/>
<add key="Pwd" value="패스워드"/>
</appSettings>
</configuration>
으로 설정해준다.
5. JsFW.ADONET에 DataBase_Business 객체를 재정의 함.
public class Table_1 : JsFW.ADONET.DataBase_Business
{
public override DataSet List(JsFW.BasicObjects.IUniDataParameter iDataPrms)
{
return ExcuteDataSet("Select * From Table_1", CommandType.Text, new SqlParameter[0]);
}
}
* 현재 DataBaseBusiness 에 List, Insert, Update, Delete 가 public으로 가상 메서드로 잡혀있다.
이를 재정의 해서 업무비지니스에 맞춰 재정의하거나 Execute**** 메서드등을 이용해서 메서드를 구성하면 된다.
도움말 chm 참조!!
결과 스샷!
간단한 Select 코드 전문.
Table_1 db = new Table_1();
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
dataGridView1.DataSource = db.List(null);
dataGridView1.DataMember = "table";
}
}
public class Table_1 : JsFW.ADONET.DataBase_Business
{
public override DataSet List(JsFW.BasicObjects.IUniDataParameter iDataPrms)
{
return ExcuteDataSet("Select * From Table_1", CommandType.Text, new SqlParameter[0]);
}
}
'# 9) My Program(.NET) > JsFW20' 카테고리의 다른 글
JsFW20.XML 을 이용한 예제 2 (0) | 2010.05.24 |
---|---|
JsFW20.XML을 이용한 예제. (0) | 2010.05.24 |
JsFW20 설치하기... (0) | 2010.05.22 |
NetWork 2010 0511 (0) | 2010.05.12 |
WinControls 2010 0402 (0) | 2010.04.03 |
JsFW20 설치하기...
완벽할수 없으니 뭐... 재끼고...
설치는 간단하다.
설치 파일을 클릭하면... 설치된다. ( 당연한거쥐? )
설치하면 ...
위와 같이 dll들이 설치가 된다!! 준비는 끝!!
'# 9) My Program(.NET) > JsFW20' 카테고리의 다른 글
JsFW20.XML을 이용한 예제. (0) | 2010.05.24 |
---|---|
JsFW20를 이용한 DB Select. (0) | 2010.05.22 |
NetWork 2010 0511 (0) | 2010.05.12 |
WinControls 2010 0402 (0) | 2010.04.03 |
XML 2010 0402 (2) | 2010.04.03 |
나는 펜으로 종이에 글을 쓴다. 를 프로그래밍한다묜???
프로젝트가 지루해져가서 잠깐 딴짓을 해본다.
소요 시간 : 1시간반쯤? 기록 10분...쿵..,
도구 : 종이 두장. ( 낙서가 생각하는데 도움을 준다. )
막상 글을 다 적고 보니 전공자가 아니라서 그런지 부족한게 보여도 채워넣기가 쉽지 않다.
몰라서이기도 하고, 알아야 하는것이 있음에도 그걸 익힐 시간이 만만치 않기에... (핑계~ )
제목처럼 글하나를 프로그래밍 해본다.( 조금은 복잡하게... 말이다. )
물론 저 간단한 문장을 쉽다면 아주 아주 쉽게, 어렵다면 어렵게... 상황에 맞춰서 코딩을 하겠지만...
코딩전 객체설계단계를 연습삼아.. 만들어보자! 우선은 글에서 나타난 객체들을 구상한다.
(나) 라는 주체가 있고 (종이)와 (글)을 쓰는 (펜) 이 존재하게 된다.
음. 네가지의 객체가 서로 관련되어 있다. 이를 간단한 구상도( 나만에 방법 )를 그려보자.
음 위에 종이와 펜도 구체화 해보자.
간단하다. 중간에 대리자나 객체 또는 인터페이스... 등등.. 선택하고 싶은걸 넣으면 된다.
코딩에 들어가야겠지?
굳이 대리자를 써본이유는
public void Write(string wrMsg)
{
_wPen.Data = wrMsg;
//_wPaper.Get(_wPen.Draw); // 기본사용..
_wPaper.Get(delegate(Graphics g) {
g.DrawString(wrMsg, new Font("궁서체", 20f), Brushes.Red, new PointF(10, 100));
});
}
이걸 기록하기 위해서다.
( 반드시 제공되는 소스대로가 아닌 취향에 맞게 변경할수도 있다는 것을 제공해주기 위한 배려?...
: 이걸 제공함으로 원치 않은 동작이 나타날수 있으니.. 설계시 설계자의 판단에 맞겨야겠지? )
{
* 국어인 한글을 단어 찾아보면서 써야되겠네...
반드시 [부사] 틀림없이 꼭.
반듯이 [부사] 찾아보기: 반듯하다
}
아래는 소스 전문이다.
폼에 버튼 하나 추가되있고 버튼에 Click이벤트를 추가한것 뿐이다.
위 구성도가 있으니... 주석은 패쑤!
public partial class Form1 : Form
{
Writer me = null;
Paper paper = null;
Pen pen = null;
public Form1()
{
InitializeComponent();
pen = new Pen();
paper = new Paper(this);
pen.Penfont = this.Font;
me = new Writer( pen, paper );
}
protected override void OnFormClosed(FormClosedEventArgs e)
{
base.OnFormClosed(e);
pen = null;
paper.Dispose();
paper = null;
me = null;
}
private void button1_Click(object sender, EventArgs e)
{
me.Write("가나다라");
}
}
public class Writer
{
Pen _wPen = null;
Paper _wPaper = null;
public Writer(Pen p1, Paper p2)
{
_wPaper = p2;
_wPen = p1;
}
public void Write(string wrMsg)
{
_wPen.Data = wrMsg;
_wPaper.Get(_wPen.Draw);
}
}
public delegate void Delegate_Draw(Graphics paper);
public class Paper : IDisposable
{
Graphics _g = null;
public Paper( Control ctrl)
{
_g = Graphics.FromHwnd( ctrl.Handle );
}
public void Get(Delegate_Draw toolDraw)
{
toolDraw(_g);
}
#region IDisposable 멤버
public void Dispose()
{
_g.Dispose();
_g = null;
}
#endregion
}
public class Pen
{
string _data = string.Empty;
public string Data
{
get { return _data; }
set { _data = value; }
}
Font _penfont;
public Font Penfont
{
get { return _penfont; }
set { _penfont = value; }
}
public void Draw(Graphics g)
{
g.DrawString(_data, _penfont, Brushes.Black, new PointF());
}
}
'# 1) 프로그래밍' 카테고리의 다른 글
이름을 잘짓자! 한글로 코딩을... (0) | 2010.05.26 |
---|---|
변수명, 메서드명... 이름짓기어렵다!! (0) | 2010.05.26 |
TCP.IP 초기 구상 모델... (0) | 2010.05.09 |
미스테리... vs2008 오류.. (2) | 2010.04.19 |
컨트롤 타원 회전시키기... (0) | 2010.04.08 |