![](/img/trans.png)
[英]How can data be shared between a Windows store app and a Background task?
[英]How can I share code between a Shared Universal project and a Background Task?
現在,我有一個通用項目,其中主要包含業務邏輯和模型。 我可以從Windows Phone項目和Windows項目中訪問這些文件。
但是,當我添加一個后台任務時,我也想訪問該共享邏輯,因為否則我將不得不在后台任務中復制大部分代碼。
我知道您可以執行“添加為鏈接”,但這會導致如下編譯錯誤:
方法“ MyProject.Model.Playlist.Tracks.get()”在其簽名中具有類型為“ System.Collections.ObjectModel.ObservableCollection”的參數。 盡管此通用類型不是有效的Windows運行時類型,但是該類型或其通用參數實現的接口是有效的Windows運行時類型。 考慮將方法簽名中的“ System.Collections.ObjectModel.ObservableCollection”類型改為以下類型之一:“ System.Collections.Generic.IList,System.Collections.Generic.IReadOnlyList,System.Collections.Generic.IEnumerable” 。
通過在需要的函數/類上使用internal
關鍵字,或將我的代碼轉換為建議的類型,可以解決這些問題。
不幸的是,我認為這是不可能的,因為SQLiteNet-Extensions使用屬性確定其關系,並且僅支持某些類型( List
, array
和我添加的ObservableCollection
)。
因此,我正在尋找一種在Shared項目和BackgroundTask之間共享代碼的方法,而不會出現“有效的Windows運行時類型”錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.