Reputation: 2570
I have one entity class as
public class someclass
{
public string property1 {get; set;}
public string property2 {get; set;}
public string property3 {get; set;}
}
and using sqlite connection class obj DB I am creating the table
Db.CreateTableAsync<someclass>().GetAwaiter().GetResult();
What I want to achieve is, I don't want sqlite to create column in the table for property3
. Is there any way to achieve this?
I am using SQLiteAsync library for windows store apps.
Upvotes: 35
Views: 21930
Reputation: 168
You can add ignore attribute as in this code:
[ObservableProperty][property: PrimaryKey, AutoIncrement, Column("ara_id")] public int ara_id;
[ObservableProperty][property: Ignore] public StareAratare ara_stare;
Upvotes: 0
Reputation: 3296
As chue x has said previously, you should use the Ignore attribute, but I figured I would give a bit more information as to what all the attributes do since it seems like some information that would be useful in this thread.
Here's a quick summary of the types of attributes available for use (for those of you that don't like reading and just want to know quickly):
PrimaryKey - This property is the primary key of the table. Only single-column primary keys are supported.
AutoIncrement - This property is automatically generated by the database upon insert.
Indexed - This property should have an index created for it.
MaxLength - If this property is a String then MaxLength is used to specify the varchar max size. The default max length is 140.
Ignore - This property will not be in the table.
If you want to know more, check out my more in depth blog post on these attributes:
http://lukealderton.com/blog/posts/2016/august/sqlite-attributes-and-what-they-do.aspx
Upvotes: 12
Reputation: 18823
You can use the Ignore
attribute:
public class someclass
{
public string property1 { get; set; }
public string property2 { get; set; }
[Ignore]
public string property3 { get; set; }
}
Upvotes: 91