2013-03-26 2 views
0

Windows 런타임 구성 요소에서 sqlite를 사용하려고합니다. 하지만 nuget sqlite-net 패키지를 추가 할 때 약 219 개의 오류가 발생합니다. couldnt는 그것을 어디에서든지 이해한다. 비슷한 문제가 있습니까?Windows 런타임 구성 요소에서 sqlite

마침내 store app 클래스 라이브러리를 사용하여 sqlite를 사용하고 내 Windows 런타임 구성 요소에서이 메소드를 호출했습니다. 스토어 앱에서

방법 승리 런타임 구성 요소의 메소드를 호출

public async Task<IEnumerable<TaskGroup> > GetTaskGroup() 
    { 
     return await conn.QueryAsync<TaskGroup>("select * from TaskGroup"); 

    } 

public IAsyncOperation<IEnumerable<TaskGroup>> GetAllTaskGroup() 
    { 
     return m_objDAL.GetTaskGroup().AsAsyncOperation(); 

    } 

나는 개인이로 해결로 스토어 앱 방법을 다음과 같은 오류

Error 1 Method 'Tasker.BAL.TaskManager.GetAllTaskGroup()' has a parameter of type 'Windows.Foundation.IAsyncOperation<System.Collections.Generic.IEnumerable<SQLLite.Models.TaskGroup>>' in its signature. Although this generic type is not a valid Windows Runtime type, the type or its generic parameters implement interfaces that are valid Windows Runtime types. Consider changing the type 'SQLLite.Models.TaskGroup' in the method signature. It is not a valid Windows Runtime parameter type. 

를 얻을 이 블로그마다 http://rarcher.azurewebsites.net/Post/PostContent/23

하지만 개인적인 문제이므로 액세스 문제가 있기 때문에이 문제는 해결할 수 없습니다.

모든 솔루션은?

답변

2

이 오류가 무엇인지 모르겠지만 Tools> Extensions를 통해 SQLite for Windows 런타임을 먼저 설치 했습니까? sqlite-net은 LINQ 쿼리 라이브러리입니다.

0

Windows 런타임 구성 요소는 외부에서 노출되는 유형에 대해 many limitations을가집니다.

sqlite-net을 포함하면 모든 유형이 공용으로 선언되고 구성 요소에 의해 효과적으로 노출됩니다. 이것은보고있는 오류에 대한 공명입니다.

당신은 두 가지 중 하나가 문제를 해결하기 위해 수행 할 수

  • 당신은 내부에 SQLite.csSQLiteAsync.cs 파일에 모든 public 수정을 변경할 수 있습니다. 이렇게하면 매번 (몇 분의 작업으로) 프로세스를 반복해야하기 때문에 패키지를 최신 버전으로 업데이트하는 것이 더 어려워집니다.
  • 별도의 Windows Store 앱 클래스 라이브러리 (참조 번호 sqlite-net)를 만들고 Windows 런타임 구성 요소에서이 클래스 라이브러리를 참조 할 수 있습니다. 이 방법으로 sqlite-net의 클래스는 구성 요소에 의해 자동으로 노출되지 않습니다.
+0

두 번째 방법을 사용했지만 여전히 오류가 발생했습니다. –

+0

@PrakashR - 오류가 클래스 중 하나 인 것으로 보입니다. WRC에 대한 클래스를 정의하는 방법을 보여주기 때문에이 링크를 살펴보십시오. http://msdn.microsoft.com/en-us/library/windows/apps/hh779077.aspx 바라건대 해결할 부분이 있습니다. 너의 문제. –

+0

@PrakashR 오류 메시지에 명시된 바와 같이 클래스 'SQLLite.Models.TaskGroup'에 문제가 있습니다. 공용 인터페이스가 Windows 런타임 구성 요소 요구 사항을 준수하지 않습니다. 아마도 그 수업에 공개 필드가 있을까요? 추가 지원이 필요한 경우 모든 공개 회원 목록을 게시하십시오. –

관련 문제