Open petesmc opened 12 years ago
I can't find this either???
sqlite-net doesn't support this.
What are you trying to do?
class Person {
[PrimaryKey, AutoIncrement]
public int Id { get; set; }
public string Name { get; set; }
}
class Pet {
[PrimaryKey, AutoIncrement]
public int Id { get; set; }
public int OwnerId { get; set; } // <-- This is the relationship
public string Name { get; set; }
}
What do you want to accomplish that this code doesn't already accomplish?
Something like the following:
class Person {
int id;
int Name;
List<Address> Addresses;
}
class Address {
int id;
string Street;
string Country;
}
I need something like that too. Not nested classes, but Lists of strings.
class DictionaryEntry {
[PrimaryKey, AutoIncrement]
int ID { get; set; }
string Word { get; set; }
string Morphology { get; set; }
string Etymology { get; set; }
List<string> Definitions { get; set; }
List<string> Synonyms { get; set; }
List<string> Antonyms { get; set; }
}
Is it possible with sqlite-net?
I think that is very critical problem in sqlite-net. I think that shoud be like in BLToolKit.
[TableName("AccountOwner")]
class AccountOwner
{
[PrimaryKey, Identity]
public int ID;
public string Name;
public string Second_Name;
public string Description;
}
[TableName("MyAccount")]
class MyAccount
{
[PrimaryKey, Identity]
public int ID;
[MapField("NAME")]
public string Name;
public string Code;
public string Description;
[Association(ThisKey = "ID", OtherKey = "ID", CanBeNull = false)]
public AccountTypes AccountTypes;
public int OWNER;
public int Type;
[Association(ThisKey = "ID", OtherKey = "ID", CanBeNull = false)]
public AccountOwner AccountOwner;
}
[TableName("AccountTypes")]
class AccountTypes
{
[PrimaryKey, Identity] public int ID;
public string Name;
public string Description;
}
Agreed. Relationships between data objects using composition would be really useful.
@praeclarum @petesmc Anything come of this yet?
I would think anything that considers itself an ORM would be able to handle object relationships, as it is for mapping your objects to an underlying relational database. What this seems to provide is a one to one mapping of a table to an object, and you have to use FK's to link data instead of object references, be that a property containing a single POCO reference or a property containing a collection of POCOs.
Don't get me wrong SQLite-net is useful and servers a purpose but seems a little light for an ORM it would be nice if it had support for object reference relationships and not just FK's that we have to then still join/link in C# after we get the data.
8 months and still nothing...
The beauty of open source, everyone is welcome to add functionality.
@dbeattie71 thats a crap and copout answer and you know. This is an open issue that @praeclarum has responded to. If he didn't want to address it himself he should close the issue. If you can't contribute constructively to the thread then you really shouldn't post anything.
Maybe, I'm not so sure. Like most devs I'm sure @praeclarum is busy. Maybe he didn't close it because of the suggestions and activity attached to the request. If there's a feature someone wants, take a stab at it it's a great way to contribute and learn. I apologize if you found my comment non-constructive.
I tried to implement this feature. My pull request. And now i have few commits with implementation of autosetting primary keys to child objects.
How can relationships between tables be defined?