Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL Entity Framework 4.0 Feldzuordnung für gespeicherte Prozeduren

Aufgrund des Fehlers #55778 (Parameter der gespeicherten Prozedur werden während der Aktualisierung des Entitätsdatenmodells weggelassen) ist es nicht möglich, gespeicherte MySQL-Prozeduren automatisch in ein Entitätsdatenmodell zu importieren.

Als Problemumgehung könnten Sie die erstellte .edmx-Datei (.ssdl, .csdl) manuell manipulieren:

Importieren Sie die gespeicherte MySQL-Prozedur wie oben beschrieben

Suchen Sie im Modell nach dem Namen der gespeicherten Prozedur (.edmx-Datei oder .ssdl-, .csdl-Dateien)

Ersetzen Sie im Speichermodell (SSDL):

  <Function Name="GetStudentGrades" Aggregate="false" BuiltIn="false"
            NiladicFunction="false" IsComposable="false"
            ParameterTypeSemantics="AllowImplicitConversion" Schema="dbo">
  </Function>

mit:

  <Function Name="GetStudentGrades" Aggregate="false" BuiltIn="false"
           NiladicFunction="false" IsComposable="false"
            ParameterTypeSemantics="AllowImplicitConversion" Schema="dbo">
    <Parameter Name="StudentID" Type="int" Mode="In" />
  </Function>

Innerhalb des Konzeptmodells (CSDL) ersetzen Sie:

  <FunctionImport Name="GetStudentGrades" EntitySet="StudentGrades" ReturnType=...>
  </FunctionImport>

mit:

  <FunctionImport Name="GetStudentGrades" EntitySet="StudentGrades" ReturnType=...>
    <Parameter Name="StudentID" Mode="In" Type="Int32" />
  </FunctionImport>

Hoffe, das hilft!Prost