System.Exception:表没有(公共)列

时间:2016-10-04 01:56:52

标签: visual-studio sqlite xamarin.android

我使用Xamarin.Android在visual studio 2015上开发Android,我在PCL项目中遇到以下错误:

Unhandled Exception:
10-04 01:47:04.594 E/mono    ( 3322): System.Exception: Table has no (public) columns
10-04 01:47:04.594 E/mono    ( 3322):   at SQLite.Net.SQLiteConnection.CreateTable (System.Type ty, CreateFlags createFlags) [0x0002e] in <filename unknown>:0 
10-04 01:47:04.594 E/mono    ( 3322):   at SQLite.Net.Async.SQLiteAsyncConnection+<>c__DisplayClass11_0.<CreateTablesAsync>b__0 () [0x0002b] in <filename unknown>:0 

我的包装属性设置为Use Shared Runtime

我的链接器属性设置为链接Sdk and User Assemblies

我支持armx86架构,Java Mas Heap Size1G

我已经搜索过这个错误,但我找不到任何相关的错误。

SQLite尝试为此实体创建表时发生错误:

[Table("User")]
public class User : IBusinessEntity
{
    [PrimaryKey, AutoIncrement]
    public long Id { get; set; }
    public string Name { get; set; }
    public string Email { get; set; }
    public string Password { get; set; }
    public DateTime CreationDate { get; set; }
}

我正在使用SQLite.Net.Async-PCL库。

1 个答案:

答案 0 :(得分:1)

最后我明白了。

nuget包Xamarin.Android.Support.v7.AppCompat丢失了,我收到了这个随机错误。现在它已修复。

我还将链接器属性更改为None。不确定是否有必要。