Frage

Wie wäre es in Subsonic der SimpleReporitory arbeiten, wenn ich ein 1-Beziehung zwischen Objekten?

Lage sein, haben wollte

Hätte ich eine Brücke Objekt erstellen und dann meine Eltern bauen Objekt zur Laufzeit, oder ist diese Unterstützung eingebaut?

Was ich suche ist der folowing:

Adams Beispiel Shop ...

Public Class Shop

    Private m_id As Integer
    Private m_Name As String
    Private m_Employees As List(Of Employee)

    Public Property Id() As Integer
        Get
            Return m_id
        End Get
        Set(ByVal value As Integer)
            m_id = value
        End Set
    End Property

    Public Property Name() As String
        Get
            Return m_Name
        End Get
        Set(ByVal value As String)
            m_Name = value
        End Set
    End Property

    Public Property Employees() As List(Of Employee)
        Get
            Return m_Employees
        End Get
        Set(ByVal value As List(Of Employee))
            m_Employees = value
        End Set
    End Property

End Class

Public Class Employee

    Private m_id As Integer
    Private m_Name As String

    Public Property Id() As Integer
        Get
            Return m_id
        End Get
        Set(ByVal value As Integer)
            m_id = value
        End Set
    End Property

    Public Property Name() As String
        Get
            Return m_Name
        End Get
        Set(ByVal value As String)
            m_Name = value
        End Set
    End Property

End Class

Haupt Bits:

        Dim repo As New SimpleRepository("SubSonicObjectTest", SimpleRepositoryOptions.RunMigrations)

        Dim emplyee1 As New Employee
        emplyee1.Name = "Martin"
        Dim emplyee2 As New Employee
        emplyee2.Name = "Adam"

        Dim shop As New Shop
        shop.Name = "Sub Sonic Store"

        shop.Employees = New List(Of Employee)
        shop.Employees.Add(emplyee1)
        shop.Employees.Add(emplyee2)

        repo.Add(Of Shop)(shop)

ich denke, die 3-Tabellen erstellen soll:

Geschäfte
Mitarbeiter
ShopsToEmployees (oder eine andere Namenskonvention)

Aber ich nur Kanäle Tabelle!

War es hilfreich?

Lösung

Ich bin Aktualisierung der SimpleRepo Sachen zur Zeit automatisch verknüpften Tabellen auf Sammlungen basiert. Nicht leicht zu bestimmen viele / viele vs 1 / viele - aber ich habe einige Ideen:.)

Andere Tipps

Um eine Eins-zu-Beziehung erstellen Sie nur das Objektmodell erstellen müssen, SubSonic sollte den Rest für Sie tun z.

public class Shop
{
  public int Id { get; set; }
  public String Name { get; set; }
  public List<Employee> Employees { get; set; }
}

public class Employee
{
  public int Id { get; set; }
  public String Name { get; set; }
}

EDIT: Dies sollte zwei Tabellen erzeugen, wenn Sie eine Migration laufen nicht 3. Die 3 drei Tabellen, die Sie in Ihrer Frage beschreiben eine viele zu viele Beziehung darstellen würde. Auch in Ihrem Beispiel sind Sie nicht Ihre Mitarbeiter zu speichern, nicht SubSonic nicht Kaskade speichert, so dass Sie sparen müssen, um Ihren Shop-dann die Mitarbeiter hinzufügen, um es und BatchSave die Mitarbeiter.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top