我有3个这样的数据库设置,例如Parent-> Child-> Grandchild,到目前为止,我可以设法获得特定父级的子级,但是无法深入到另一个层次。
class Parent : Object {
@objc dynamic var name : String = ""
let childs = List<Child>()
}
class Child : Object {
@objc dynamic var name : String = ""
let grandchilds = List<Grandchild>()
var giveBirth = LinkingObjects(fromType: Parent.self, property: "childs")
}
class Grandchild : Object {
@objc dynamic var name : String = ""
var giveBirth = LinkingObjects(fromType: Child.self, property: "grandchilds")
}
我用这一行来计算孩子数:
if let parent = itemsFromParentList?[indexPath.row] {
cell.detailTextLabel?.text = "\(parent.childs.count)"
}
但是我想得到一个特定父母的所有孩子+孙子的总数,例如“您有多少个孩子和孙子?”。
非常感谢!
答案 0 :(得分:0)
请注意,“孩子”的复数形式是“孩子”
如果我理解正确,则需要先绘制父级的孙子平面图,然后对其进行计数,然后再将其子级数添加到其中。
static void Main(string[] args)
{
doSomeStuff();
}
public static async void doSomeStuff()
{
var connString = "Server=localhost;User ID=root;Password=password;Database=mysql";
using (var conn = new MySqlConnection(connString))
{
await conn.OpenAsync();
using (var cmd = new MySqlCommand("SELECT host FROM mysql.user", conn))
using (var reader = await cmd.ExecuteReaderAsync())
while (await reader.ReadAsync())
Console.WriteLine(reader.GetString(0));
}
Console.WriteLine("Finished!");
Console.ReadKey();
}