2016-05-31 1 views
0

현재 사용자가 마우스를 사용하여 다각형을 그릴 수있는 그리기 창을 포함하는 WPF 응용 프로그램 (C#, 프리즘 프레임 워크 사용)에서 작업 중입니다.WPF 응용 프로그램의 다각형 객체를 데이터베이스에 저장하고 있습니까?

하지만이 그림을 어떻게 영구적으로 만들 수 있는지 궁금합니다.

그 그림을 포함 할 수있는 가장 좋은 객체는 다각형 객체입니다.

또한 Polygons에 색상 등의 특정 속성이 있어야합니다 (필요한 경우 자체 Polygon 상속 된 객체를 정의하여이 작업을 수행 할 수 있습니다).

하지만 나는 이런 종류의 정보를 데이터베이스에서 지속적으로 만들 수있는 방법이 궁금합니다. (나는 현재 SQLite를 사용하고있다).

데이터베이스에 Polygon의 채우기 색 등의 정보를 포함하여 Polygon 정보를 저장할 수 있기를 원합니다.

저는 인터넷 검색을 해왔지만 유용한 정보를 찾지 못했습니다. 누군가가 올바른 방향으로 나를 가리킬 수 있을까요?

도움 주셔서 감사합니다.

+0

:

public static class PolygonEx { public static PolygonDbFormat AsDbFormat(this Polygon polygon) { return new PolygonDbFormat { Name = polygon.Name, Fill = polygon.Fill }; } } 

그런 다음 데이터베이스에이 방법을 Polygon 클래스를 저장할 수 있습니다

public class PolygonDbFormat // the class which contains the information you want to store { public string Name { get; set; } public Brush Fill { get; set; } } 

이 확장 방법을 정의 나는 거기에 대한 준비된 해결책과 튜토리얼이 있다고 생각하지 않는다. 이 문제가 주위에 거짓말. 당신은 데이터베이스 구조와 당신이 만드는 테이블을 생각해야합니다 ... ORM을 사용하십시오 – Alex

답변

0

저장하고 싶은 정보를 저장하려면 모델 클래스를 만들어야합니다.

Entity Framework을 사용하는 것이 가장 좋은 해결책 일 것 같아서 모델 클래스를 만드는 것에 신경 쓸 필요가 없으므로 기존 클래스를 사용할 수 있습니다. 하지만, 귀하의 경우 테이블에 많은 불필요한 정보가 저장 될 수 있습니다.


당신이 당신의 자신의 모델 클래스를 작성하는 경우, 당신은 Polygon로, .NET 종류 등을 도우미 확장 메서드를 추가 할 수 있습니다. 이 방법을 사용하면 데이터베이스에 저장할 수있는 .net 클래스에서 저장 가능한 모델 클래스를 생성 할 수 있습니다. 예를 들어

:
모델 클래스 :

var dbFormat = yourPolygon.AsDbFormat(); 
_yourDbManager.AddEntry(dbFormat); // your implementation to store the data in database 
관련 문제