좀 늦은감 있지만 난 24 미드가 참 좋다.
24시간을 한시간씩 분할해서 한편씩 만들어낸 아이디어도 높이 살만하다 ^^
한주 한주 건담 더블오와 함께 미드 24시 시즌 7에 빠져 보아요 ^^
public void Read2()
{
}
private void Button_Click(object sender, RoutedEventArgs e)
{
}
private void Input_Click(object sender, RoutedEventArgs e)
{
}
}
}
위의 기본 코드는 아래의 화면처름 나오게 됩니다.
이제 작업을 시작해 볼께요.
서비스 참조 추가를 통해서 웹서비스를 게시한 주소를 추가한 다음에 참조를 추가 합니다.
client.AddValueCompleted += new EventHandler<basicBoard01.boardService.AddValueCompletedEventArgs>(client_AddValueCompleted);
client.AddValueAsync(TextValue.Text);
}
위의 코드의 내용은 웹 서비스의 Client 객체를 생성하고 웹 서비스에서 값을 추가 하기 위해서 AddValue(string value) 에 해당하는 메소드 AddValueAsync()를 호출해 줍니다.
이때 완료된 후 콜백 형태로 받기 위해서 AddValueCompleted() 라는 이벤트 함수를 하나 추가 합니다.
위와 같이 값을 DB에 기록한 후 완료가 되면 Read2()를 호출해서 값을 ListBox에 뿌리도록 했습니다.
client.GetListCompleted += new EventHandler<basicBoard01.boardService.GetListCompletedEventArgs>(client_GetListCompleted);
client.GetListAsync();
}
마무리...
조금 장황하게 설명을 해봤지만 역시나 좀 두서가 없네요 ^^.
우선 확인되는 부분은 웹 서비스에서 AddValue, GetList 등의 메소드를 만들어 놓고 나서
웹 서비스를 참조 추가를 해서 보게 되면 위와 같이 항상 두개의 메소드가 생성 됩니다.
GetList 인 경우를 보게 되면 리턴만 받는것이기 때문에 GetListAsync() 라는 메소드만 호출하면 됩니다.
이때 호출후 리턴되는 데이터를 받는건 GetListCompleted 라는 이벤트 함수가 담당 하게 됩니다.
AddValue 인 경우를 보게 되면 리턴도 받지만 값을 인자로 받게 되는데요 AddValueAsync(TextValue.Text) 와 같이 해당 스트링 값을 입력 할 수 있게 됩니다.
이때도 AddValueCompleted 를 통해서 결과를 확인할 수 있습니다. 에러가 났는지 정상인지를 판단할 수 있다고 보여 집니다.
잘 적지는 못했지만 실버라이트에서 웹 서비스를 통해서 바인딩 하는 부분에서는 조금 접근한듯 합니다.
조금이나마 도움이 되면 좋겠네요 ^^.
지적질, 질문질 다 환영해요 ^^
using System; namespace boardService [WebMethod] dsBoardTableAdapters.memoTableAdapter adapter = new boardService.dsBoardTableAdapters.memoTableAdapter(); adapter.Fill(table); foreach (dsBoard.memoRow row in table.Rows) return datas; [WebMethod] |
위와 같이 구성하고 localhost에 게시를 해서 하나 등록을 해 놨습니다.
이제 다음 강좌에서는 실버라이트에서 화면을 구성하고, 데이터를 연동하는 곳을 해볼께요.
위의 웹 서비스를 테스트 하고 하는 부분들은 설명이 좀 길어 질거 같아서 추가를 하지 않았습니다.
이 부분은 웹 서비스 관련 책에 많이 나오기 때문에 생략 했습니다.
실버라이트와 웹 서비스를 연동해서 DB의 값을 바인딩 하는 부분을 한번 해보고 있습니다.
블랜드나 기타 XAML에서 바인딩 하는건 사실 잘 못하겠구요 ^^
그래서 비하인드 코드에서 바인딩 하는 것을 테스트 해보았습니다.
주제 : 기본 프로젝트 생성, DB 테이블 생성