Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
01/26/11 02:10:46 (14 years ago)
Author:
swagner
Message:

Worked on OKB (#1174)

Location:
branches/OKB (trunk integration)/HeuristicLab.Services.OKB.DataAccess/3.3
Files:
2 added
5 edited

Legend:

Unmodified
Added
Removed
  • branches/OKB (trunk integration)/HeuristicLab.Services.OKB.DataAccess/3.3/HeuristicLab.Services.OKB.DataAccess-3.3.csproj

    r4455 r5378  
    121121  </ItemGroup>
    122122  <ItemGroup>
     123    <Compile Include="ValueNameType.cs" />
     124    <Compile Include="ValueNameCategory.cs" />
    123125    <Compile Include="OKB.designer.cs">
    124126      <AutoGen>True</AutoGen>
  • branches/OKB (trunk integration)/HeuristicLab.Services.OKB.DataAccess/3.3/OKB.dbml

    r5360 r5378  
    1515      <Column Name="Description" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
    1616      <Association Name="ProblemClass_Problem" Member="Problems" ThisKey="Id" OtherKey="ProblemClassId" Type="Problem" />
    17     </Type>
    18   </Table>
    19   <Table Name="dbo.Experiment" Member="Experiments">
    20     <Type Name="Experiment">
    21       <Column Name="Id" Type="System.Int64" DbType="BigInt NOT NULL IDENTITY" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
    22       <Column Name="AlgorithmId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    23       <Column Name="ProblemId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    24       <Association Name="Experiment_Run" Member="Runs" ThisKey="Id" OtherKey="ExperimentId" Type="Run" />
    25       <Association Name="Experiment_Parameter" Member="Parameters" ThisKey="Id" OtherKey="ExperimentId" Type="Parameter" />
    26       <Association Name="Algorithm_Experiment" Member="Algorithm" ThisKey="AlgorithmId" OtherKey="Id" Type="Algorithm" IsForeignKey="true" />
    27       <Association Name="Problem_Experiment" Member="Problem" ThisKey="ProblemId" OtherKey="Id" Type="Problem" IsForeignKey="true" />
    2817    </Type>
    2918  </Table>
     
    4736      <Column Name="Name" Type="System.String" DbType="NVarChar(200) NOT NULL" CanBeNull="false" />
    4837      <Column Name="Description" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
     38      <Association Name="Platform_DataType" Member="DataTypes" ThisKey="Id" OtherKey="PlatformId" Type="DataType" />
    4939      <Association Name="Platform_Algorithm" Member="Algorithms" ThisKey="Id" OtherKey="PlatformId" Type="Algorithm" />
    5040      <Association Name="Platform_Problem" Member="Problems" ThisKey="Id" OtherKey="PlatformId" Type="Problem" />
    51       <Association Name="Platform_DataType" Member="DataTypes" ThisKey="Id" OtherKey="PlatformId" Type="DataType" />
    5241    </Type>
    5342  </Table>
    54   <Table Name="dbo.Run" Member="Runs">
    55     <Type Name="Run">
     43  <Table Name="dbo.DataType" Member="DataTypes">
     44    <Type Name="DataType">
    5645      <Column Name="Id" Type="System.Int64" DbType="BigInt NOT NULL IDENTITY" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
    57       <Column Name="ExperimentId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    58       <Column Name="RandomSeed" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    59       <Column Name="CreatedDate" Type="System.DateTime" DbType="DateTime2" CanBeNull="false" />
    60       <Column Name="UserId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" CanBeNull="false" />
    61       <Column Name="ClientId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" CanBeNull="false" />
    62       <Association Name="Run_Result" Member="Results" ThisKey="Id" OtherKey="RunId" Type="Result" />
    63       <Association Name="Experiment_Run" Member="Experiment" ThisKey="ExperimentId" OtherKey="Id" Type="Experiment" IsForeignKey="true" />
     46      <Column Name="PlatformId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
     47      <Column Name="Name" Type="System.String" DbType="NVarChar(200) NOT NULL" CanBeNull="false" />
     48      <Column Name="TypeName" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
     49      <Association Name="DataType_Algorithm" Member="Algorithms" ThisKey="Id" OtherKey="DataTypeId" Type="Algorithm" />
     50      <Association Name="DataType_Problem" Member="Problems" ThisKey="Id" OtherKey="DataTypeId" Type="Problem" />
     51      <Association Name="DataType_Value" Member="Values" ThisKey="Id" OtherKey="DataTypeId" Type="Value" />
     52      <Association Name="Platform_DataType" Member="Platform" ThisKey="PlatformId" OtherKey="Id" Type="Platform" IsForeignKey="true" />
    6453    </Type>
    6554  </Table>
    66   <Table Name="dbo.[Values]" Member="Values">
    67     <Type Name="Value">
     55  <Table Name="dbo.ValueName" Member="ValueNames">
     56    <Type Name="ValueName">
    6857      <Column Name="Id" Type="System.Int64" DbType="BigInt NOT NULL IDENTITY" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
    69       <Column Name="Bool" Type="System.Boolean" DbType="Bit" CanBeNull="true" />
    70       <Column Name="Int" Type="System.Int32" DbType="Int" CanBeNull="true" />
    71       <Column Name="Long" Type="System.Int64" DbType="BigInt" CanBeNull="true" />
    72       <Column Name="Real" Type="System.Single" DbType="Real" CanBeNull="true" />
    73       <Column Name="[Double]" Member="Double" Type="System.Double" DbType="Float" CanBeNull="true" />
    74       <Column Name="String" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
    75       <Column Name="Binary" Type="System.Data.Linq.Binary" DbType="VarBinary(MAX)" CanBeNull="true" UpdateCheck="Never" />
    76     </Type>
    77   </Table>
    78   <Table Name="dbo.BinaryValue" Member="BinaryValues">
    79     <Type Name="BinaryValue">
    80       <Column Name="Id" Type="System.Int64" DbType="BigInt NOT NULL IDENTITY" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
    81       <Column Name="Value" Type="System.Data.Linq.Binary" DbType="VarBinary(MAX) NOT NULL" CanBeNull="false" UpdateCheck="Never" />
    82       <Association Name="BinaryValue_Parameter" Member="Parameters" ThisKey="Id" OtherKey="BinaryValueId" Type="Parameter" />
    83       <Association Name="BinaryValue_Algorithm" Member="Algorithms" ThisKey="Id" OtherKey="BinaryValueId" Type="Algorithm" />
    84       <Association Name="BinaryValue_Problem" Member="Problems" ThisKey="Id" OtherKey="BinaryValueId" Type="Problem" />
    85       <Association Name="BinaryValue_Result" Member="Results" ThisKey="Id" OtherKey="BinaryValueId" Type="Result" />
    86     </Type>
    87   </Table>
    88   <Table Name="dbo.Parameter" Member="Parameters">
    89     <Type Name="Parameter">
    90       <Column Name="Id" Type="System.Int64" DbType="BigInt NOT NULL IDENTITY" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
    91       <Column Name="ExperimentId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    92       <Column Name="DataTypeId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    93       <Column Name="Name" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
    94       <Column Name="BoolValue" Type="System.Boolean" DbType="Bit" CanBeNull="true" />
    95       <Column Name="IntValue" Type="System.Int32" DbType="Int" CanBeNull="true" />
    96       <Column Name="LongValue" Type="System.Int64" DbType="BigInt" CanBeNull="true" />
    97       <Column Name="FloatValue" Type="System.Single" DbType="Real" CanBeNull="true" />
    98       <Column Name="DoubleValue" Type="System.Double" DbType="Float" CanBeNull="true" />
    99       <Column Name="StringValue" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
    100       <Column Name="BinaryValueId" Type="System.Int64" DbType="BigInt" CanBeNull="true" />
    101       <Association Name="BinaryValue_Parameter" Member="BinaryValue" ThisKey="BinaryValueId" OtherKey="Id" Type="BinaryValue" IsForeignKey="true" />
    102       <Association Name="Experiment_Parameter" Member="Experiment" ThisKey="ExperimentId" OtherKey="Id" Type="Experiment" IsForeignKey="true" />
    103       <Association Name="DataType_Parameter" Member="DataType" ThisKey="DataTypeId" OtherKey="Id" Type="DataType" IsForeignKey="true" />
     58      <Column Name="Name" Type="System.String" DbType="NVarChar(200) NOT NULL" CanBeNull="false" />
     59      <Column Name="Category" Type="ValueNameCategory" DbType="TinyInt NOT NULL" CanBeNull="false" />
     60      <Column Name="Type" Type="ValueNameType" DbType="TinyInt NOT NULL" CanBeNull="false" />
     61      <Association Name="ValueName_Value" Member="Values" ThisKey="Id" OtherKey="ValueNameId" Type="Value" />
    10462    </Type>
    10563  </Table>
     
    11068      <Column Name="PlatformId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    11169      <Column Name="DataTypeId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    112       <Column Name="BinaryValueId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
     70      <Column Name="BinaryDataId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    11371      <Column Name="Name" Type="System.String" DbType="NVarChar(200) NOT NULL" CanBeNull="false" />
    11472      <Column Name="Description" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
    115       <Association Name="Algorithm_Experiment" Member="Experiments" ThisKey="Id" OtherKey="AlgorithmId" Type="Experiment" />
    11673      <Association Name="Algorithm_AlgorithmUser" Member="AlgorithmUsers" ThisKey="Id" OtherKey="AlgorithmId" Type="AlgorithmUser" />
     74      <Association Name="Algorithm_Run" Member="Runs" ThisKey="Id" OtherKey="AlgorithmId" Type="Run" />
    11775      <Association Name="AlgorithmClass_Algorithm" Member="AlgorithmClass" ThisKey="AlgorithmClassId" OtherKey="Id" Type="AlgorithmClass" IsForeignKey="true" />
    118       <Association Name="BinaryValue_Algorithm" Member="BinaryValue" ThisKey="BinaryValueId" OtherKey="Id" Type="BinaryValue" IsForeignKey="true" />
     76      <Association Name="DataType_Algorithm" Member="DataType" ThisKey="DataTypeId" OtherKey="Id" Type="DataType" IsForeignKey="true" />
    11977      <Association Name="Platform_Algorithm" Member="Platform" ThisKey="PlatformId" OtherKey="Id" Type="Platform" IsForeignKey="true" />
    120       <Association Name="DataType_Algorithm" Member="DataType" ThisKey="DataTypeId" OtherKey="Id" Type="DataType" IsForeignKey="true" />
     78      <Association Name="BinaryData_Algorithm" Member="BinaryData" ThisKey="BinaryDataId" OtherKey="Id" Type="BinaryData" IsForeignKey="true" />
    12179    </Type>
    12280  </Table>
     
    12785      <Column Name="PlatformId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    12886      <Column Name="DataTypeId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    129       <Column Name="BinaryValueId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
     87      <Column Name="BinaryDataId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    13088      <Column Name="Name" Type="System.String" DbType="NVarChar(200) NOT NULL" CanBeNull="false" />
    13189      <Column Name="Description" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
    132       <Association Name="Problem_Experiment" Member="Experiments" ThisKey="Id" OtherKey="ProblemId" Type="Experiment" />
    13390      <Association Name="Problem_ProblemUser" Member="ProblemUsers" ThisKey="Id" OtherKey="ProblemId" Type="ProblemUser" />
    134       <Association Name="BinaryValue_Problem" Member="BinaryValue" ThisKey="BinaryValueId" OtherKey="Id" Type="BinaryValue" IsForeignKey="true" />
     91      <Association Name="Problem_Run" Member="Runs" ThisKey="Id" OtherKey="ProblemId" Type="Run" />
     92      <Association Name="DataType_Problem" Member="DataType" ThisKey="DataTypeId" OtherKey="Id" Type="DataType" IsForeignKey="true" />
    13593      <Association Name="Platform_Problem" Member="Platform" ThisKey="PlatformId" OtherKey="Id" Type="Platform" IsForeignKey="true" />
    13694      <Association Name="ProblemClass_Problem" Member="ProblemClass" ThisKey="ProblemClassId" OtherKey="Id" Type="ProblemClass" IsForeignKey="true" />
    137       <Association Name="DataType_Problem" Member="DataType" ThisKey="DataTypeId" OtherKey="Id" Type="DataType" IsForeignKey="true" />
     95      <Association Name="BinaryData_Problem" Member="BinaryData" ThisKey="BinaryDataId" OtherKey="Id" Type="BinaryData" IsForeignKey="true" />
    13896    </Type>
    13997  </Table>
    140   <Table Name="dbo.Result" Member="Results">
    141     <Type Name="Result">
     98  <Table Name="dbo.BinaryData" Member="BinaryDatas">
     99    <Type Name="BinaryData">
     100      <Column Name="Id" Type="System.Int64" DbType="BigInt NOT NULL IDENTITY" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
     101      <Column Name="Data" Type="System.Data.Linq.Binary" DbType="VarBinary(MAX) NOT NULL" CanBeNull="false" UpdateCheck="Never" />
     102      <Column Name="Hash" Type="System.Data.Linq.Binary" DbType="VarBinary(20)" IsDbGenerated="true" CanBeNull="true" UpdateCheck="Never" />
     103      <Association Name="BinaryData_Algorithm" Member="Algorithms" ThisKey="Id" OtherKey="BinaryDataId" Type="Algorithm" />
     104      <Association Name="BinaryData_Problem" Member="Problems" ThisKey="Id" OtherKey="BinaryDataId" Type="Problem" />
     105      <Association Name="BinaryData_Value" Member="Values" ThisKey="Id" OtherKey="BinaryDataId" Type="Value" />
     106    </Type>
     107  </Table>
     108  <Table Name="dbo.Run" Member="Runs">
     109    <Type Name="Run">
     110      <Column Name="Id" Type="System.Int64" DbType="BigInt NOT NULL IDENTITY" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
     111      <Column Name="AlgorithmId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
     112      <Column Name="ProblemId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
     113      <Column Name="RandomSeed" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
     114      <Column Name="CreatedDate" Type="System.DateTime" DbType="DateTime2 NOT NULL" CanBeNull="false" />
     115      <Column Name="UserId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" CanBeNull="false" />
     116      <Column Name="ClientId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" CanBeNull="false" />
     117      <Association Name="Run_Value" Member="Values" ThisKey="Id" OtherKey="RunId" Type="Value" />
     118      <Association Name="Algorithm_Run" Member="Algorithm" ThisKey="AlgorithmId" OtherKey="Id" Type="Algorithm" IsForeignKey="true" />
     119      <Association Name="Problem_Run" Member="Problem" ThisKey="ProblemId" OtherKey="Id" Type="Problem" IsForeignKey="true" />
     120    </Type>
     121  </Table>
     122  <Table Name="dbo.Value" Member="Values">
     123    <Type Name="Value">
    142124      <Column Name="Id" Type="System.Int64" DbType="BigInt NOT NULL IDENTITY" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
    143125      <Column Name="RunId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
     126      <Column Name="ValueNameId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    144127      <Column Name="DataTypeId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    145       <Column Name="Name" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
    146128      <Column Name="BoolValue" Type="System.Boolean" DbType="Bit" CanBeNull="true" />
    147129      <Column Name="IntValue" Type="System.Int32" DbType="Int" CanBeNull="true" />
     
    150132      <Column Name="DoubleValue" Type="System.Double" DbType="Float" CanBeNull="true" />
    151133      <Column Name="StringValue" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
    152       <Column Name="BinaryValueId" Type="System.Int64" DbType="BigInt" CanBeNull="true" />
    153       <Association Name="BinaryValue_Result" Member="BinaryValue" ThisKey="BinaryValueId" OtherKey="Id" Type="BinaryValue" IsForeignKey="true" />
    154       <Association Name="Run_Result" Member="Run" ThisKey="RunId" OtherKey="Id" Type="Run" IsForeignKey="true" />
    155       <Association Name="DataType_Result" Member="DataType" ThisKey="DataTypeId" OtherKey="Id" Type="DataType" IsForeignKey="true" />
    156     </Type>
    157   </Table>
    158   <Table Name="dbo.DataType" Member="DataTypes">
    159     <Type Name="DataType">
    160       <Column Name="Id" Type="System.Int64" DbType="BigInt NOT NULL IDENTITY" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
    161       <Column Name="PlatformId" Type="System.Int64" DbType="BigInt NOT NULL" CanBeNull="false" />
    162       <Column Name="Name" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
    163       <Column Name="TypeName" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
    164       <Association Name="DataType_Parameter" Member="Parameters" ThisKey="Id" OtherKey="DataTypeId" Type="Parameter" />
    165       <Association Name="DataType_Algorithm" Member="Algorithms" ThisKey="Id" OtherKey="DataTypeId" Type="Algorithm" />
    166       <Association Name="DataType_Problem" Member="Problems" ThisKey="Id" OtherKey="DataTypeId" Type="Problem" />
    167       <Association Name="DataType_Result" Member="Results" ThisKey="Id" OtherKey="DataTypeId" Type="Result" />
    168       <Association Name="Platform_DataType" Member="Platform" ThisKey="PlatformId" OtherKey="Id" Type="Platform" IsForeignKey="true" />
     134      <Column Name="BinaryDataId" Type="System.Int64" DbType="BigInt" CanBeNull="true" />
     135      <Association Name="BinaryData_Value" Member="BinaryData" ThisKey="BinaryDataId" OtherKey="Id" Type="BinaryData" IsForeignKey="true" />
     136      <Association Name="DataType_Value" Member="DataType" ThisKey="DataTypeId" OtherKey="Id" Type="DataType" IsForeignKey="true" />
     137      <Association Name="Run_Value" Member="Run" ThisKey="RunId" OtherKey="Id" Type="Run" IsForeignKey="true" />
     138      <Association Name="ValueName_Value" Member="ValueName" ThisKey="ValueNameId" OtherKey="Id" Type="ValueName" IsForeignKey="true" />
    169139    </Type>
    170140  </Table>
  • branches/OKB (trunk integration)/HeuristicLab.Services.OKB.DataAccess/3.3/OKB.dbml.layout

    r5360 r5378  
    11<?xml version="1.0" encoding="utf-8"?>
    2 <ordesignerObjectsDiagram dslVersion="1.0.0.0" absoluteBounds="0, 0, 14.75, 18.125" name="OKB">
     2<ordesignerObjectsDiagram dslVersion="1.0.0.0" absoluteBounds="0, 0, 12, 13.25" name="OKB">
    33  <DataContextMoniker Name="/OKBDataContext" />
    44  <nestedChildShapes>
    5     <classShape Id="ec288562-8ef9-46b8-a2dc-a471fec7afb8" absoluteBounds="3.5, 0.5, 2, 1.3862939453125">
     5    <classShape Id="ec288562-8ef9-46b8-a2dc-a471fec7afb8" absoluteBounds="0.75, 0.5, 2, 1.3862939453125">
    66      <DataClassMoniker Name="/OKBDataContext/AlgorithmClass" />
    77      <nestedChildShapes>
    8         <elementListCompartment Id="fbed452c-662c-42d5-b89f-2b122b63aecc" absoluteBounds="3.515, 0.96, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     8        <elementListCompartment Id="fbed452c-662c-42d5-b89f-2b122b63aecc" absoluteBounds="0.76500000000000012, 0.96, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    99      </nestedChildShapes>
    1010    </classShape>
    11     <classShape Id="018aceac-7bd0-4fdd-8cca-d219aa08a5b5" absoluteBounds="12.5, 0.5, 2, 1.3862939453125">
     11    <classShape Id="018aceac-7bd0-4fdd-8cca-d219aa08a5b5" absoluteBounds="9.75, 0.5, 2, 1.3862939453125">
    1212      <DataClassMoniker Name="/OKBDataContext/ProblemClass" />
    1313      <nestedChildShapes>
    14         <elementListCompartment Id="2958536f-012b-4eb7-8bc7-453edcda1493" absoluteBounds="12.515, 0.96, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     14        <elementListCompartment Id="2958536f-012b-4eb7-8bc7-453edcda1493" absoluteBounds="9.765, 0.96, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    1515      </nestedChildShapes>
    1616    </classShape>
    17     <classShape Id="c250fb1a-b448-499e-b8eb-d1d0c38521a0" absoluteBounds="8, 5.625, 2, 1.3862939453125">
    18       <DataClassMoniker Name="/OKBDataContext/Experiment" />
     17    <classShape Id="aa997e47-0162-4fc2-aa8d-e237c50c46fe" isExpanded="false" absoluteBounds="0.75, 2.125, 2, 0.45">
     18      <DataClassMoniker Name="/OKBDataContext/AlgorithmUser" />
    1919      <nestedChildShapes>
    20         <elementListCompartment Id="75b7e6ac-33fa-45bf-9832-b5bf0c2c0db5" absoluteBounds="8.015, 6.085, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     20        <elementListCompartment Id="f81c31a9-84c5-40b1-b817-6dccbe77227d" absoluteBounds="0.76500000000000057, 2.5850000000000009, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    2121      </nestedChildShapes>
    2222    </classShape>
    23     <classShape Id="aa997e47-0162-4fc2-aa8d-e237c50c46fe" isExpanded="false" absoluteBounds="5.75, 2.125, 2, 0.45">
    24       <DataClassMoniker Name="/OKBDataContext/AlgorithmUser" />
     23    <classShape Id="8d911be4-13c4-4abd-85de-4f93f280dd50" isExpanded="false" absoluteBounds="9.75, 2.125, 2, 0.45">
     24      <DataClassMoniker Name="/OKBDataContext/ProblemUser" />
    2525      <nestedChildShapes>
    26         <elementListCompartment Id="f81c31a9-84c5-40b1-b817-6dccbe77227d" absoluteBounds="5.7650000000000006, 2.5850000000000009, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     26        <elementListCompartment Id="bdf4bd9d-405f-4582-99ff-036459c86748" absoluteBounds="9.765, 2.5850000000000009, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    2727      </nestedChildShapes>
    2828    </classShape>
    29     <classShape Id="8d911be4-13c4-4abd-85de-4f93f280dd50" isExpanded="false" absoluteBounds="10.25, 2.125, 2, 0.45">
    30       <DataClassMoniker Name="/OKBDataContext/ProblemUser" />
     29    <classShape Id="42a9e8c0-3168-43f0-a31f-54d1558bd4c2" absoluteBounds="5.25, 0.5, 2, 1.3862939453125">
     30      <DataClassMoniker Name="/OKBDataContext/Platform" />
    3131      <nestedChildShapes>
    32         <elementListCompartment Id="bdf4bd9d-405f-4582-99ff-036459c86748" absoluteBounds="10.265, 2.5850000000000009, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     32        <elementListCompartment Id="83ab4fa2-80aa-4c36-9596-bc4d9a0c6daf" absoluteBounds="5.2650000000000006, 0.96, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    3333      </nestedChildShapes>
    3434    </classShape>
    35     <classShape Id="42a9e8c0-3168-43f0-a31f-54d1558bd4c2" absoluteBounds="8, 2.125, 2, 1.3862939453125">
    36       <DataClassMoniker Name="/OKBDataContext/Platform" />
     35    <classShape Id="34f5a12b-f109-4606-baf8-6ddfde7c1b34" absoluteBounds="5.25, 2.125, 2, 1.5785953776041666">
     36      <DataClassMoniker Name="/OKBDataContext/DataType" />
    3737      <nestedChildShapes>
    38         <elementListCompartment Id="83ab4fa2-80aa-4c36-9596-bc4d9a0c6daf" absoluteBounds="8.015, 2.585, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     38        <elementListCompartment Id="1dacac40-e283-48e9-a98d-dddbc6b4fd48" absoluteBounds="5.2650000000000006, 2.585, 1.9700000000000002, 1.0185953776041665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    3939      </nestedChildShapes>
    4040    </classShape>
    41     <classShape Id="83a5f628-defe-486f-bc6a-4ab430293368" absoluteBounds="8, 7.375, 2, 1.9631982421875">
    42       <DataClassMoniker Name="/OKBDataContext/Run" />
     41    <associationConnector edgePoints="[(6.25 : 1.8862939453125); (6.25 : 2.125)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     42      <AssociationMoniker Name="/OKBDataContext/Platform/Platform_DataType" />
     43      <nodes>
     44        <classShapeMoniker Id="42a9e8c0-3168-43f0-a31f-54d1558bd4c2" />
     45        <classShapeMoniker Id="34f5a12b-f109-4606-baf8-6ddfde7c1b34" />
     46      </nodes>
     47    </associationConnector>
     48    <classShape Id="c75911bf-ae6d-421c-9219-e027c3059390" absoluteBounds="6.25, 7.25, 2, 1.5785953776041666">
     49      <DataClassMoniker Name="/OKBDataContext/ValueName" />
    4350      <nestedChildShapes>
    44         <elementListCompartment Id="649f10a6-6047-4f4e-b76a-9da90591bbec" absoluteBounds="8.015, 7.8350000000000009, 1.9700000000000002, 1.4031982421875" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     51        <elementListCompartment Id="5aadda7d-ee09-475a-a2d1-e153615911b4" absoluteBounds="6.265, 7.71, 1.9700000000000002, 1.0185953776041665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    4552      </nestedChildShapes>
    4653    </classShape>
    47     <associationConnector edgePoints="[(9.02607466796409 : 7.0112939453125); (9.02607466796409 : 7.375)]" manuallyRouted="true" fixedFrom="Caller" fixedTo="Algorithm">
    48       <AssociationMoniker Name="/OKBDataContext/Experiment/Experiment_Run" />
    49       <nodes>
    50         <classShapeMoniker Id="c250fb1a-b448-499e-b8eb-d1d0c38521a0" />
    51         <classShapeMoniker Id="83a5f628-defe-486f-bc6a-4ab430293368" />
    52       </nodes>
    53     </associationConnector>
    54     <classShape Id="df6a3edf-da5b-42ea-a7fb-b051af875225" absoluteBounds="2, 15.5, 2, 2.3478011067708335">
    55       <DataClassMoniker Name="/OKBDataContext/Value" />
     54    <classShape Id="be37de9e-465a-4d06-9dd6-3c3f7f1f07fa" absoluteBounds="3, 0.5, 2, 2.1554996744791666">
     55      <DataClassMoniker Name="/OKBDataContext/Algorithm" />
    5656      <nestedChildShapes>
    57         <elementListCompartment Id="f421b97b-e8a6-4e77-95db-0e2b6ea51ded" absoluteBounds="2.015, 15.96, 1.9700000000000002, 1.7878011067708335" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     57        <elementListCompartment Id="5d0e5084-c74f-469d-bb56-da81ce2ce8d4" absoluteBounds="3.015, 0.96, 1.9700000000000002, 1.5954996744791665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    5858      </nestedChildShapes>
    5959    </classShape>
    60     <classShape Id="dc259737-4774-431f-b73a-35a4d1c3a1b5" absoluteBounds="8, 9.625, 2, 1.1939925130208333">
    61       <DataClassMoniker Name="/OKBDataContext/BinaryValue" />
    62       <nestedChildShapes>
    63         <elementListCompartment Id="4140fc50-3a72-4ea9-8b2b-36baaad498b1" absoluteBounds="8.015, 10.085, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    64       </nestedChildShapes>
    65     </classShape>
    66     <classShape Id="15f2d68d-9457-47f5-8e09-b639f4d88932" absoluteBounds="5.75, 6.125, 2, 2.9247054036458331">
    67       <DataClassMoniker Name="/OKBDataContext/Parameter" />
    68       <nestedChildShapes>
    69         <elementListCompartment Id="439e76a2-5dba-4d29-9c83-c32a1ac25ce2" absoluteBounds="5.7650000000000006, 6.585, 1.9700000000000002, 2.364705403645833" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    70       </nestedChildShapes>
    71     </classShape>
    72     <associationConnector edgePoints="[(8 : 9.95335934352699); (6.75 : 9.95335934352699); (6.75 : 9.04970540364583)]" fixedFrom="Caller" fixedTo="Algorithm">
    73       <AssociationMoniker Name="/OKBDataContext/BinaryValue/BinaryValue_Parameter" />
    74       <nodes>
    75         <classShapeMoniker Id="dc259737-4774-431f-b73a-35a4d1c3a1b5" />
    76         <classShapeMoniker Id="15f2d68d-9457-47f5-8e09-b639f4d88932" />
    77       </nodes>
    78     </associationConnector>
    79     <associationConnector edgePoints="[(8 : 6.69336274646577); (7.75 : 6.69336274646577)]" fixedFrom="Caller" fixedTo="Algorithm">
    80       <AssociationMoniker Name="/OKBDataContext/Experiment/Experiment_Parameter" />
    81       <nodes>
    82         <classShapeMoniker Id="c250fb1a-b448-499e-b8eb-d1d0c38521a0" />
    83         <classShapeMoniker Id="15f2d68d-9457-47f5-8e09-b639f4d88932" />
    84       </nodes>
    85     </associationConnector>
    86     <classShape Id="951a6f2e-9c7e-45ea-8e06-464d0ca0bdeb" absoluteBounds="3.5, 2.125, 2, 2.1554996744791666">
    87       <DataClassMoniker Name="/OKBDataContext/Algorithm" />
    88       <nestedChildShapes>
    89         <elementListCompartment Id="01f7cf44-9247-493c-b9ca-5631ac2365a8" absoluteBounds="3.515, 2.585, 1.9700000000000002, 1.5954996744791665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    90       </nestedChildShapes>
    91     </classShape>
    92     <associationConnector edgePoints="[(5.1807223683897 : 4.28049967447917); (5.1807223683897 : 5.84375); (6.66666666666667 : 5.84375 : JumpStart); (6.83333333333333 : 5.84375 : JumpEnd); (8 : 5.84375)]" fixedFrom="Caller" fixedTo="Algorithm">
    93       <AssociationMoniker Name="/OKBDataContext/Algorithm/Algorithm_Experiment" />
    94       <nodes>
    95         <classShapeMoniker Id="951a6f2e-9c7e-45ea-8e06-464d0ca0bdeb" />
    96         <classShapeMoniker Id="c250fb1a-b448-499e-b8eb-d1d0c38521a0" />
    97       </nodes>
    98     </associationConnector>
    99     <associationConnector edgePoints="[(5.5 : 2.35); (5.75 : 2.35)]" fixedFrom="Algorithm" fixedTo="Algorithm">
     60    <associationConnector edgePoints="[(3 : 2.35); (2.75 : 2.35)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    10061      <AssociationMoniker Name="/OKBDataContext/Algorithm/Algorithm_AlgorithmUser" />
    10162      <nodes>
    102         <classShapeMoniker Id="951a6f2e-9c7e-45ea-8e06-464d0ca0bdeb" />
     63        <classShapeMoniker Id="be37de9e-465a-4d06-9dd6-3c3f7f1f07fa" />
    10364        <classShapeMoniker Id="aa997e47-0162-4fc2-aa8d-e237c50c46fe" />
    10465      </nodes>
    10566    </associationConnector>
    106     <associationConnector edgePoints="[(4.5 : 1.8862939453125); (4.5 : 2.125)]" fixedFrom="Algorithm" fixedTo="Algorithm">
     67    <associationConnector edgePoints="[(2.75 : 1.19314697265625); (3 : 1.19314697265625)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    10768      <AssociationMoniker Name="/OKBDataContext/AlgorithmClass/AlgorithmClass_Algorithm" />
    10869      <nodes>
    10970        <classShapeMoniker Id="ec288562-8ef9-46b8-a2dc-a471fec7afb8" />
    110         <classShapeMoniker Id="951a6f2e-9c7e-45ea-8e06-464d0ca0bdeb" />
     71        <classShapeMoniker Id="be37de9e-465a-4d06-9dd6-3c3f7f1f07fa" />
    11172      </nodes>
    11273    </associationConnector>
    113     <associationConnector edgePoints="[(8 : 10.3455611047763); (3.86408817179456 : 10.3455611047763); (3.86408817179456 : 4.28049967447917)]" fixedFrom="Caller" fixedTo="Caller">
    114       <AssociationMoniker Name="/OKBDataContext/BinaryValue/BinaryValue_Algorithm" />
     74    <associationConnector edgePoints="[(5.25 : 2.39024983723958); (5 : 2.39024983723958)]" fixedFrom="Algorithm" fixedTo="Algorithm">
     75      <AssociationMoniker Name="/OKBDataContext/DataType/DataType_Algorithm" />
    11576      <nodes>
    116         <classShapeMoniker Id="dc259737-4774-431f-b73a-35a4d1c3a1b5" />
    117         <classShapeMoniker Id="951a6f2e-9c7e-45ea-8e06-464d0ca0bdeb" />
     77        <classShapeMoniker Id="34f5a12b-f109-4606-baf8-6ddfde7c1b34" />
     78        <classShapeMoniker Id="be37de9e-465a-4d06-9dd6-3c3f7f1f07fa" />
    11879      </nodes>
    11980    </associationConnector>
    120     <associationConnector edgePoints="[(8 : 3.07439697265625); (5.5 : 3.07439697265625)]" fixedFrom="Algorithm" fixedTo="Algorithm">
     81    <associationConnector edgePoints="[(5.25 : 1.19314697265625); (5 : 1.19314697265625)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    12182      <AssociationMoniker Name="/OKBDataContext/Platform/Platform_Algorithm" />
    12283      <nodes>
    12384        <classShapeMoniker Id="42a9e8c0-3168-43f0-a31f-54d1558bd4c2" />
    124         <classShapeMoniker Id="951a6f2e-9c7e-45ea-8e06-464d0ca0bdeb" />
     85        <classShapeMoniker Id="be37de9e-465a-4d06-9dd6-3c3f7f1f07fa" />
    12586      </nodes>
    12687    </associationConnector>
    127     <classShape Id="8ca71793-e7df-42d0-a121-759f1c755eab" absoluteBounds="12.5, 2.125, 2, 2.1554996744791666">
     88    <classShape Id="f197afc9-8f2b-4dae-b87e-43c2c87796bb" absoluteBounds="7.5, 0.5, 2, 2.1554996744791666">
    12889      <DataClassMoniker Name="/OKBDataContext/Problem" />
    12990      <nestedChildShapes>
    130         <elementListCompartment Id="82b81ed5-4a55-47a7-b705-5f1224bed54e" absoluteBounds="12.515, 2.585, 1.9700000000000002, 1.5954996744791665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     91        <elementListCompartment Id="9feb3034-0748-47df-aa82-41b7c3e8cdbd" absoluteBounds="7.5150000000000006, 0.96, 1.9700000000000002, 1.5954996744791665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    13192      </nestedChildShapes>
    13293    </classShape>
    133     <associationConnector edgePoints="[(12.79452328612 : 4.28049967447917); (12.79452328612 : 5.84375); (11.3333333333333 : 5.84375 : JumpStart); (11.1666666666667 : 5.84375 : JumpEnd); (10 : 5.84375)]" fixedFrom="Caller" fixedTo="Algorithm">
    134       <AssociationMoniker Name="/OKBDataContext/Problem/Problem_Experiment" />
    135       <nodes>
    136         <classShapeMoniker Id="8ca71793-e7df-42d0-a121-759f1c755eab" />
    137         <classShapeMoniker Id="c250fb1a-b448-499e-b8eb-d1d0c38521a0" />
    138       </nodes>
    139     </associationConnector>
    140     <associationConnector edgePoints="[(12.5 : 2.35); (12.25 : 2.35)]" fixedFrom="Algorithm" fixedTo="Algorithm">
     94    <associationConnector edgePoints="[(9.5 : 2.35); (9.75 : 2.35)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    14195      <AssociationMoniker Name="/OKBDataContext/Problem/Problem_ProblemUser" />
    14296      <nodes>
    143         <classShapeMoniker Id="8ca71793-e7df-42d0-a121-759f1c755eab" />
     97        <classShapeMoniker Id="f197afc9-8f2b-4dae-b87e-43c2c87796bb" />
    14498        <classShapeMoniker Id="8d911be4-13c4-4abd-85de-4f93f280dd50" />
    14599      </nodes>
    146100    </associationConnector>
    147     <associationConnector edgePoints="[(10 : 10.4094773338862); (14.1793485547029 : 10.4094773338862); (14.1793485547029 : 4.28049967447917)]" fixedFrom="Algorithm" fixedTo="Caller">
    148       <AssociationMoniker Name="/OKBDataContext/BinaryValue/BinaryValue_Problem" />
     101    <associationConnector edgePoints="[(7.25 : 2.39024983723958); (7.5 : 2.39024983723958)]" fixedFrom="Algorithm" fixedTo="Algorithm">
     102      <AssociationMoniker Name="/OKBDataContext/DataType/DataType_Problem" />
    149103      <nodes>
    150         <classShapeMoniker Id="dc259737-4774-431f-b73a-35a4d1c3a1b5" />
    151         <classShapeMoniker Id="8ca71793-e7df-42d0-a121-759f1c755eab" />
     104        <classShapeMoniker Id="34f5a12b-f109-4606-baf8-6ddfde7c1b34" />
     105        <classShapeMoniker Id="f197afc9-8f2b-4dae-b87e-43c2c87796bb" />
    152106      </nodes>
    153107    </associationConnector>
    154     <associationConnector edgePoints="[(10 : 3.07439697265625); (12.5 : 3.07439697265625)]" fixedFrom="Algorithm" fixedTo="Algorithm">
     108    <associationConnector edgePoints="[(7.25 : 1.19314697265625); (7.5 : 1.19314697265625)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    155109      <AssociationMoniker Name="/OKBDataContext/Platform/Platform_Problem" />
    156110      <nodes>
    157111        <classShapeMoniker Id="42a9e8c0-3168-43f0-a31f-54d1558bd4c2" />
    158         <classShapeMoniker Id="8ca71793-e7df-42d0-a121-759f1c755eab" />
     112        <classShapeMoniker Id="f197afc9-8f2b-4dae-b87e-43c2c87796bb" />
    159113      </nodes>
    160114    </associationConnector>
    161     <associationConnector edgePoints="[(13.5 : 1.8862939453125); (13.5 : 2.125)]" fixedFrom="Algorithm" fixedTo="Algorithm">
     115    <associationConnector edgePoints="[(9.75 : 1.19314697265625); (9.5 : 1.19314697265625)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    162116      <AssociationMoniker Name="/OKBDataContext/ProblemClass/ProblemClass_Problem" />
    163117      <nodes>
    164118        <classShapeMoniker Id="018aceac-7bd0-4fdd-8cca-d219aa08a5b5" />
    165         <classShapeMoniker Id="8ca71793-e7df-42d0-a121-759f1c755eab" />
     119        <classShapeMoniker Id="f197afc9-8f2b-4dae-b87e-43c2c87796bb" />
    166120      </nodes>
    167121    </associationConnector>
    168     <classShape Id="82b01420-87af-408b-8b87-2a206ecc04c2" absoluteBounds="10.25, 6.125, 2, 2.9247054036458331">
    169       <DataClassMoniker Name="/OKBDataContext/Result" />
     122    <classShape Id="c2a69525-596c-4c58-a8cb-cb8c616f52d1" absoluteBounds="5.375, 11.625, 2, 1.3862939453125">
     123      <DataClassMoniker Name="/OKBDataContext/BinaryData" />
    170124      <nestedChildShapes>
    171         <elementListCompartment Id="938cfd06-37a2-4f79-8648-9a6923d96548" absoluteBounds="10.265, 6.5850000000000009, 1.9700000000000002, 2.364705403645833" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     125        <elementListCompartment Id="d8ba4b42-b034-4f4d-88c6-ccc998db2567" absoluteBounds="5.39, 12.085, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    172126      </nestedChildShapes>
    173127    </classShape>
    174     <associationConnector edgePoints="[(10 : 9.93745715475162); (11.2455850608641 : 9.93745715475162); (11.2455850608641 : 9.04970540364583)]" fixedFrom="Caller" fixedTo="Caller">
    175       <AssociationMoniker Name="/OKBDataContext/BinaryValue/BinaryValue_Result" />
     128    <associationConnector edgePoints="[(5.375 : 12.5842332275421); (3.49119721701854 : 12.5842332275421); (3.49119721701854 : 2.65549967447917)]" fixedFrom="Caller" fixedTo="Caller">
     129      <AssociationMoniker Name="/OKBDataContext/BinaryData/BinaryData_Algorithm" />
    176130      <nodes>
    177         <classShapeMoniker Id="dc259737-4774-431f-b73a-35a4d1c3a1b5" />
    178         <classShapeMoniker Id="82b01420-87af-408b-8b87-2a206ecc04c2" />
     131        <classShapeMoniker Id="c2a69525-596c-4c58-a8cb-cb8c616f52d1" />
     132        <classShapeMoniker Id="be37de9e-465a-4d06-9dd6-3c3f7f1f07fa" />
    179133      </nodes>
    180134    </associationConnector>
    181     <associationConnector edgePoints="[(10 : 7.94305789362186); (10.25 : 7.94305789362186)]" fixedFrom="Algorithm" fixedTo="Caller">
    182       <AssociationMoniker Name="/OKBDataContext/Run/Run_Result" />
     135    <associationConnector edgePoints="[(7.375 : 12.3181469726562); (9.03188819701693 : 12.3181469726562); (9.03188819701693 : 2.65549967447917)]" fixedFrom="Algorithm" fixedTo="Caller">
     136      <AssociationMoniker Name="/OKBDataContext/BinaryData/BinaryData_Problem" />
    183137      <nodes>
    184         <classShapeMoniker Id="83a5f628-defe-486f-bc6a-4ab430293368" />
    185         <classShapeMoniker Id="82b01420-87af-408b-8b87-2a206ecc04c2" />
     138        <classShapeMoniker Id="c2a69525-596c-4c58-a8cb-cb8c616f52d1" />
     139        <classShapeMoniker Id="f197afc9-8f2b-4dae-b87e-43c2c87796bb" />
    186140      </nodes>
    187141    </associationConnector>
    188     <classShape Id="a44aab4b-80ad-45c9-9a32-cc1ea5268e50" absoluteBounds="8, 3.75, 2, 1.5785953776041666">
    189       <DataClassMoniker Name="/OKBDataContext/DataType" />
     142    <classShape Id="65934fe9-4206-4d20-971b-1afacf645311" absoluteBounds="5.375, 9.125, 2, 2.1554996744791666">
     143      <DataClassMoniker Name="/OKBDataContext/Run" />
    190144      <nestedChildShapes>
    191         <elementListCompartment Id="262db7ca-0825-47fb-a8c8-52f355d13f27" absoluteBounds="8.015, 4.21, 1.9700000000000002, 1.0185953776041665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     145        <elementListCompartment Id="14f0104d-03c2-4aec-9a4d-faeaaa1d8947" absoluteBounds="5.3900000000000006, 9.585, 1.9700000000000002, 1.5954996744791665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    192146      </nestedChildShapes>
    193147    </classShape>
    194     <associationConnector edgePoints="[(8 : 4.70317510742187); (6.75 : 4.70317510742187); (6.75 : 6.125)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    195       <AssociationMoniker Name="/OKBDataContext/DataType/DataType_Parameter" />
     148    <associationConnector edgePoints="[(3.83227639170838 : 2.65549967447917); (3.83227639170838 : 10.1875); (4.6605991084703 : 10.1875 : JumpStart); (4.82726577513696 : 10.1875 : JumpEnd); (5.375 : 10.1875)]" fixedFrom="Caller" fixedTo="Algorithm">
     149      <AssociationMoniker Name="/OKBDataContext/Algorithm/Algorithm_Run" />
    196150      <nodes>
    197         <classShapeMoniker Id="a44aab4b-80ad-45c9-9a32-cc1ea5268e50" />
    198         <classShapeMoniker Id="15f2d68d-9457-47f5-8e09-b639f4d88932" />
     151        <classShapeMoniker Id="be37de9e-465a-4d06-9dd6-3c3f7f1f07fa" />
     152        <classShapeMoniker Id="65934fe9-4206-4d20-971b-1afacf645311" />
    199153      </nodes>
    200154    </associationConnector>
    201     <associationConnector edgePoints="[(8 : 4.01524983723958); (5.5 : 4.01524983723958)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    202       <AssociationMoniker Name="/OKBDataContext/DataType/DataType_Algorithm" />
     155    <associationConnector edgePoints="[(8.67740328851453 : 2.65549967447917); (8.67740328851453 : 10.2027498372396); (7.375 : 10.2027498372396)]" fixedFrom="Caller" fixedTo="Algorithm">
     156      <AssociationMoniker Name="/OKBDataContext/Problem/Problem_Run" />
    203157      <nodes>
    204         <classShapeMoniker Id="a44aab4b-80ad-45c9-9a32-cc1ea5268e50" />
    205         <classShapeMoniker Id="951a6f2e-9c7e-45ea-8e06-464d0ca0bdeb" />
     158        <classShapeMoniker Id="f197afc9-8f2b-4dae-b87e-43c2c87796bb" />
     159        <classShapeMoniker Id="65934fe9-4206-4d20-971b-1afacf645311" />
    206160      </nodes>
    207161    </associationConnector>
    208     <associationConnector edgePoints="[(10 : 4.01524983723958); (12.5 : 4.01524983723958)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    209       <AssociationMoniker Name="/OKBDataContext/DataType/DataType_Problem" />
     162    <classShape Id="7d592fcd-d7a9-4ad0-a69f-9d29b97d9995" absoluteBounds="5.25, 4, 2, 2.9247054036458331">
     163      <DataClassMoniker Name="/OKBDataContext/Value" />
     164      <nestedChildShapes>
     165        <elementListCompartment Id="89ad14d6-7946-43fe-af7c-59ce9fbe1d96" absoluteBounds="5.2650000000000006, 4.46, 1.9700000000000002, 2.364705403645833" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     166      </nestedChildShapes>
     167    </classShape>
     168    <associationConnector edgePoints="[(5.375 : 12.0896030581781); (4.74393244180363 : 12.0896030581781); (4.74393244180363 : 5.49806911725718); (5.25 : 5.49806911725718)]" manuallyRouted="true" fixedFrom="Caller" fixedTo="Caller">
     169      <AssociationMoniker Name="/OKBDataContext/BinaryData/BinaryData_Value" />
    210170      <nodes>
    211         <classShapeMoniker Id="a44aab4b-80ad-45c9-9a32-cc1ea5268e50" />
    212         <classShapeMoniker Id="8ca71793-e7df-42d0-a121-759f1c755eab" />
     171        <classShapeMoniker Id="c2a69525-596c-4c58-a8cb-cb8c616f52d1" />
     172        <classShapeMoniker Id="7d592fcd-d7a9-4ad0-a69f-9d29b97d9995" />
    213173      </nodes>
    214174    </associationConnector>
    215     <associationConnector edgePoints="[(10 : 4.70317510742187); (11.25 : 4.70317510742187); (11.25 : 6.125)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    216       <AssociationMoniker Name="/OKBDataContext/DataType/DataType_Result" />
     175    <associationConnector edgePoints="[(6.25 : 3.70359537760417); (6.25 : 4)]" fixedFrom="Algorithm" fixedTo="Algorithm">
     176      <AssociationMoniker Name="/OKBDataContext/DataType/DataType_Value" />
    217177      <nodes>
    218         <classShapeMoniker Id="a44aab4b-80ad-45c9-9a32-cc1ea5268e50" />
    219         <classShapeMoniker Id="82b01420-87af-408b-8b87-2a206ecc04c2" />
     178        <classShapeMoniker Id="34f5a12b-f109-4606-baf8-6ddfde7c1b34" />
     179        <classShapeMoniker Id="7d592fcd-d7a9-4ad0-a69f-9d29b97d9995" />
    220180      </nodes>
    221181    </associationConnector>
    222     <associationConnector edgePoints="[(9 : 3.5112939453125); (9 : 3.75)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    223       <AssociationMoniker Name="/OKBDataContext/Platform/Platform_DataType" />
     182    <associationConnector edgePoints="[(5.78125 : 9.125); (5.78125 : 6.92470540364583)]" fixedFrom="Algorithm" fixedTo="Algorithm">
     183      <AssociationMoniker Name="/OKBDataContext/Run/Run_Value" />
    224184      <nodes>
    225         <classShapeMoniker Id="42a9e8c0-3168-43f0-a31f-54d1558bd4c2" />
    226         <classShapeMoniker Id="a44aab4b-80ad-45c9-9a32-cc1ea5268e50" />
     185        <classShapeMoniker Id="65934fe9-4206-4d20-971b-1afacf645311" />
     186        <classShapeMoniker Id="7d592fcd-d7a9-4ad0-a69f-9d29b97d9995" />
     187      </nodes>
     188    </associationConnector>
     189    <associationConnector edgePoints="[(6.75 : 7.25); (6.75 : 6.92470540364583)]" fixedFrom="Algorithm" fixedTo="Algorithm">
     190      <AssociationMoniker Name="/OKBDataContext/ValueName/ValueName_Value" />
     191      <nodes>
     192        <classShapeMoniker Id="c75911bf-ae6d-421c-9219-e027c3059390" />
     193        <classShapeMoniker Id="7d592fcd-d7a9-4ad0-a69f-9d29b97d9995" />
    227194      </nodes>
    228195    </associationConnector>
  • branches/OKB (trunk integration)/HeuristicLab.Services.OKB.DataAccess/3.3/OKB.designer.cs

    r5360 r5378  
    3737    partial void UpdateProblemClass(ProblemClass instance);
    3838    partial void DeleteProblemClass(ProblemClass instance);
    39     partial void InsertExperiment(Experiment instance);
    40     partial void UpdateExperiment(Experiment instance);
    41     partial void DeleteExperiment(Experiment instance);
    4239    partial void InsertAlgorithmUser(AlgorithmUser instance);
    4340    partial void UpdateAlgorithmUser(AlgorithmUser instance);
     
    4946    partial void UpdatePlatform(Platform instance);
    5047    partial void DeletePlatform(Platform instance);
     48    partial void InsertDataType(DataType instance);
     49    partial void UpdateDataType(DataType instance);
     50    partial void DeleteDataType(DataType instance);
     51    partial void InsertValueName(ValueName instance);
     52    partial void UpdateValueName(ValueName instance);
     53    partial void DeleteValueName(ValueName instance);
     54    partial void InsertAlgorithm(Algorithm instance);
     55    partial void UpdateAlgorithm(Algorithm instance);
     56    partial void DeleteAlgorithm(Algorithm instance);
     57    partial void InsertProblem(Problem instance);
     58    partial void UpdateProblem(Problem instance);
     59    partial void DeleteProblem(Problem instance);
     60    partial void InsertBinaryData(BinaryData instance);
     61    partial void UpdateBinaryData(BinaryData instance);
     62    partial void DeleteBinaryData(BinaryData instance);
    5163    partial void InsertRun(Run instance);
    5264    partial void UpdateRun(Run instance);
     
    5567    partial void UpdateValue(Value instance);
    5668    partial void DeleteValue(Value instance);
    57     partial void InsertBinaryValue(BinaryValue instance);
    58     partial void UpdateBinaryValue(BinaryValue instance);
    59     partial void DeleteBinaryValue(BinaryValue instance);
    60     partial void InsertParameter(Parameter instance);
    61     partial void UpdateParameter(Parameter instance);
    62     partial void DeleteParameter(Parameter instance);
    63     partial void InsertAlgorithm(Algorithm instance);
    64     partial void UpdateAlgorithm(Algorithm instance);
    65     partial void DeleteAlgorithm(Algorithm instance);
    66     partial void InsertProblem(Problem instance);
    67     partial void UpdateProblem(Problem instance);
    68     partial void DeleteProblem(Problem instance);
    69     partial void InsertResult(Result instance);
    70     partial void UpdateResult(Result instance);
    71     partial void DeleteResult(Result instance);
    72     partial void InsertDataType(DataType instance);
    73     partial void UpdateDataType(DataType instance);
    74     partial void DeleteDataType(DataType instance);
    7569    #endregion
    7670   
     
    121115    }
    122116   
    123     public System.Data.Linq.Table<Experiment> Experiments
    124     {
    125       get
    126       {
    127         return this.GetTable<Experiment>();
    128       }
    129     }
    130    
    131117    public System.Data.Linq.Table<AlgorithmUser> AlgorithmUsers
    132118    {
     
    153139    }
    154140   
     141    public System.Data.Linq.Table<DataType> DataTypes
     142    {
     143      get
     144      {
     145        return this.GetTable<DataType>();
     146      }
     147    }
     148   
     149    public System.Data.Linq.Table<ValueName> ValueNames
     150    {
     151      get
     152      {
     153        return this.GetTable<ValueName>();
     154      }
     155    }
     156   
     157    public System.Data.Linq.Table<Algorithm> Algorithms
     158    {
     159      get
     160      {
     161        return this.GetTable<Algorithm>();
     162      }
     163    }
     164   
     165    public System.Data.Linq.Table<Problem> Problems
     166    {
     167      get
     168      {
     169        return this.GetTable<Problem>();
     170      }
     171    }
     172   
     173    public System.Data.Linq.Table<BinaryData> BinaryDatas
     174    {
     175      get
     176      {
     177        return this.GetTable<BinaryData>();
     178      }
     179    }
     180   
    155181    public System.Data.Linq.Table<Run> Runs
    156182    {
     
    166192      {
    167193        return this.GetTable<Value>();
    168       }
    169     }
    170    
    171     public System.Data.Linq.Table<BinaryValue> BinaryValues
    172     {
    173       get
    174       {
    175         return this.GetTable<BinaryValue>();
    176       }
    177     }
    178    
    179     public System.Data.Linq.Table<Parameter> Parameters
    180     {
    181       get
    182       {
    183         return this.GetTable<Parameter>();
    184       }
    185     }
    186    
    187     public System.Data.Linq.Table<Algorithm> Algorithms
    188     {
    189       get
    190       {
    191         return this.GetTable<Algorithm>();
    192       }
    193     }
    194    
    195     public System.Data.Linq.Table<Problem> Problems
    196     {
    197       get
    198       {
    199         return this.GetTable<Problem>();
    200       }
    201     }
    202    
    203     public System.Data.Linq.Table<Result> Results
    204     {
    205       get
    206       {
    207         return this.GetTable<Result>();
    208       }
    209     }
    210    
    211     public System.Data.Linq.Table<DataType> DataTypes
    212     {
    213       get
    214       {
    215         return this.GetTable<DataType>();
    216194      }
    217195    }
     
    494472  }
    495473 
    496   [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Experiment")]
    497   public partial class Experiment : INotifyPropertyChanging, INotifyPropertyChanged
    498   {
    499    
    500     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    501    
    502     private long _Id;
    503    
    504     private long _AlgorithmId;
    505    
    506     private long _ProblemId;
    507    
    508     private EntitySet<Run> _Runs;
    509    
    510     private EntitySet<Parameter> _Parameters;
    511    
    512     private EntityRef<Algorithm> _Algorithm;
    513    
    514     private EntityRef<Problem> _Problem;
    515    
    516     #region Extensibility Method Definitions
    517     partial void OnLoaded();
    518     partial void OnValidate(System.Data.Linq.ChangeAction action);
    519     partial void OnCreated();
    520     partial void OnIdChanging(long value);
    521     partial void OnIdChanged();
    522     partial void OnAlgorithmIdChanging(long value);
    523     partial void OnAlgorithmIdChanged();
    524     partial void OnProblemIdChanging(long value);
    525     partial void OnProblemIdChanged();
    526     #endregion
    527    
    528     public Experiment()
    529     {
    530       this._Runs = new EntitySet<Run>(new Action<Run>(this.attach_Runs), new Action<Run>(this.detach_Runs));
    531       this._Parameters = new EntitySet<Parameter>(new Action<Parameter>(this.attach_Parameters), new Action<Parameter>(this.detach_Parameters));
    532       this._Algorithm = default(EntityRef<Algorithm>);
    533       this._Problem = default(EntityRef<Problem>);
    534       OnCreated();
    535     }
    536    
    537     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
    538     public long Id
    539     {
    540       get
    541       {
    542         return this._Id;
    543       }
    544       set
    545       {
    546         if ((this._Id != value))
    547         {
    548           this.OnIdChanging(value);
    549           this.SendPropertyChanging();
    550           this._Id = value;
    551           this.SendPropertyChanged("Id");
    552           this.OnIdChanged();
    553         }
    554       }
    555     }
    556    
    557     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AlgorithmId", DbType="BigInt NOT NULL")]
    558     public long AlgorithmId
    559     {
    560       get
    561       {
    562         return this._AlgorithmId;
    563       }
    564       set
    565       {
    566         if ((this._AlgorithmId != value))
    567         {
    568           if (this._Algorithm.HasLoadedOrAssignedValue)
    569           {
    570             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    571           }
    572           this.OnAlgorithmIdChanging(value);
    573           this.SendPropertyChanging();
    574           this._AlgorithmId = value;
    575           this.SendPropertyChanged("AlgorithmId");
    576           this.OnAlgorithmIdChanged();
    577         }
    578       }
    579     }
    580    
    581     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProblemId", DbType="BigInt NOT NULL")]
    582     public long ProblemId
    583     {
    584       get
    585       {
    586         return this._ProblemId;
    587       }
    588       set
    589       {
    590         if ((this._ProblemId != value))
    591         {
    592           if (this._Problem.HasLoadedOrAssignedValue)
    593           {
    594             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    595           }
    596           this.OnProblemIdChanging(value);
    597           this.SendPropertyChanging();
    598           this._ProblemId = value;
    599           this.SendPropertyChanged("ProblemId");
    600           this.OnProblemIdChanged();
    601         }
    602       }
    603     }
    604    
    605     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Experiment_Run", Storage="_Runs", ThisKey="Id", OtherKey="ExperimentId")]
    606     public EntitySet<Run> Runs
    607     {
    608       get
    609       {
    610         return this._Runs;
    611       }
    612       set
    613       {
    614         this._Runs.Assign(value);
    615       }
    616     }
    617    
    618     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Experiment_Parameter", Storage="_Parameters", ThisKey="Id", OtherKey="ExperimentId")]
    619     public EntitySet<Parameter> Parameters
    620     {
    621       get
    622       {
    623         return this._Parameters;
    624       }
    625       set
    626       {
    627         this._Parameters.Assign(value);
    628       }
    629     }
    630    
    631     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Algorithm_Experiment", Storage="_Algorithm", ThisKey="AlgorithmId", OtherKey="Id", IsForeignKey=true)]
    632     public Algorithm Algorithm
    633     {
    634       get
    635       {
    636         return this._Algorithm.Entity;
    637       }
    638       set
    639       {
    640         Algorithm previousValue = this._Algorithm.Entity;
    641         if (((previousValue != value)
    642               || (this._Algorithm.HasLoadedOrAssignedValue == false)))
    643         {
    644           this.SendPropertyChanging();
    645           if ((previousValue != null))
    646           {
    647             this._Algorithm.Entity = null;
    648             previousValue.Experiments.Remove(this);
    649           }
    650           this._Algorithm.Entity = value;
    651           if ((value != null))
    652           {
    653             value.Experiments.Add(this);
    654             this._AlgorithmId = value.Id;
    655           }
    656           else
    657           {
    658             this._AlgorithmId = default(long);
    659           }
    660           this.SendPropertyChanged("Algorithm");
    661         }
    662       }
    663     }
    664    
    665     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Problem_Experiment", Storage="_Problem", ThisKey="ProblemId", OtherKey="Id", IsForeignKey=true)]
    666     public Problem Problem
    667     {
    668       get
    669       {
    670         return this._Problem.Entity;
    671       }
    672       set
    673       {
    674         Problem previousValue = this._Problem.Entity;
    675         if (((previousValue != value)
    676               || (this._Problem.HasLoadedOrAssignedValue == false)))
    677         {
    678           this.SendPropertyChanging();
    679           if ((previousValue != null))
    680           {
    681             this._Problem.Entity = null;
    682             previousValue.Experiments.Remove(this);
    683           }
    684           this._Problem.Entity = value;
    685           if ((value != null))
    686           {
    687             value.Experiments.Add(this);
    688             this._ProblemId = value.Id;
    689           }
    690           else
    691           {
    692             this._ProblemId = default(long);
    693           }
    694           this.SendPropertyChanged("Problem");
    695         }
    696       }
    697     }
    698    
    699     public event PropertyChangingEventHandler PropertyChanging;
    700    
    701     public event PropertyChangedEventHandler PropertyChanged;
    702    
    703     protected virtual void SendPropertyChanging()
    704     {
    705       if ((this.PropertyChanging != null))
    706       {
    707         this.PropertyChanging(this, emptyChangingEventArgs);
    708       }
    709     }
    710    
    711     protected virtual void SendPropertyChanged(String propertyName)
    712     {
    713       if ((this.PropertyChanged != null))
    714       {
    715         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    716       }
    717     }
    718    
    719     private void attach_Runs(Run entity)
    720     {
    721       this.SendPropertyChanging();
    722       entity.Experiment = this;
    723     }
    724    
    725     private void detach_Runs(Run entity)
    726     {
    727       this.SendPropertyChanging();
    728       entity.Experiment = null;
    729     }
    730    
    731     private void attach_Parameters(Parameter entity)
    732     {
    733       this.SendPropertyChanging();
    734       entity.Experiment = this;
    735     }
    736    
    737     private void detach_Parameters(Parameter entity)
    738     {
    739       this.SendPropertyChanging();
    740       entity.Experiment = null;
    741     }
    742   }
    743  
    744474  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.AlgorithmUser")]
    745475  public partial class AlgorithmUser : INotifyPropertyChanging, INotifyPropertyChanged
     
    1008738    private string _Description;
    1009739   
     740    private EntitySet<DataType> _DataTypes;
     741   
    1010742    private EntitySet<Algorithm> _Algorithms;
    1011743   
    1012744    private EntitySet<Problem> _Problems;
    1013    
    1014     private EntitySet<DataType> _DataTypes;
    1015745   
    1016746    #region Extensibility Method Definitions
     
    1028758    public Platform()
    1029759    {
     760      this._DataTypes = new EntitySet<DataType>(new Action<DataType>(this.attach_DataTypes), new Action<DataType>(this.detach_DataTypes));
    1030761      this._Algorithms = new EntitySet<Algorithm>(new Action<Algorithm>(this.attach_Algorithms), new Action<Algorithm>(this.detach_Algorithms));
    1031762      this._Problems = new EntitySet<Problem>(new Action<Problem>(this.attach_Problems), new Action<Problem>(this.detach_Problems));
    1032       this._DataTypes = new EntitySet<DataType>(new Action<DataType>(this.attach_DataTypes), new Action<DataType>(this.detach_DataTypes));
    1033763      OnCreated();
    1034764    }
     
    1094824    }
    1095825   
     826    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Platform_DataType", Storage="_DataTypes", ThisKey="Id", OtherKey="PlatformId")]
     827    public EntitySet<DataType> DataTypes
     828    {
     829      get
     830      {
     831        return this._DataTypes;
     832      }
     833      set
     834      {
     835        this._DataTypes.Assign(value);
     836      }
     837    }
     838   
    1096839    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Platform_Algorithm", Storage="_Algorithms", ThisKey="Id", OtherKey="PlatformId")]
    1097840    public EntitySet<Algorithm> Algorithms
     
    1120863    }
    1121864   
    1122     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Platform_DataType", Storage="_DataTypes", ThisKey="Id", OtherKey="PlatformId")]
    1123     public EntitySet<DataType> DataTypes
    1124     {
    1125       get
    1126       {
    1127         return this._DataTypes;
    1128       }
    1129       set
    1130       {
    1131         this._DataTypes.Assign(value);
    1132       }
    1133     }
    1134    
    1135865    public event PropertyChangingEventHandler PropertyChanging;
    1136866   
     
    1153883    }
    1154884   
     885    private void attach_DataTypes(DataType entity)
     886    {
     887      this.SendPropertyChanging();
     888      entity.Platform = this;
     889    }
     890   
     891    private void detach_DataTypes(DataType entity)
     892    {
     893      this.SendPropertyChanging();
     894      entity.Platform = null;
     895    }
     896   
    1155897    private void attach_Algorithms(Algorithm entity)
    1156898    {
     
    1175917      this.SendPropertyChanging();
    1176918      entity.Platform = null;
    1177     }
    1178    
    1179     private void attach_DataTypes(DataType entity)
    1180     {
    1181       this.SendPropertyChanging();
    1182       entity.Platform = this;
    1183     }
    1184    
    1185     private void detach_DataTypes(DataType entity)
    1186     {
    1187       this.SendPropertyChanging();
    1188       entity.Platform = null;
    1189     }
    1190   }
    1191  
    1192   [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Run")]
    1193   public partial class Run : INotifyPropertyChanging, INotifyPropertyChanged
    1194   {
    1195    
    1196     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    1197    
    1198     private long _Id;
    1199    
    1200     private long _ExperimentId;
    1201    
    1202     private long _RandomSeed;
    1203    
    1204     private System.DateTime _CreatedDate;
    1205    
    1206     private System.Guid _UserId;
    1207    
    1208     private System.Guid _ClientId;
    1209    
    1210     private EntitySet<Result> _Results;
    1211    
    1212     private EntityRef<Experiment> _Experiment;
    1213    
    1214     #region Extensibility Method Definitions
    1215     partial void OnLoaded();
    1216     partial void OnValidate(System.Data.Linq.ChangeAction action);
    1217     partial void OnCreated();
    1218     partial void OnIdChanging(long value);
    1219     partial void OnIdChanged();
    1220     partial void OnExperimentIdChanging(long value);
    1221     partial void OnExperimentIdChanged();
    1222     partial void OnRandomSeedChanging(long value);
    1223     partial void OnRandomSeedChanged();
    1224     partial void OnCreatedDateChanging(System.DateTime value);
    1225     partial void OnCreatedDateChanged();
    1226     partial void OnUserIdChanging(System.Guid value);
    1227     partial void OnUserIdChanged();
    1228     partial void OnClientIdChanging(System.Guid value);
    1229     partial void OnClientIdChanged();
    1230     #endregion
    1231    
    1232     public Run()
    1233     {
    1234       this._Results = new EntitySet<Result>(new Action<Result>(this.attach_Results), new Action<Result>(this.detach_Results));
    1235       this._Experiment = default(EntityRef<Experiment>);
    1236       OnCreated();
    1237     }
    1238    
    1239     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
    1240     public long Id
    1241     {
    1242       get
    1243       {
    1244         return this._Id;
    1245       }
    1246       set
    1247       {
    1248         if ((this._Id != value))
    1249         {
    1250           this.OnIdChanging(value);
    1251           this.SendPropertyChanging();
    1252           this._Id = value;
    1253           this.SendPropertyChanged("Id");
    1254           this.OnIdChanged();
    1255         }
    1256       }
    1257     }
    1258    
    1259     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ExperimentId", DbType="BigInt NOT NULL")]
    1260     public long ExperimentId
    1261     {
    1262       get
    1263       {
    1264         return this._ExperimentId;
    1265       }
    1266       set
    1267       {
    1268         if ((this._ExperimentId != value))
    1269         {
    1270           if (this._Experiment.HasLoadedOrAssignedValue)
    1271           {
    1272             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    1273           }
    1274           this.OnExperimentIdChanging(value);
    1275           this.SendPropertyChanging();
    1276           this._ExperimentId = value;
    1277           this.SendPropertyChanged("ExperimentId");
    1278           this.OnExperimentIdChanged();
    1279         }
    1280       }
    1281     }
    1282    
    1283     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RandomSeed", DbType="BigInt NOT NULL")]
    1284     public long RandomSeed
    1285     {
    1286       get
    1287       {
    1288         return this._RandomSeed;
    1289       }
    1290       set
    1291       {
    1292         if ((this._RandomSeed != value))
    1293         {
    1294           this.OnRandomSeedChanging(value);
    1295           this.SendPropertyChanging();
    1296           this._RandomSeed = value;
    1297           this.SendPropertyChanged("RandomSeed");
    1298           this.OnRandomSeedChanged();
    1299         }
    1300       }
    1301     }
    1302    
    1303     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CreatedDate", DbType="DateTime2")]
    1304     public System.DateTime CreatedDate
    1305     {
    1306       get
    1307       {
    1308         return this._CreatedDate;
    1309       }
    1310       set
    1311       {
    1312         if ((this._CreatedDate != value))
    1313         {
    1314           this.OnCreatedDateChanging(value);
    1315           this.SendPropertyChanging();
    1316           this._CreatedDate = value;
    1317           this.SendPropertyChanged("CreatedDate");
    1318           this.OnCreatedDateChanged();
    1319         }
    1320       }
    1321     }
    1322    
    1323     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="UniqueIdentifier NOT NULL")]
    1324     public System.Guid UserId
    1325     {
    1326       get
    1327       {
    1328         return this._UserId;
    1329       }
    1330       set
    1331       {
    1332         if ((this._UserId != value))
    1333         {
    1334           this.OnUserIdChanging(value);
    1335           this.SendPropertyChanging();
    1336           this._UserId = value;
    1337           this.SendPropertyChanged("UserId");
    1338           this.OnUserIdChanged();
    1339         }
    1340       }
    1341     }
    1342    
    1343     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClientId", DbType="UniqueIdentifier NOT NULL")]
    1344     public System.Guid ClientId
    1345     {
    1346       get
    1347       {
    1348         return this._ClientId;
    1349       }
    1350       set
    1351       {
    1352         if ((this._ClientId != value))
    1353         {
    1354           this.OnClientIdChanging(value);
    1355           this.SendPropertyChanging();
    1356           this._ClientId = value;
    1357           this.SendPropertyChanged("ClientId");
    1358           this.OnClientIdChanged();
    1359         }
    1360       }
    1361     }
    1362    
    1363     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Run_Result", Storage="_Results", ThisKey="Id", OtherKey="RunId")]
    1364     public EntitySet<Result> Results
    1365     {
    1366       get
    1367       {
    1368         return this._Results;
    1369       }
    1370       set
    1371       {
    1372         this._Results.Assign(value);
    1373       }
    1374     }
    1375    
    1376     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Experiment_Run", Storage="_Experiment", ThisKey="ExperimentId", OtherKey="Id", IsForeignKey=true)]
    1377     public Experiment Experiment
    1378     {
    1379       get
    1380       {
    1381         return this._Experiment.Entity;
    1382       }
    1383       set
    1384       {
    1385         Experiment previousValue = this._Experiment.Entity;
    1386         if (((previousValue != value)
    1387               || (this._Experiment.HasLoadedOrAssignedValue == false)))
    1388         {
    1389           this.SendPropertyChanging();
    1390           if ((previousValue != null))
    1391           {
    1392             this._Experiment.Entity = null;
    1393             previousValue.Runs.Remove(this);
    1394           }
    1395           this._Experiment.Entity = value;
    1396           if ((value != null))
    1397           {
    1398             value.Runs.Add(this);
    1399             this._ExperimentId = value.Id;
    1400           }
    1401           else
    1402           {
    1403             this._ExperimentId = default(long);
    1404           }
    1405           this.SendPropertyChanged("Experiment");
    1406         }
    1407       }
    1408     }
    1409    
    1410     public event PropertyChangingEventHandler PropertyChanging;
    1411    
    1412     public event PropertyChangedEventHandler PropertyChanged;
    1413    
    1414     protected virtual void SendPropertyChanging()
    1415     {
    1416       if ((this.PropertyChanging != null))
    1417       {
    1418         this.PropertyChanging(this, emptyChangingEventArgs);
    1419       }
    1420     }
    1421    
    1422     protected virtual void SendPropertyChanged(String propertyName)
    1423     {
    1424       if ((this.PropertyChanged != null))
    1425       {
    1426         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    1427       }
    1428     }
    1429    
    1430     private void attach_Results(Result entity)
    1431     {
    1432       this.SendPropertyChanging();
    1433       entity.Run = this;
    1434     }
    1435    
    1436     private void detach_Results(Result entity)
    1437     {
    1438       this.SendPropertyChanging();
    1439       entity.Run = null;
    1440     }
    1441   }
    1442  
    1443   [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.[Values]")]
    1444   public partial class Value : INotifyPropertyChanging, INotifyPropertyChanged
    1445   {
    1446    
    1447     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    1448    
    1449     private long _Id;
    1450    
    1451     private System.Nullable<bool> _Bool;
    1452    
    1453     private System.Nullable<int> _Int;
    1454    
    1455     private System.Nullable<long> _Long;
    1456    
    1457     private System.Nullable<float> _Real;
    1458    
    1459     private System.Nullable<double> _Double;
    1460    
    1461     private string _String;
    1462    
    1463     private System.Data.Linq.Binary _Binary;
    1464    
    1465     #region Extensibility Method Definitions
    1466     partial void OnLoaded();
    1467     partial void OnValidate(System.Data.Linq.ChangeAction action);
    1468     partial void OnCreated();
    1469     partial void OnIdChanging(long value);
    1470     partial void OnIdChanged();
    1471     partial void OnBoolChanging(System.Nullable<bool> value);
    1472     partial void OnBoolChanged();
    1473     partial void OnIntChanging(System.Nullable<int> value);
    1474     partial void OnIntChanged();
    1475     partial void OnLongChanging(System.Nullable<long> value);
    1476     partial void OnLongChanged();
    1477     partial void OnRealChanging(System.Nullable<float> value);
    1478     partial void OnRealChanged();
    1479     partial void OnDoubleChanging(System.Nullable<double> value);
    1480     partial void OnDoubleChanged();
    1481     partial void OnStringChanging(string value);
    1482     partial void OnStringChanged();
    1483     partial void OnBinaryChanging(System.Data.Linq.Binary value);
    1484     partial void OnBinaryChanged();
    1485     #endregion
    1486    
    1487     public Value()
    1488     {
    1489       OnCreated();
    1490     }
    1491    
    1492     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
    1493     public long Id
    1494     {
    1495       get
    1496       {
    1497         return this._Id;
    1498       }
    1499       set
    1500       {
    1501         if ((this._Id != value))
    1502         {
    1503           this.OnIdChanging(value);
    1504           this.SendPropertyChanging();
    1505           this._Id = value;
    1506           this.SendPropertyChanged("Id");
    1507           this.OnIdChanged();
    1508         }
    1509       }
    1510     }
    1511    
    1512     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Bool", DbType="Bit")]
    1513     public System.Nullable<bool> Bool
    1514     {
    1515       get
    1516       {
    1517         return this._Bool;
    1518       }
    1519       set
    1520       {
    1521         if ((this._Bool != value))
    1522         {
    1523           this.OnBoolChanging(value);
    1524           this.SendPropertyChanging();
    1525           this._Bool = value;
    1526           this.SendPropertyChanged("Bool");
    1527           this.OnBoolChanged();
    1528         }
    1529       }
    1530     }
    1531    
    1532     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Int", DbType="Int")]
    1533     public System.Nullable<int> Int
    1534     {
    1535       get
    1536       {
    1537         return this._Int;
    1538       }
    1539       set
    1540       {
    1541         if ((this._Int != value))
    1542         {
    1543           this.OnIntChanging(value);
    1544           this.SendPropertyChanging();
    1545           this._Int = value;
    1546           this.SendPropertyChanged("Int");
    1547           this.OnIntChanged();
    1548         }
    1549       }
    1550     }
    1551    
    1552     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Long", DbType="BigInt")]
    1553     public System.Nullable<long> Long
    1554     {
    1555       get
    1556       {
    1557         return this._Long;
    1558       }
    1559       set
    1560       {
    1561         if ((this._Long != value))
    1562         {
    1563           this.OnLongChanging(value);
    1564           this.SendPropertyChanging();
    1565           this._Long = value;
    1566           this.SendPropertyChanged("Long");
    1567           this.OnLongChanged();
    1568         }
    1569       }
    1570     }
    1571    
    1572     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Real", DbType="Real")]
    1573     public System.Nullable<float> Real
    1574     {
    1575       get
    1576       {
    1577         return this._Real;
    1578       }
    1579       set
    1580       {
    1581         if ((this._Real != value))
    1582         {
    1583           this.OnRealChanging(value);
    1584           this.SendPropertyChanging();
    1585           this._Real = value;
    1586           this.SendPropertyChanged("Real");
    1587           this.OnRealChanged();
    1588         }
    1589       }
    1590     }
    1591    
    1592     [global::System.Data.Linq.Mapping.ColumnAttribute(Name="[Double]", Storage="_Double", DbType="Float")]
    1593     public System.Nullable<double> Double
    1594     {
    1595       get
    1596       {
    1597         return this._Double;
    1598       }
    1599       set
    1600       {
    1601         if ((this._Double != value))
    1602         {
    1603           this.OnDoubleChanging(value);
    1604           this.SendPropertyChanging();
    1605           this._Double = value;
    1606           this.SendPropertyChanged("Double");
    1607           this.OnDoubleChanged();
    1608         }
    1609       }
    1610     }
    1611    
    1612     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_String", DbType="NVarChar(MAX)")]
    1613     public string String
    1614     {
    1615       get
    1616       {
    1617         return this._String;
    1618       }
    1619       set
    1620       {
    1621         if ((this._String != value))
    1622         {
    1623           this.OnStringChanging(value);
    1624           this.SendPropertyChanging();
    1625           this._String = value;
    1626           this.SendPropertyChanged("String");
    1627           this.OnStringChanged();
    1628         }
    1629       }
    1630     }
    1631    
    1632     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Binary", DbType="VarBinary(MAX)", UpdateCheck=UpdateCheck.Never)]
    1633     public System.Data.Linq.Binary Binary
    1634     {
    1635       get
    1636       {
    1637         return this._Binary;
    1638       }
    1639       set
    1640       {
    1641         if ((this._Binary != value))
    1642         {
    1643           this.OnBinaryChanging(value);
    1644           this.SendPropertyChanging();
    1645           this._Binary = value;
    1646           this.SendPropertyChanged("Binary");
    1647           this.OnBinaryChanged();
    1648         }
    1649       }
    1650     }
    1651    
    1652     public event PropertyChangingEventHandler PropertyChanging;
    1653    
    1654     public event PropertyChangedEventHandler PropertyChanged;
    1655    
    1656     protected virtual void SendPropertyChanging()
    1657     {
    1658       if ((this.PropertyChanging != null))
    1659       {
    1660         this.PropertyChanging(this, emptyChangingEventArgs);
    1661       }
    1662     }
    1663    
    1664     protected virtual void SendPropertyChanged(String propertyName)
    1665     {
    1666       if ((this.PropertyChanged != null))
    1667       {
    1668         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    1669       }
    1670     }
    1671   }
    1672  
    1673   [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.BinaryValue")]
    1674   public partial class BinaryValue : INotifyPropertyChanging, INotifyPropertyChanged
    1675   {
    1676    
    1677     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    1678    
    1679     private long _Id;
    1680    
    1681     private System.Data.Linq.Binary _Value;
    1682    
    1683     private EntitySet<Parameter> _Parameters;
    1684    
    1685     private EntitySet<Algorithm> _Algorithms;
    1686    
    1687     private EntitySet<Problem> _Problems;
    1688    
    1689     private EntitySet<Result> _Results;
    1690    
    1691     #region Extensibility Method Definitions
    1692     partial void OnLoaded();
    1693     partial void OnValidate(System.Data.Linq.ChangeAction action);
    1694     partial void OnCreated();
    1695     partial void OnIdChanging(long value);
    1696     partial void OnIdChanged();
    1697     partial void OnValueChanging(System.Data.Linq.Binary value);
    1698     partial void OnValueChanged();
    1699     #endregion
    1700    
    1701     public BinaryValue()
    1702     {
    1703       this._Parameters = new EntitySet<Parameter>(new Action<Parameter>(this.attach_Parameters), new Action<Parameter>(this.detach_Parameters));
    1704       this._Algorithms = new EntitySet<Algorithm>(new Action<Algorithm>(this.attach_Algorithms), new Action<Algorithm>(this.detach_Algorithms));
    1705       this._Problems = new EntitySet<Problem>(new Action<Problem>(this.attach_Problems), new Action<Problem>(this.detach_Problems));
    1706       this._Results = new EntitySet<Result>(new Action<Result>(this.attach_Results), new Action<Result>(this.detach_Results));
    1707       OnCreated();
    1708     }
    1709    
    1710     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
    1711     public long Id
    1712     {
    1713       get
    1714       {
    1715         return this._Id;
    1716       }
    1717       set
    1718       {
    1719         if ((this._Id != value))
    1720         {
    1721           this.OnIdChanging(value);
    1722           this.SendPropertyChanging();
    1723           this._Id = value;
    1724           this.SendPropertyChanged("Id");
    1725           this.OnIdChanged();
    1726         }
    1727       }
    1728     }
    1729    
    1730     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Value", DbType="VarBinary(MAX) NOT NULL", CanBeNull=false, UpdateCheck=UpdateCheck.Never)]
    1731     public System.Data.Linq.Binary Value
    1732     {
    1733       get
    1734       {
    1735         return this._Value;
    1736       }
    1737       set
    1738       {
    1739         if ((this._Value != value))
    1740         {
    1741           this.OnValueChanging(value);
    1742           this.SendPropertyChanging();
    1743           this._Value = value;
    1744           this.SendPropertyChanged("Value");
    1745           this.OnValueChanged();
    1746         }
    1747       }
    1748     }
    1749    
    1750     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="BinaryValue_Parameter", Storage="_Parameters", ThisKey="Id", OtherKey="BinaryValueId")]
    1751     public EntitySet<Parameter> Parameters
    1752     {
    1753       get
    1754       {
    1755         return this._Parameters;
    1756       }
    1757       set
    1758       {
    1759         this._Parameters.Assign(value);
    1760       }
    1761     }
    1762    
    1763     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="BinaryValue_Algorithm", Storage="_Algorithms", ThisKey="Id", OtherKey="BinaryValueId")]
    1764     public EntitySet<Algorithm> Algorithms
    1765     {
    1766       get
    1767       {
    1768         return this._Algorithms;
    1769       }
    1770       set
    1771       {
    1772         this._Algorithms.Assign(value);
    1773       }
    1774     }
    1775    
    1776     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="BinaryValue_Problem", Storage="_Problems", ThisKey="Id", OtherKey="BinaryValueId")]
    1777     public EntitySet<Problem> Problems
    1778     {
    1779       get
    1780       {
    1781         return this._Problems;
    1782       }
    1783       set
    1784       {
    1785         this._Problems.Assign(value);
    1786       }
    1787     }
    1788    
    1789     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="BinaryValue_Result", Storage="_Results", ThisKey="Id", OtherKey="BinaryValueId")]
    1790     public EntitySet<Result> Results
    1791     {
    1792       get
    1793       {
    1794         return this._Results;
    1795       }
    1796       set
    1797       {
    1798         this._Results.Assign(value);
    1799       }
    1800     }
    1801    
    1802     public event PropertyChangingEventHandler PropertyChanging;
    1803    
    1804     public event PropertyChangedEventHandler PropertyChanged;
    1805    
    1806     protected virtual void SendPropertyChanging()
    1807     {
    1808       if ((this.PropertyChanging != null))
    1809       {
    1810         this.PropertyChanging(this, emptyChangingEventArgs);
    1811       }
    1812     }
    1813    
    1814     protected virtual void SendPropertyChanged(String propertyName)
    1815     {
    1816       if ((this.PropertyChanged != null))
    1817       {
    1818         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    1819       }
    1820     }
    1821    
    1822     private void attach_Parameters(Parameter entity)
    1823     {
    1824       this.SendPropertyChanging();
    1825       entity.BinaryValue = this;
    1826     }
    1827    
    1828     private void detach_Parameters(Parameter entity)
    1829     {
    1830       this.SendPropertyChanging();
    1831       entity.BinaryValue = null;
    1832     }
    1833    
    1834     private void attach_Algorithms(Algorithm entity)
    1835     {
    1836       this.SendPropertyChanging();
    1837       entity.BinaryValue = this;
    1838     }
    1839    
    1840     private void detach_Algorithms(Algorithm entity)
    1841     {
    1842       this.SendPropertyChanging();
    1843       entity.BinaryValue = null;
    1844     }
    1845    
    1846     private void attach_Problems(Problem entity)
    1847     {
    1848       this.SendPropertyChanging();
    1849       entity.BinaryValue = this;
    1850     }
    1851    
    1852     private void detach_Problems(Problem entity)
    1853     {
    1854       this.SendPropertyChanging();
    1855       entity.BinaryValue = null;
    1856     }
    1857    
    1858     private void attach_Results(Result entity)
    1859     {
    1860       this.SendPropertyChanging();
    1861       entity.BinaryValue = this;
    1862     }
    1863    
    1864     private void detach_Results(Result entity)
    1865     {
    1866       this.SendPropertyChanging();
    1867       entity.BinaryValue = null;
    1868     }
    1869   }
    1870  
    1871   [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Parameter")]
    1872   public partial class Parameter : INotifyPropertyChanging, INotifyPropertyChanged
    1873   {
    1874    
    1875     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    1876    
    1877     private long _Id;
    1878    
    1879     private long _ExperimentId;
    1880    
    1881     private long _DataTypeId;
    1882    
    1883     private string _Name;
    1884    
    1885     private System.Nullable<bool> _BoolValue;
    1886    
    1887     private System.Nullable<int> _IntValue;
    1888    
    1889     private System.Nullable<long> _LongValue;
    1890    
    1891     private System.Nullable<float> _FloatValue;
    1892    
    1893     private System.Nullable<double> _DoubleValue;
    1894    
    1895     private string _StringValue;
    1896    
    1897     private System.Nullable<long> _BinaryValueId;
    1898    
    1899     private EntityRef<BinaryValue> _BinaryValue;
    1900    
    1901     private EntityRef<Experiment> _Experiment;
    1902    
    1903     private EntityRef<DataType> _DataType;
    1904    
    1905     #region Extensibility Method Definitions
    1906     partial void OnLoaded();
    1907     partial void OnValidate(System.Data.Linq.ChangeAction action);
    1908     partial void OnCreated();
    1909     partial void OnIdChanging(long value);
    1910     partial void OnIdChanged();
    1911     partial void OnExperimentIdChanging(long value);
    1912     partial void OnExperimentIdChanged();
    1913     partial void OnDataTypeIdChanging(long value);
    1914     partial void OnDataTypeIdChanged();
    1915     partial void OnNameChanging(string value);
    1916     partial void OnNameChanged();
    1917     partial void OnBoolValueChanging(System.Nullable<bool> value);
    1918     partial void OnBoolValueChanged();
    1919     partial void OnIntValueChanging(System.Nullable<int> value);
    1920     partial void OnIntValueChanged();
    1921     partial void OnLongValueChanging(System.Nullable<long> value);
    1922     partial void OnLongValueChanged();
    1923     partial void OnFloatValueChanging(System.Nullable<float> value);
    1924     partial void OnFloatValueChanged();
    1925     partial void OnDoubleValueChanging(System.Nullable<double> value);
    1926     partial void OnDoubleValueChanged();
    1927     partial void OnStringValueChanging(string value);
    1928     partial void OnStringValueChanged();
    1929     partial void OnBinaryValueIdChanging(System.Nullable<long> value);
    1930     partial void OnBinaryValueIdChanged();
    1931     #endregion
    1932    
    1933     public Parameter()
    1934     {
    1935       this._BinaryValue = default(EntityRef<BinaryValue>);
    1936       this._Experiment = default(EntityRef<Experiment>);
    1937       this._DataType = default(EntityRef<DataType>);
    1938       OnCreated();
    1939     }
    1940    
    1941     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
    1942     public long Id
    1943     {
    1944       get
    1945       {
    1946         return this._Id;
    1947       }
    1948       set
    1949       {
    1950         if ((this._Id != value))
    1951         {
    1952           this.OnIdChanging(value);
    1953           this.SendPropertyChanging();
    1954           this._Id = value;
    1955           this.SendPropertyChanged("Id");
    1956           this.OnIdChanged();
    1957         }
    1958       }
    1959     }
    1960    
    1961     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ExperimentId", DbType="BigInt NOT NULL")]
    1962     public long ExperimentId
    1963     {
    1964       get
    1965       {
    1966         return this._ExperimentId;
    1967       }
    1968       set
    1969       {
    1970         if ((this._ExperimentId != value))
    1971         {
    1972           if (this._Experiment.HasLoadedOrAssignedValue)
    1973           {
    1974             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    1975           }
    1976           this.OnExperimentIdChanging(value);
    1977           this.SendPropertyChanging();
    1978           this._ExperimentId = value;
    1979           this.SendPropertyChanged("ExperimentId");
    1980           this.OnExperimentIdChanged();
    1981         }
    1982       }
    1983     }
    1984    
    1985     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DataTypeId", DbType="BigInt NOT NULL")]
    1986     public long DataTypeId
    1987     {
    1988       get
    1989       {
    1990         return this._DataTypeId;
    1991       }
    1992       set
    1993       {
    1994         if ((this._DataTypeId != value))
    1995         {
    1996           if (this._DataType.HasLoadedOrAssignedValue)
    1997           {
    1998             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    1999           }
    2000           this.OnDataTypeIdChanging(value);
    2001           this.SendPropertyChanging();
    2002           this._DataTypeId = value;
    2003           this.SendPropertyChanged("DataTypeId");
    2004           this.OnDataTypeIdChanged();
    2005         }
    2006       }
    2007     }
    2008    
    2009     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
    2010     public string Name
    2011     {
    2012       get
    2013       {
    2014         return this._Name;
    2015       }
    2016       set
    2017       {
    2018         if ((this._Name != value))
    2019         {
    2020           this.OnNameChanging(value);
    2021           this.SendPropertyChanging();
    2022           this._Name = value;
    2023           this.SendPropertyChanged("Name");
    2024           this.OnNameChanged();
    2025         }
    2026       }
    2027     }
    2028    
    2029     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_BoolValue", DbType="Bit")]
    2030     public System.Nullable<bool> BoolValue
    2031     {
    2032       get
    2033       {
    2034         return this._BoolValue;
    2035       }
    2036       set
    2037       {
    2038         if ((this._BoolValue != value))
    2039         {
    2040           this.OnBoolValueChanging(value);
    2041           this.SendPropertyChanging();
    2042           this._BoolValue = value;
    2043           this.SendPropertyChanged("BoolValue");
    2044           this.OnBoolValueChanged();
    2045         }
    2046       }
    2047     }
    2048    
    2049     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IntValue", DbType="Int")]
    2050     public System.Nullable<int> IntValue
    2051     {
    2052       get
    2053       {
    2054         return this._IntValue;
    2055       }
    2056       set
    2057       {
    2058         if ((this._IntValue != value))
    2059         {
    2060           this.OnIntValueChanging(value);
    2061           this.SendPropertyChanging();
    2062           this._IntValue = value;
    2063           this.SendPropertyChanged("IntValue");
    2064           this.OnIntValueChanged();
    2065         }
    2066       }
    2067     }
    2068    
    2069     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LongValue", DbType="BigInt")]
    2070     public System.Nullable<long> LongValue
    2071     {
    2072       get
    2073       {
    2074         return this._LongValue;
    2075       }
    2076       set
    2077       {
    2078         if ((this._LongValue != value))
    2079         {
    2080           this.OnLongValueChanging(value);
    2081           this.SendPropertyChanging();
    2082           this._LongValue = value;
    2083           this.SendPropertyChanged("LongValue");
    2084           this.OnLongValueChanged();
    2085         }
    2086       }
    2087     }
    2088    
    2089     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_FloatValue", DbType="Real")]
    2090     public System.Nullable<float> FloatValue
    2091     {
    2092       get
    2093       {
    2094         return this._FloatValue;
    2095       }
    2096       set
    2097       {
    2098         if ((this._FloatValue != value))
    2099         {
    2100           this.OnFloatValueChanging(value);
    2101           this.SendPropertyChanging();
    2102           this._FloatValue = value;
    2103           this.SendPropertyChanged("FloatValue");
    2104           this.OnFloatValueChanged();
    2105         }
    2106       }
    2107     }
    2108    
    2109     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DoubleValue", DbType="Float")]
    2110     public System.Nullable<double> DoubleValue
    2111     {
    2112       get
    2113       {
    2114         return this._DoubleValue;
    2115       }
    2116       set
    2117       {
    2118         if ((this._DoubleValue != value))
    2119         {
    2120           this.OnDoubleValueChanging(value);
    2121           this.SendPropertyChanging();
    2122           this._DoubleValue = value;
    2123           this.SendPropertyChanged("DoubleValue");
    2124           this.OnDoubleValueChanged();
    2125         }
    2126       }
    2127     }
    2128    
    2129     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_StringValue", DbType="NVarChar(MAX)")]
    2130     public string StringValue
    2131     {
    2132       get
    2133       {
    2134         return this._StringValue;
    2135       }
    2136       set
    2137       {
    2138         if ((this._StringValue != value))
    2139         {
    2140           this.OnStringValueChanging(value);
    2141           this.SendPropertyChanging();
    2142           this._StringValue = value;
    2143           this.SendPropertyChanged("StringValue");
    2144           this.OnStringValueChanged();
    2145         }
    2146       }
    2147     }
    2148    
    2149     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_BinaryValueId", DbType="BigInt")]
    2150     public System.Nullable<long> BinaryValueId
    2151     {
    2152       get
    2153       {
    2154         return this._BinaryValueId;
    2155       }
    2156       set
    2157       {
    2158         if ((this._BinaryValueId != value))
    2159         {
    2160           if (this._BinaryValue.HasLoadedOrAssignedValue)
    2161           {
    2162             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    2163           }
    2164           this.OnBinaryValueIdChanging(value);
    2165           this.SendPropertyChanging();
    2166           this._BinaryValueId = value;
    2167           this.SendPropertyChanged("BinaryValueId");
    2168           this.OnBinaryValueIdChanged();
    2169         }
    2170       }
    2171     }
    2172    
    2173     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="BinaryValue_Parameter", Storage="_BinaryValue", ThisKey="BinaryValueId", OtherKey="Id", IsForeignKey=true)]
    2174     public BinaryValue BinaryValue
    2175     {
    2176       get
    2177       {
    2178         return this._BinaryValue.Entity;
    2179       }
    2180       set
    2181       {
    2182         BinaryValue previousValue = this._BinaryValue.Entity;
    2183         if (((previousValue != value)
    2184               || (this._BinaryValue.HasLoadedOrAssignedValue == false)))
    2185         {
    2186           this.SendPropertyChanging();
    2187           if ((previousValue != null))
    2188           {
    2189             this._BinaryValue.Entity = null;
    2190             previousValue.Parameters.Remove(this);
    2191           }
    2192           this._BinaryValue.Entity = value;
    2193           if ((value != null))
    2194           {
    2195             value.Parameters.Add(this);
    2196             this._BinaryValueId = value.Id;
    2197           }
    2198           else
    2199           {
    2200             this._BinaryValueId = default(Nullable<long>);
    2201           }
    2202           this.SendPropertyChanged("BinaryValue");
    2203         }
    2204       }
    2205     }
    2206    
    2207     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Experiment_Parameter", Storage="_Experiment", ThisKey="ExperimentId", OtherKey="Id", IsForeignKey=true)]
    2208     public Experiment Experiment
    2209     {
    2210       get
    2211       {
    2212         return this._Experiment.Entity;
    2213       }
    2214       set
    2215       {
    2216         Experiment previousValue = this._Experiment.Entity;
    2217         if (((previousValue != value)
    2218               || (this._Experiment.HasLoadedOrAssignedValue == false)))
    2219         {
    2220           this.SendPropertyChanging();
    2221           if ((previousValue != null))
    2222           {
    2223             this._Experiment.Entity = null;
    2224             previousValue.Parameters.Remove(this);
    2225           }
    2226           this._Experiment.Entity = value;
    2227           if ((value != null))
    2228           {
    2229             value.Parameters.Add(this);
    2230             this._ExperimentId = value.Id;
    2231           }
    2232           else
    2233           {
    2234             this._ExperimentId = default(long);
    2235           }
    2236           this.SendPropertyChanged("Experiment");
    2237         }
    2238       }
    2239     }
    2240    
    2241     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DataType_Parameter", Storage="_DataType", ThisKey="DataTypeId", OtherKey="Id", IsForeignKey=true)]
    2242     public DataType DataType
    2243     {
    2244       get
    2245       {
    2246         return this._DataType.Entity;
    2247       }
    2248       set
    2249       {
    2250         DataType previousValue = this._DataType.Entity;
    2251         if (((previousValue != value)
    2252               || (this._DataType.HasLoadedOrAssignedValue == false)))
    2253         {
    2254           this.SendPropertyChanging();
    2255           if ((previousValue != null))
    2256           {
    2257             this._DataType.Entity = null;
    2258             previousValue.Parameters.Remove(this);
    2259           }
    2260           this._DataType.Entity = value;
    2261           if ((value != null))
    2262           {
    2263             value.Parameters.Add(this);
    2264             this._DataTypeId = value.Id;
    2265           }
    2266           else
    2267           {
    2268             this._DataTypeId = default(long);
    2269           }
    2270           this.SendPropertyChanged("DataType");
    2271         }
    2272       }
    2273     }
    2274    
    2275     public event PropertyChangingEventHandler PropertyChanging;
    2276    
    2277     public event PropertyChangedEventHandler PropertyChanged;
    2278    
    2279     protected virtual void SendPropertyChanging()
    2280     {
    2281       if ((this.PropertyChanging != null))
    2282       {
    2283         this.PropertyChanging(this, emptyChangingEventArgs);
    2284       }
    2285     }
    2286    
    2287     protected virtual void SendPropertyChanged(String propertyName)
    2288     {
    2289       if ((this.PropertyChanged != null))
    2290       {
    2291         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    2292       }
    2293     }
    2294   }
    2295  
    2296   [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Algorithm")]
    2297   public partial class Algorithm : INotifyPropertyChanging, INotifyPropertyChanged
    2298   {
    2299    
    2300     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    2301    
    2302     private long _Id;
    2303    
    2304     private long _AlgorithmClassId;
    2305    
    2306     private long _PlatformId;
    2307    
    2308     private long _DataTypeId;
    2309    
    2310     private long _BinaryValueId;
    2311    
    2312     private string _Name;
    2313    
    2314     private string _Description;
    2315    
    2316     private EntitySet<Experiment> _Experiments;
    2317    
    2318     private EntitySet<AlgorithmUser> _AlgorithmUsers;
    2319    
    2320     private EntityRef<AlgorithmClass> _AlgorithmClass;
    2321    
    2322     private EntityRef<BinaryValue> _BinaryValue;
    2323    
    2324     private EntityRef<Platform> _Platform;
    2325    
    2326     private EntityRef<DataType> _DataType;
    2327    
    2328     #region Extensibility Method Definitions
    2329     partial void OnLoaded();
    2330     partial void OnValidate(System.Data.Linq.ChangeAction action);
    2331     partial void OnCreated();
    2332     partial void OnIdChanging(long value);
    2333     partial void OnIdChanged();
    2334     partial void OnAlgorithmClassIdChanging(long value);
    2335     partial void OnAlgorithmClassIdChanged();
    2336     partial void OnPlatformIdChanging(long value);
    2337     partial void OnPlatformIdChanged();
    2338     partial void OnDataTypeIdChanging(long value);
    2339     partial void OnDataTypeIdChanged();
    2340     partial void OnBinaryValueIdChanging(long value);
    2341     partial void OnBinaryValueIdChanged();
    2342     partial void OnNameChanging(string value);
    2343     partial void OnNameChanged();
    2344     partial void OnDescriptionChanging(string value);
    2345     partial void OnDescriptionChanged();
    2346     #endregion
    2347    
    2348     public Algorithm()
    2349     {
    2350       this._Experiments = new EntitySet<Experiment>(new Action<Experiment>(this.attach_Experiments), new Action<Experiment>(this.detach_Experiments));
    2351       this._AlgorithmUsers = new EntitySet<AlgorithmUser>(new Action<AlgorithmUser>(this.attach_AlgorithmUsers), new Action<AlgorithmUser>(this.detach_AlgorithmUsers));
    2352       this._AlgorithmClass = default(EntityRef<AlgorithmClass>);
    2353       this._BinaryValue = default(EntityRef<BinaryValue>);
    2354       this._Platform = default(EntityRef<Platform>);
    2355       this._DataType = default(EntityRef<DataType>);
    2356       OnCreated();
    2357     }
    2358    
    2359     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
    2360     public long Id
    2361     {
    2362       get
    2363       {
    2364         return this._Id;
    2365       }
    2366       set
    2367       {
    2368         if ((this._Id != value))
    2369         {
    2370           this.OnIdChanging(value);
    2371           this.SendPropertyChanging();
    2372           this._Id = value;
    2373           this.SendPropertyChanged("Id");
    2374           this.OnIdChanged();
    2375         }
    2376       }
    2377     }
    2378    
    2379     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AlgorithmClassId", DbType="BigInt NOT NULL")]
    2380     public long AlgorithmClassId
    2381     {
    2382       get
    2383       {
    2384         return this._AlgorithmClassId;
    2385       }
    2386       set
    2387       {
    2388         if ((this._AlgorithmClassId != value))
    2389         {
    2390           if (this._AlgorithmClass.HasLoadedOrAssignedValue)
    2391           {
    2392             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    2393           }
    2394           this.OnAlgorithmClassIdChanging(value);
    2395           this.SendPropertyChanging();
    2396           this._AlgorithmClassId = value;
    2397           this.SendPropertyChanged("AlgorithmClassId");
    2398           this.OnAlgorithmClassIdChanged();
    2399         }
    2400       }
    2401     }
    2402    
    2403     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PlatformId", DbType="BigInt NOT NULL")]
    2404     public long PlatformId
    2405     {
    2406       get
    2407       {
    2408         return this._PlatformId;
    2409       }
    2410       set
    2411       {
    2412         if ((this._PlatformId != value))
    2413         {
    2414           if (this._Platform.HasLoadedOrAssignedValue)
    2415           {
    2416             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    2417           }
    2418           this.OnPlatformIdChanging(value);
    2419           this.SendPropertyChanging();
    2420           this._PlatformId = value;
    2421           this.SendPropertyChanged("PlatformId");
    2422           this.OnPlatformIdChanged();
    2423         }
    2424       }
    2425     }
    2426    
    2427     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DataTypeId", DbType="BigInt NOT NULL")]
    2428     public long DataTypeId
    2429     {
    2430       get
    2431       {
    2432         return this._DataTypeId;
    2433       }
    2434       set
    2435       {
    2436         if ((this._DataTypeId != value))
    2437         {
    2438           if (this._DataType.HasLoadedOrAssignedValue)
    2439           {
    2440             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    2441           }
    2442           this.OnDataTypeIdChanging(value);
    2443           this.SendPropertyChanging();
    2444           this._DataTypeId = value;
    2445           this.SendPropertyChanged("DataTypeId");
    2446           this.OnDataTypeIdChanged();
    2447         }
    2448       }
    2449     }
    2450    
    2451     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_BinaryValueId", DbType="BigInt NOT NULL")]
    2452     public long BinaryValueId
    2453     {
    2454       get
    2455       {
    2456         return this._BinaryValueId;
    2457       }
    2458       set
    2459       {
    2460         if ((this._BinaryValueId != value))
    2461         {
    2462           if (this._BinaryValue.HasLoadedOrAssignedValue)
    2463           {
    2464             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    2465           }
    2466           this.OnBinaryValueIdChanging(value);
    2467           this.SendPropertyChanging();
    2468           this._BinaryValueId = value;
    2469           this.SendPropertyChanged("BinaryValueId");
    2470           this.OnBinaryValueIdChanged();
    2471         }
    2472       }
    2473     }
    2474    
    2475     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(200) NOT NULL", CanBeNull=false)]
    2476     public string Name
    2477     {
    2478       get
    2479       {
    2480         return this._Name;
    2481       }
    2482       set
    2483       {
    2484         if ((this._Name != value))
    2485         {
    2486           this.OnNameChanging(value);
    2487           this.SendPropertyChanging();
    2488           this._Name = value;
    2489           this.SendPropertyChanged("Name");
    2490           this.OnNameChanged();
    2491         }
    2492       }
    2493     }
    2494    
    2495     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Description", DbType="NVarChar(MAX)")]
    2496     public string Description
    2497     {
    2498       get
    2499       {
    2500         return this._Description;
    2501       }
    2502       set
    2503       {
    2504         if ((this._Description != value))
    2505         {
    2506           this.OnDescriptionChanging(value);
    2507           this.SendPropertyChanging();
    2508           this._Description = value;
    2509           this.SendPropertyChanged("Description");
    2510           this.OnDescriptionChanged();
    2511         }
    2512       }
    2513     }
    2514    
    2515     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Algorithm_Experiment", Storage="_Experiments", ThisKey="Id", OtherKey="AlgorithmId")]
    2516     public EntitySet<Experiment> Experiments
    2517     {
    2518       get
    2519       {
    2520         return this._Experiments;
    2521       }
    2522       set
    2523       {
    2524         this._Experiments.Assign(value);
    2525       }
    2526     }
    2527    
    2528     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Algorithm_AlgorithmUser", Storage="_AlgorithmUsers", ThisKey="Id", OtherKey="AlgorithmId")]
    2529     public EntitySet<AlgorithmUser> AlgorithmUsers
    2530     {
    2531       get
    2532       {
    2533         return this._AlgorithmUsers;
    2534       }
    2535       set
    2536       {
    2537         this._AlgorithmUsers.Assign(value);
    2538       }
    2539     }
    2540    
    2541     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="AlgorithmClass_Algorithm", Storage="_AlgorithmClass", ThisKey="AlgorithmClassId", OtherKey="Id", IsForeignKey=true)]
    2542     public AlgorithmClass AlgorithmClass
    2543     {
    2544       get
    2545       {
    2546         return this._AlgorithmClass.Entity;
    2547       }
    2548       set
    2549       {
    2550         AlgorithmClass previousValue = this._AlgorithmClass.Entity;
    2551         if (((previousValue != value)
    2552               || (this._AlgorithmClass.HasLoadedOrAssignedValue == false)))
    2553         {
    2554           this.SendPropertyChanging();
    2555           if ((previousValue != null))
    2556           {
    2557             this._AlgorithmClass.Entity = null;
    2558             previousValue.Algorithms.Remove(this);
    2559           }
    2560           this._AlgorithmClass.Entity = value;
    2561           if ((value != null))
    2562           {
    2563             value.Algorithms.Add(this);
    2564             this._AlgorithmClassId = value.Id;
    2565           }
    2566           else
    2567           {
    2568             this._AlgorithmClassId = default(long);
    2569           }
    2570           this.SendPropertyChanged("AlgorithmClass");
    2571         }
    2572       }
    2573     }
    2574    
    2575     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="BinaryValue_Algorithm", Storage="_BinaryValue", ThisKey="BinaryValueId", OtherKey="Id", IsForeignKey=true)]
    2576     public BinaryValue BinaryValue
    2577     {
    2578       get
    2579       {
    2580         return this._BinaryValue.Entity;
    2581       }
    2582       set
    2583       {
    2584         BinaryValue previousValue = this._BinaryValue.Entity;
    2585         if (((previousValue != value)
    2586               || (this._BinaryValue.HasLoadedOrAssignedValue == false)))
    2587         {
    2588           this.SendPropertyChanging();
    2589           if ((previousValue != null))
    2590           {
    2591             this._BinaryValue.Entity = null;
    2592             previousValue.Algorithms.Remove(this);
    2593           }
    2594           this._BinaryValue.Entity = value;
    2595           if ((value != null))
    2596           {
    2597             value.Algorithms.Add(this);
    2598             this._BinaryValueId = value.Id;
    2599           }
    2600           else
    2601           {
    2602             this._BinaryValueId = default(long);
    2603           }
    2604           this.SendPropertyChanged("BinaryValue");
    2605         }
    2606       }
    2607     }
    2608    
    2609     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Platform_Algorithm", Storage="_Platform", ThisKey="PlatformId", OtherKey="Id", IsForeignKey=true)]
    2610     public Platform Platform
    2611     {
    2612       get
    2613       {
    2614         return this._Platform.Entity;
    2615       }
    2616       set
    2617       {
    2618         Platform previousValue = this._Platform.Entity;
    2619         if (((previousValue != value)
    2620               || (this._Platform.HasLoadedOrAssignedValue == false)))
    2621         {
    2622           this.SendPropertyChanging();
    2623           if ((previousValue != null))
    2624           {
    2625             this._Platform.Entity = null;
    2626             previousValue.Algorithms.Remove(this);
    2627           }
    2628           this._Platform.Entity = value;
    2629           if ((value != null))
    2630           {
    2631             value.Algorithms.Add(this);
    2632             this._PlatformId = value.Id;
    2633           }
    2634           else
    2635           {
    2636             this._PlatformId = default(long);
    2637           }
    2638           this.SendPropertyChanged("Platform");
    2639         }
    2640       }
    2641     }
    2642    
    2643     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DataType_Algorithm", Storage="_DataType", ThisKey="DataTypeId", OtherKey="Id", IsForeignKey=true)]
    2644     public DataType DataType
    2645     {
    2646       get
    2647       {
    2648         return this._DataType.Entity;
    2649       }
    2650       set
    2651       {
    2652         DataType previousValue = this._DataType.Entity;
    2653         if (((previousValue != value)
    2654               || (this._DataType.HasLoadedOrAssignedValue == false)))
    2655         {
    2656           this.SendPropertyChanging();
    2657           if ((previousValue != null))
    2658           {
    2659             this._DataType.Entity = null;
    2660             previousValue.Algorithms.Remove(this);
    2661           }
    2662           this._DataType.Entity = value;
    2663           if ((value != null))
    2664           {
    2665             value.Algorithms.Add(this);
    2666             this._DataTypeId = value.Id;
    2667           }
    2668           else
    2669           {
    2670             this._DataTypeId = default(long);
    2671           }
    2672           this.SendPropertyChanged("DataType");
    2673         }
    2674       }
    2675     }
    2676    
    2677     public event PropertyChangingEventHandler PropertyChanging;
    2678    
    2679     public event PropertyChangedEventHandler PropertyChanged;
    2680    
    2681     protected virtual void SendPropertyChanging()
    2682     {
    2683       if ((this.PropertyChanging != null))
    2684       {
    2685         this.PropertyChanging(this, emptyChangingEventArgs);
    2686       }
    2687     }
    2688    
    2689     protected virtual void SendPropertyChanged(String propertyName)
    2690     {
    2691       if ((this.PropertyChanged != null))
    2692       {
    2693         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    2694       }
    2695     }
    2696    
    2697     private void attach_Experiments(Experiment entity)
    2698     {
    2699       this.SendPropertyChanging();
    2700       entity.Algorithm = this;
    2701     }
    2702    
    2703     private void detach_Experiments(Experiment entity)
    2704     {
    2705       this.SendPropertyChanging();
    2706       entity.Algorithm = null;
    2707     }
    2708    
    2709     private void attach_AlgorithmUsers(AlgorithmUser entity)
    2710     {
    2711       this.SendPropertyChanging();
    2712       entity.Algorithm = this;
    2713     }
    2714    
    2715     private void detach_AlgorithmUsers(AlgorithmUser entity)
    2716     {
    2717       this.SendPropertyChanging();
    2718       entity.Algorithm = null;
    2719     }
    2720   }
    2721  
    2722   [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Problem")]
    2723   public partial class Problem : INotifyPropertyChanging, INotifyPropertyChanged
    2724   {
    2725    
    2726     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    2727    
    2728     private long _Id;
    2729    
    2730     private long _ProblemClassId;
    2731    
    2732     private long _PlatformId;
    2733    
    2734     private long _DataTypeId;
    2735    
    2736     private long _BinaryValueId;
    2737    
    2738     private string _Name;
    2739    
    2740     private string _Description;
    2741    
    2742     private EntitySet<Experiment> _Experiments;
    2743    
    2744     private EntitySet<ProblemUser> _ProblemUsers;
    2745    
    2746     private EntityRef<BinaryValue> _BinaryValue;
    2747    
    2748     private EntityRef<Platform> _Platform;
    2749    
    2750     private EntityRef<ProblemClass> _ProblemClass;
    2751    
    2752     private EntityRef<DataType> _DataType;
    2753    
    2754     #region Extensibility Method Definitions
    2755     partial void OnLoaded();
    2756     partial void OnValidate(System.Data.Linq.ChangeAction action);
    2757     partial void OnCreated();
    2758     partial void OnIdChanging(long value);
    2759     partial void OnIdChanged();
    2760     partial void OnProblemClassIdChanging(long value);
    2761     partial void OnProblemClassIdChanged();
    2762     partial void OnPlatformIdChanging(long value);
    2763     partial void OnPlatformIdChanged();
    2764     partial void OnDataTypeIdChanging(long value);
    2765     partial void OnDataTypeIdChanged();
    2766     partial void OnBinaryValueIdChanging(long value);
    2767     partial void OnBinaryValueIdChanged();
    2768     partial void OnNameChanging(string value);
    2769     partial void OnNameChanged();
    2770     partial void OnDescriptionChanging(string value);
    2771     partial void OnDescriptionChanged();
    2772     #endregion
    2773    
    2774     public Problem()
    2775     {
    2776       this._Experiments = new EntitySet<Experiment>(new Action<Experiment>(this.attach_Experiments), new Action<Experiment>(this.detach_Experiments));
    2777       this._ProblemUsers = new EntitySet<ProblemUser>(new Action<ProblemUser>(this.attach_ProblemUsers), new Action<ProblemUser>(this.detach_ProblemUsers));
    2778       this._BinaryValue = default(EntityRef<BinaryValue>);
    2779       this._Platform = default(EntityRef<Platform>);
    2780       this._ProblemClass = default(EntityRef<ProblemClass>);
    2781       this._DataType = default(EntityRef<DataType>);
    2782       OnCreated();
    2783     }
    2784    
    2785     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
    2786     public long Id
    2787     {
    2788       get
    2789       {
    2790         return this._Id;
    2791       }
    2792       set
    2793       {
    2794         if ((this._Id != value))
    2795         {
    2796           this.OnIdChanging(value);
    2797           this.SendPropertyChanging();
    2798           this._Id = value;
    2799           this.SendPropertyChanged("Id");
    2800           this.OnIdChanged();
    2801         }
    2802       }
    2803     }
    2804    
    2805     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProblemClassId", DbType="BigInt NOT NULL")]
    2806     public long ProblemClassId
    2807     {
    2808       get
    2809       {
    2810         return this._ProblemClassId;
    2811       }
    2812       set
    2813       {
    2814         if ((this._ProblemClassId != value))
    2815         {
    2816           if (this._ProblemClass.HasLoadedOrAssignedValue)
    2817           {
    2818             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    2819           }
    2820           this.OnProblemClassIdChanging(value);
    2821           this.SendPropertyChanging();
    2822           this._ProblemClassId = value;
    2823           this.SendPropertyChanged("ProblemClassId");
    2824           this.OnProblemClassIdChanged();
    2825         }
    2826       }
    2827     }
    2828    
    2829     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PlatformId", DbType="BigInt NOT NULL")]
    2830     public long PlatformId
    2831     {
    2832       get
    2833       {
    2834         return this._PlatformId;
    2835       }
    2836       set
    2837       {
    2838         if ((this._PlatformId != value))
    2839         {
    2840           if (this._Platform.HasLoadedOrAssignedValue)
    2841           {
    2842             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    2843           }
    2844           this.OnPlatformIdChanging(value);
    2845           this.SendPropertyChanging();
    2846           this._PlatformId = value;
    2847           this.SendPropertyChanged("PlatformId");
    2848           this.OnPlatformIdChanged();
    2849         }
    2850       }
    2851     }
    2852    
    2853     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DataTypeId", DbType="BigInt NOT NULL")]
    2854     public long DataTypeId
    2855     {
    2856       get
    2857       {
    2858         return this._DataTypeId;
    2859       }
    2860       set
    2861       {
    2862         if ((this._DataTypeId != value))
    2863         {
    2864           if (this._DataType.HasLoadedOrAssignedValue)
    2865           {
    2866             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    2867           }
    2868           this.OnDataTypeIdChanging(value);
    2869           this.SendPropertyChanging();
    2870           this._DataTypeId = value;
    2871           this.SendPropertyChanged("DataTypeId");
    2872           this.OnDataTypeIdChanged();
    2873         }
    2874       }
    2875     }
    2876    
    2877     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_BinaryValueId", DbType="BigInt NOT NULL")]
    2878     public long BinaryValueId
    2879     {
    2880       get
    2881       {
    2882         return this._BinaryValueId;
    2883       }
    2884       set
    2885       {
    2886         if ((this._BinaryValueId != value))
    2887         {
    2888           if (this._BinaryValue.HasLoadedOrAssignedValue)
    2889           {
    2890             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    2891           }
    2892           this.OnBinaryValueIdChanging(value);
    2893           this.SendPropertyChanging();
    2894           this._BinaryValueId = value;
    2895           this.SendPropertyChanged("BinaryValueId");
    2896           this.OnBinaryValueIdChanged();
    2897         }
    2898       }
    2899     }
    2900    
    2901     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(200) NOT NULL", CanBeNull=false)]
    2902     public string Name
    2903     {
    2904       get
    2905       {
    2906         return this._Name;
    2907       }
    2908       set
    2909       {
    2910         if ((this._Name != value))
    2911         {
    2912           this.OnNameChanging(value);
    2913           this.SendPropertyChanging();
    2914           this._Name = value;
    2915           this.SendPropertyChanged("Name");
    2916           this.OnNameChanged();
    2917         }
    2918       }
    2919     }
    2920    
    2921     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Description", DbType="NVarChar(MAX)")]
    2922     public string Description
    2923     {
    2924       get
    2925       {
    2926         return this._Description;
    2927       }
    2928       set
    2929       {
    2930         if ((this._Description != value))
    2931         {
    2932           this.OnDescriptionChanging(value);
    2933           this.SendPropertyChanging();
    2934           this._Description = value;
    2935           this.SendPropertyChanged("Description");
    2936           this.OnDescriptionChanged();
    2937         }
    2938       }
    2939     }
    2940    
    2941     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Problem_Experiment", Storage="_Experiments", ThisKey="Id", OtherKey="ProblemId")]
    2942     public EntitySet<Experiment> Experiments
    2943     {
    2944       get
    2945       {
    2946         return this._Experiments;
    2947       }
    2948       set
    2949       {
    2950         this._Experiments.Assign(value);
    2951       }
    2952     }
    2953    
    2954     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Problem_ProblemUser", Storage="_ProblemUsers", ThisKey="Id", OtherKey="ProblemId")]
    2955     public EntitySet<ProblemUser> ProblemUsers
    2956     {
    2957       get
    2958       {
    2959         return this._ProblemUsers;
    2960       }
    2961       set
    2962       {
    2963         this._ProblemUsers.Assign(value);
    2964       }
    2965     }
    2966    
    2967     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="BinaryValue_Problem", Storage="_BinaryValue", ThisKey="BinaryValueId", OtherKey="Id", IsForeignKey=true)]
    2968     public BinaryValue BinaryValue
    2969     {
    2970       get
    2971       {
    2972         return this._BinaryValue.Entity;
    2973       }
    2974       set
    2975       {
    2976         BinaryValue previousValue = this._BinaryValue.Entity;
    2977         if (((previousValue != value)
    2978               || (this._BinaryValue.HasLoadedOrAssignedValue == false)))
    2979         {
    2980           this.SendPropertyChanging();
    2981           if ((previousValue != null))
    2982           {
    2983             this._BinaryValue.Entity = null;
    2984             previousValue.Problems.Remove(this);
    2985           }
    2986           this._BinaryValue.Entity = value;
    2987           if ((value != null))
    2988           {
    2989             value.Problems.Add(this);
    2990             this._BinaryValueId = value.Id;
    2991           }
    2992           else
    2993           {
    2994             this._BinaryValueId = default(long);
    2995           }
    2996           this.SendPropertyChanged("BinaryValue");
    2997         }
    2998       }
    2999     }
    3000    
    3001     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Platform_Problem", Storage="_Platform", ThisKey="PlatformId", OtherKey="Id", IsForeignKey=true)]
    3002     public Platform Platform
    3003     {
    3004       get
    3005       {
    3006         return this._Platform.Entity;
    3007       }
    3008       set
    3009       {
    3010         Platform previousValue = this._Platform.Entity;
    3011         if (((previousValue != value)
    3012               || (this._Platform.HasLoadedOrAssignedValue == false)))
    3013         {
    3014           this.SendPropertyChanging();
    3015           if ((previousValue != null))
    3016           {
    3017             this._Platform.Entity = null;
    3018             previousValue.Problems.Remove(this);
    3019           }
    3020           this._Platform.Entity = value;
    3021           if ((value != null))
    3022           {
    3023             value.Problems.Add(this);
    3024             this._PlatformId = value.Id;
    3025           }
    3026           else
    3027           {
    3028             this._PlatformId = default(long);
    3029           }
    3030           this.SendPropertyChanged("Platform");
    3031         }
    3032       }
    3033     }
    3034    
    3035     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="ProblemClass_Problem", Storage="_ProblemClass", ThisKey="ProblemClassId", OtherKey="Id", IsForeignKey=true)]
    3036     public ProblemClass ProblemClass
    3037     {
    3038       get
    3039       {
    3040         return this._ProblemClass.Entity;
    3041       }
    3042       set
    3043       {
    3044         ProblemClass previousValue = this._ProblemClass.Entity;
    3045         if (((previousValue != value)
    3046               || (this._ProblemClass.HasLoadedOrAssignedValue == false)))
    3047         {
    3048           this.SendPropertyChanging();
    3049           if ((previousValue != null))
    3050           {
    3051             this._ProblemClass.Entity = null;
    3052             previousValue.Problems.Remove(this);
    3053           }
    3054           this._ProblemClass.Entity = value;
    3055           if ((value != null))
    3056           {
    3057             value.Problems.Add(this);
    3058             this._ProblemClassId = value.Id;
    3059           }
    3060           else
    3061           {
    3062             this._ProblemClassId = default(long);
    3063           }
    3064           this.SendPropertyChanged("ProblemClass");
    3065         }
    3066       }
    3067     }
    3068    
    3069     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DataType_Problem", Storage="_DataType", ThisKey="DataTypeId", OtherKey="Id", IsForeignKey=true)]
    3070     public DataType DataType
    3071     {
    3072       get
    3073       {
    3074         return this._DataType.Entity;
    3075       }
    3076       set
    3077       {
    3078         DataType previousValue = this._DataType.Entity;
    3079         if (((previousValue != value)
    3080               || (this._DataType.HasLoadedOrAssignedValue == false)))
    3081         {
    3082           this.SendPropertyChanging();
    3083           if ((previousValue != null))
    3084           {
    3085             this._DataType.Entity = null;
    3086             previousValue.Problems.Remove(this);
    3087           }
    3088           this._DataType.Entity = value;
    3089           if ((value != null))
    3090           {
    3091             value.Problems.Add(this);
    3092             this._DataTypeId = value.Id;
    3093           }
    3094           else
    3095           {
    3096             this._DataTypeId = default(long);
    3097           }
    3098           this.SendPropertyChanged("DataType");
    3099         }
    3100       }
    3101     }
    3102    
    3103     public event PropertyChangingEventHandler PropertyChanging;
    3104    
    3105     public event PropertyChangedEventHandler PropertyChanged;
    3106    
    3107     protected virtual void SendPropertyChanging()
    3108     {
    3109       if ((this.PropertyChanging != null))
    3110       {
    3111         this.PropertyChanging(this, emptyChangingEventArgs);
    3112       }
    3113     }
    3114    
    3115     protected virtual void SendPropertyChanged(String propertyName)
    3116     {
    3117       if ((this.PropertyChanged != null))
    3118       {
    3119         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    3120       }
    3121     }
    3122    
    3123     private void attach_Experiments(Experiment entity)
    3124     {
    3125       this.SendPropertyChanging();
    3126       entity.Problem = this;
    3127     }
    3128    
    3129     private void detach_Experiments(Experiment entity)
    3130     {
    3131       this.SendPropertyChanging();
    3132       entity.Problem = null;
    3133     }
    3134    
    3135     private void attach_ProblemUsers(ProblemUser entity)
    3136     {
    3137       this.SendPropertyChanging();
    3138       entity.Problem = this;
    3139     }
    3140    
    3141     private void detach_ProblemUsers(ProblemUser entity)
    3142     {
    3143       this.SendPropertyChanging();
    3144       entity.Problem = null;
    3145     }
    3146   }
    3147  
    3148   [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Result")]
    3149   public partial class Result : INotifyPropertyChanging, INotifyPropertyChanged
    3150   {
    3151    
    3152     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    3153    
    3154     private long _Id;
    3155    
    3156     private long _RunId;
    3157    
    3158     private long _DataTypeId;
    3159    
    3160     private string _Name;
    3161    
    3162     private System.Nullable<bool> _BoolValue;
    3163    
    3164     private System.Nullable<int> _IntValue;
    3165    
    3166     private System.Nullable<long> _LongValue;
    3167    
    3168     private System.Nullable<float> _FloatValue;
    3169    
    3170     private System.Nullable<double> _DoubleValue;
    3171    
    3172     private string _StringValue;
    3173    
    3174     private System.Nullable<long> _BinaryValueId;
    3175    
    3176     private EntityRef<BinaryValue> _BinaryValue;
    3177    
    3178     private EntityRef<Run> _Run;
    3179    
    3180     private EntityRef<DataType> _DataType;
    3181    
    3182     #region Extensibility Method Definitions
    3183     partial void OnLoaded();
    3184     partial void OnValidate(System.Data.Linq.ChangeAction action);
    3185     partial void OnCreated();
    3186     partial void OnIdChanging(long value);
    3187     partial void OnIdChanged();
    3188     partial void OnRunIdChanging(long value);
    3189     partial void OnRunIdChanged();
    3190     partial void OnDataTypeIdChanging(long value);
    3191     partial void OnDataTypeIdChanged();
    3192     partial void OnNameChanging(string value);
    3193     partial void OnNameChanged();
    3194     partial void OnBoolValueChanging(System.Nullable<bool> value);
    3195     partial void OnBoolValueChanged();
    3196     partial void OnIntValueChanging(System.Nullable<int> value);
    3197     partial void OnIntValueChanged();
    3198     partial void OnLongValueChanging(System.Nullable<long> value);
    3199     partial void OnLongValueChanged();
    3200     partial void OnFloatValueChanging(System.Nullable<float> value);
    3201     partial void OnFloatValueChanged();
    3202     partial void OnDoubleValueChanging(System.Nullable<double> value);
    3203     partial void OnDoubleValueChanged();
    3204     partial void OnStringValueChanging(string value);
    3205     partial void OnStringValueChanged();
    3206     partial void OnBinaryValueIdChanging(System.Nullable<long> value);
    3207     partial void OnBinaryValueIdChanged();
    3208     #endregion
    3209    
    3210     public Result()
    3211     {
    3212       this._BinaryValue = default(EntityRef<BinaryValue>);
    3213       this._Run = default(EntityRef<Run>);
    3214       this._DataType = default(EntityRef<DataType>);
    3215       OnCreated();
    3216     }
    3217    
    3218     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
    3219     public long Id
    3220     {
    3221       get
    3222       {
    3223         return this._Id;
    3224       }
    3225       set
    3226       {
    3227         if ((this._Id != value))
    3228         {
    3229           this.OnIdChanging(value);
    3230           this.SendPropertyChanging();
    3231           this._Id = value;
    3232           this.SendPropertyChanged("Id");
    3233           this.OnIdChanged();
    3234         }
    3235       }
    3236     }
    3237    
    3238     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RunId", DbType="BigInt NOT NULL")]
    3239     public long RunId
    3240     {
    3241       get
    3242       {
    3243         return this._RunId;
    3244       }
    3245       set
    3246       {
    3247         if ((this._RunId != value))
    3248         {
    3249           if (this._Run.HasLoadedOrAssignedValue)
    3250           {
    3251             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    3252           }
    3253           this.OnRunIdChanging(value);
    3254           this.SendPropertyChanging();
    3255           this._RunId = value;
    3256           this.SendPropertyChanged("RunId");
    3257           this.OnRunIdChanged();
    3258         }
    3259       }
    3260     }
    3261    
    3262     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DataTypeId", DbType="BigInt NOT NULL")]
    3263     public long DataTypeId
    3264     {
    3265       get
    3266       {
    3267         return this._DataTypeId;
    3268       }
    3269       set
    3270       {
    3271         if ((this._DataTypeId != value))
    3272         {
    3273           if (this._DataType.HasLoadedOrAssignedValue)
    3274           {
    3275             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    3276           }
    3277           this.OnDataTypeIdChanging(value);
    3278           this.SendPropertyChanging();
    3279           this._DataTypeId = value;
    3280           this.SendPropertyChanged("DataTypeId");
    3281           this.OnDataTypeIdChanged();
    3282         }
    3283       }
    3284     }
    3285    
    3286     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
    3287     public string Name
    3288     {
    3289       get
    3290       {
    3291         return this._Name;
    3292       }
    3293       set
    3294       {
    3295         if ((this._Name != value))
    3296         {
    3297           this.OnNameChanging(value);
    3298           this.SendPropertyChanging();
    3299           this._Name = value;
    3300           this.SendPropertyChanged("Name");
    3301           this.OnNameChanged();
    3302         }
    3303       }
    3304     }
    3305    
    3306     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_BoolValue", DbType="Bit")]
    3307     public System.Nullable<bool> BoolValue
    3308     {
    3309       get
    3310       {
    3311         return this._BoolValue;
    3312       }
    3313       set
    3314       {
    3315         if ((this._BoolValue != value))
    3316         {
    3317           this.OnBoolValueChanging(value);
    3318           this.SendPropertyChanging();
    3319           this._BoolValue = value;
    3320           this.SendPropertyChanged("BoolValue");
    3321           this.OnBoolValueChanged();
    3322         }
    3323       }
    3324     }
    3325    
    3326     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IntValue", DbType="Int")]
    3327     public System.Nullable<int> IntValue
    3328     {
    3329       get
    3330       {
    3331         return this._IntValue;
    3332       }
    3333       set
    3334       {
    3335         if ((this._IntValue != value))
    3336         {
    3337           this.OnIntValueChanging(value);
    3338           this.SendPropertyChanging();
    3339           this._IntValue = value;
    3340           this.SendPropertyChanged("IntValue");
    3341           this.OnIntValueChanged();
    3342         }
    3343       }
    3344     }
    3345    
    3346     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LongValue", DbType="BigInt")]
    3347     public System.Nullable<long> LongValue
    3348     {
    3349       get
    3350       {
    3351         return this._LongValue;
    3352       }
    3353       set
    3354       {
    3355         if ((this._LongValue != value))
    3356         {
    3357           this.OnLongValueChanging(value);
    3358           this.SendPropertyChanging();
    3359           this._LongValue = value;
    3360           this.SendPropertyChanged("LongValue");
    3361           this.OnLongValueChanged();
    3362         }
    3363       }
    3364     }
    3365    
    3366     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_FloatValue", DbType="Real")]
    3367     public System.Nullable<float> FloatValue
    3368     {
    3369       get
    3370       {
    3371         return this._FloatValue;
    3372       }
    3373       set
    3374       {
    3375         if ((this._FloatValue != value))
    3376         {
    3377           this.OnFloatValueChanging(value);
    3378           this.SendPropertyChanging();
    3379           this._FloatValue = value;
    3380           this.SendPropertyChanged("FloatValue");
    3381           this.OnFloatValueChanged();
    3382         }
    3383       }
    3384     }
    3385    
    3386     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DoubleValue", DbType="Float")]
    3387     public System.Nullable<double> DoubleValue
    3388     {
    3389       get
    3390       {
    3391         return this._DoubleValue;
    3392       }
    3393       set
    3394       {
    3395         if ((this._DoubleValue != value))
    3396         {
    3397           this.OnDoubleValueChanging(value);
    3398           this.SendPropertyChanging();
    3399           this._DoubleValue = value;
    3400           this.SendPropertyChanged("DoubleValue");
    3401           this.OnDoubleValueChanged();
    3402         }
    3403       }
    3404     }
    3405    
    3406     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_StringValue", DbType="NVarChar(MAX)")]
    3407     public string StringValue
    3408     {
    3409       get
    3410       {
    3411         return this._StringValue;
    3412       }
    3413       set
    3414       {
    3415         if ((this._StringValue != value))
    3416         {
    3417           this.OnStringValueChanging(value);
    3418           this.SendPropertyChanging();
    3419           this._StringValue = value;
    3420           this.SendPropertyChanged("StringValue");
    3421           this.OnStringValueChanged();
    3422         }
    3423       }
    3424     }
    3425    
    3426     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_BinaryValueId", DbType="BigInt")]
    3427     public System.Nullable<long> BinaryValueId
    3428     {
    3429       get
    3430       {
    3431         return this._BinaryValueId;
    3432       }
    3433       set
    3434       {
    3435         if ((this._BinaryValueId != value))
    3436         {
    3437           if (this._BinaryValue.HasLoadedOrAssignedValue)
    3438           {
    3439             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    3440           }
    3441           this.OnBinaryValueIdChanging(value);
    3442           this.SendPropertyChanging();
    3443           this._BinaryValueId = value;
    3444           this.SendPropertyChanged("BinaryValueId");
    3445           this.OnBinaryValueIdChanged();
    3446         }
    3447       }
    3448     }
    3449    
    3450     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="BinaryValue_Result", Storage="_BinaryValue", ThisKey="BinaryValueId", OtherKey="Id", IsForeignKey=true)]
    3451     public BinaryValue BinaryValue
    3452     {
    3453       get
    3454       {
    3455         return this._BinaryValue.Entity;
    3456       }
    3457       set
    3458       {
    3459         BinaryValue previousValue = this._BinaryValue.Entity;
    3460         if (((previousValue != value)
    3461               || (this._BinaryValue.HasLoadedOrAssignedValue == false)))
    3462         {
    3463           this.SendPropertyChanging();
    3464           if ((previousValue != null))
    3465           {
    3466             this._BinaryValue.Entity = null;
    3467             previousValue.Results.Remove(this);
    3468           }
    3469           this._BinaryValue.Entity = value;
    3470           if ((value != null))
    3471           {
    3472             value.Results.Add(this);
    3473             this._BinaryValueId = value.Id;
    3474           }
    3475           else
    3476           {
    3477             this._BinaryValueId = default(Nullable<long>);
    3478           }
    3479           this.SendPropertyChanged("BinaryValue");
    3480         }
    3481       }
    3482     }
    3483    
    3484     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Run_Result", Storage="_Run", ThisKey="RunId", OtherKey="Id", IsForeignKey=true)]
    3485     public Run Run
    3486     {
    3487       get
    3488       {
    3489         return this._Run.Entity;
    3490       }
    3491       set
    3492       {
    3493         Run previousValue = this._Run.Entity;
    3494         if (((previousValue != value)
    3495               || (this._Run.HasLoadedOrAssignedValue == false)))
    3496         {
    3497           this.SendPropertyChanging();
    3498           if ((previousValue != null))
    3499           {
    3500             this._Run.Entity = null;
    3501             previousValue.Results.Remove(this);
    3502           }
    3503           this._Run.Entity = value;
    3504           if ((value != null))
    3505           {
    3506             value.Results.Add(this);
    3507             this._RunId = value.Id;
    3508           }
    3509           else
    3510           {
    3511             this._RunId = default(long);
    3512           }
    3513           this.SendPropertyChanged("Run");
    3514         }
    3515       }
    3516     }
    3517    
    3518     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DataType_Result", Storage="_DataType", ThisKey="DataTypeId", OtherKey="Id", IsForeignKey=true)]
    3519     public DataType DataType
    3520     {
    3521       get
    3522       {
    3523         return this._DataType.Entity;
    3524       }
    3525       set
    3526       {
    3527         DataType previousValue = this._DataType.Entity;
    3528         if (((previousValue != value)
    3529               || (this._DataType.HasLoadedOrAssignedValue == false)))
    3530         {
    3531           this.SendPropertyChanging();
    3532           if ((previousValue != null))
    3533           {
    3534             this._DataType.Entity = null;
    3535             previousValue.Results.Remove(this);
    3536           }
    3537           this._DataType.Entity = value;
    3538           if ((value != null))
    3539           {
    3540             value.Results.Add(this);
    3541             this._DataTypeId = value.Id;
    3542           }
    3543           else
    3544           {
    3545             this._DataTypeId = default(long);
    3546           }
    3547           this.SendPropertyChanged("DataType");
    3548         }
    3549       }
    3550     }
    3551    
    3552     public event PropertyChangingEventHandler PropertyChanging;
    3553    
    3554     public event PropertyChangedEventHandler PropertyChanged;
    3555    
    3556     protected virtual void SendPropertyChanging()
    3557     {
    3558       if ((this.PropertyChanging != null))
    3559       {
    3560         this.PropertyChanging(this, emptyChangingEventArgs);
    3561       }
    3562     }
    3563    
    3564     protected virtual void SendPropertyChanged(String propertyName)
    3565     {
    3566       if ((this.PropertyChanged != null))
    3567       {
    3568         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    3569       }
    3570919    }
    3571920  }
     
    3585934    private string _TypeName;
    3586935   
    3587     private EntitySet<Parameter> _Parameters;
    3588    
    3589936    private EntitySet<Algorithm> _Algorithms;
    3590937   
    3591938    private EntitySet<Problem> _Problems;
    3592939   
    3593     private EntitySet<Result> _Results;
     940    private EntitySet<Value> _Values;
    3594941   
    3595942    private EntityRef<Platform> _Platform;
     
    3611958    public DataType()
    3612959    {
    3613       this._Parameters = new EntitySet<Parameter>(new Action<Parameter>(this.attach_Parameters), new Action<Parameter>(this.detach_Parameters));
    3614960      this._Algorithms = new EntitySet<Algorithm>(new Action<Algorithm>(this.attach_Algorithms), new Action<Algorithm>(this.detach_Algorithms));
    3615961      this._Problems = new EntitySet<Problem>(new Action<Problem>(this.attach_Problems), new Action<Problem>(this.detach_Problems));
    3616       this._Results = new EntitySet<Result>(new Action<Result>(this.attach_Results), new Action<Result>(this.detach_Results));
     962      this._Values = new EntitySet<Value>(new Action<Value>(this.attach_Values), new Action<Value>(this.detach_Values));
    3617963      this._Platform = default(EntityRef<Platform>);
    3618964      OnCreated();
     
    36631009    }
    36641010   
    3665     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
     1011    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(200) NOT NULL", CanBeNull=false)]
    36661012    public string Name
    36671013    {
     
    37031049    }
    37041050   
    3705     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DataType_Parameter", Storage="_Parameters", ThisKey="Id", OtherKey="DataTypeId")]
    3706     public EntitySet<Parameter> Parameters
    3707     {
    3708       get
    3709       {
    3710         return this._Parameters;
    3711       }
    3712       set
    3713       {
    3714         this._Parameters.Assign(value);
    3715       }
    3716     }
    3717    
    37181051    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DataType_Algorithm", Storage="_Algorithms", ThisKey="Id", OtherKey="DataTypeId")]
    37191052    public EntitySet<Algorithm> Algorithms
     
    37421075    }
    37431076   
    3744     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DataType_Result", Storage="_Results", ThisKey="Id", OtherKey="DataTypeId")]
    3745     public EntitySet<Result> Results
    3746     {
    3747       get
    3748       {
    3749         return this._Results;
    3750       }
    3751       set
    3752       {
    3753         this._Results.Assign(value);
     1077    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DataType_Value", Storage="_Values", ThisKey="Id", OtherKey="DataTypeId")]
     1078    public EntitySet<Value> Values
     1079    {
     1080      get
     1081      {
     1082        return this._Values;
     1083      }
     1084      set
     1085      {
     1086        this._Values.Assign(value);
    37541087      }
    37551088    }
     
    38091142    }
    38101143   
    3811     private void attach_Parameters(Parameter entity)
     1144    private void attach_Algorithms(Algorithm entity)
    38121145    {
    38131146      this.SendPropertyChanging();
     
    38151148    }
    38161149   
    3817     private void detach_Parameters(Parameter entity)
     1150    private void detach_Algorithms(Algorithm entity)
    38181151    {
    38191152      this.SendPropertyChanging();
     
    38211154    }
    38221155   
     1156    private void attach_Problems(Problem entity)
     1157    {
     1158      this.SendPropertyChanging();
     1159      entity.DataType = this;
     1160    }
     1161   
     1162    private void detach_Problems(Problem entity)
     1163    {
     1164      this.SendPropertyChanging();
     1165      entity.DataType = null;
     1166    }
     1167   
     1168    private void attach_Values(Value entity)
     1169    {
     1170      this.SendPropertyChanging();
     1171      entity.DataType = this;
     1172    }
     1173   
     1174    private void detach_Values(Value entity)
     1175    {
     1176      this.SendPropertyChanging();
     1177      entity.DataType = null;
     1178    }
     1179  }
     1180 
     1181  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ValueName")]
     1182  public partial class ValueName : INotifyPropertyChanging, INotifyPropertyChanged
     1183  {
     1184   
     1185    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
     1186   
     1187    private long _Id;
     1188   
     1189    private string _Name;
     1190   
     1191    private ValueNameCategory _Category;
     1192   
     1193    private ValueNameType _Type;
     1194   
     1195    private EntitySet<Value> _Values;
     1196   
     1197    #region Extensibility Method Definitions
     1198    partial void OnLoaded();
     1199    partial void OnValidate(System.Data.Linq.ChangeAction action);
     1200    partial void OnCreated();
     1201    partial void OnIdChanging(long value);
     1202    partial void OnIdChanged();
     1203    partial void OnNameChanging(string value);
     1204    partial void OnNameChanged();
     1205    partial void OnCategoryChanging(ValueNameCategory value);
     1206    partial void OnCategoryChanged();
     1207    partial void OnTypeChanging(ValueNameType value);
     1208    partial void OnTypeChanged();
     1209    #endregion
     1210   
     1211    public ValueName()
     1212    {
     1213      this._Values = new EntitySet<Value>(new Action<Value>(this.attach_Values), new Action<Value>(this.detach_Values));
     1214      OnCreated();
     1215    }
     1216   
     1217    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
     1218    public long Id
     1219    {
     1220      get
     1221      {
     1222        return this._Id;
     1223      }
     1224      set
     1225      {
     1226        if ((this._Id != value))
     1227        {
     1228          this.OnIdChanging(value);
     1229          this.SendPropertyChanging();
     1230          this._Id = value;
     1231          this.SendPropertyChanged("Id");
     1232          this.OnIdChanged();
     1233        }
     1234      }
     1235    }
     1236   
     1237    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(200) NOT NULL", CanBeNull=false)]
     1238    public string Name
     1239    {
     1240      get
     1241      {
     1242        return this._Name;
     1243      }
     1244      set
     1245      {
     1246        if ((this._Name != value))
     1247        {
     1248          this.OnNameChanging(value);
     1249          this.SendPropertyChanging();
     1250          this._Name = value;
     1251          this.SendPropertyChanged("Name");
     1252          this.OnNameChanged();
     1253        }
     1254      }
     1255    }
     1256   
     1257    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Category", DbType="TinyInt NOT NULL", CanBeNull=false)]
     1258    public ValueNameCategory Category
     1259    {
     1260      get
     1261      {
     1262        return this._Category;
     1263      }
     1264      set
     1265      {
     1266        if ((this._Category != value))
     1267        {
     1268          this.OnCategoryChanging(value);
     1269          this.SendPropertyChanging();
     1270          this._Category = value;
     1271          this.SendPropertyChanged("Category");
     1272          this.OnCategoryChanged();
     1273        }
     1274      }
     1275    }
     1276   
     1277    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Type", DbType="TinyInt NOT NULL", CanBeNull=false)]
     1278    public ValueNameType Type
     1279    {
     1280      get
     1281      {
     1282        return this._Type;
     1283      }
     1284      set
     1285      {
     1286        if ((this._Type != value))
     1287        {
     1288          this.OnTypeChanging(value);
     1289          this.SendPropertyChanging();
     1290          this._Type = value;
     1291          this.SendPropertyChanged("Type");
     1292          this.OnTypeChanged();
     1293        }
     1294      }
     1295    }
     1296   
     1297    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="ValueName_Value", Storage="_Values", ThisKey="Id", OtherKey="ValueNameId")]
     1298    public EntitySet<Value> Values
     1299    {
     1300      get
     1301      {
     1302        return this._Values;
     1303      }
     1304      set
     1305      {
     1306        this._Values.Assign(value);
     1307      }
     1308    }
     1309   
     1310    public event PropertyChangingEventHandler PropertyChanging;
     1311   
     1312    public event PropertyChangedEventHandler PropertyChanged;
     1313   
     1314    protected virtual void SendPropertyChanging()
     1315    {
     1316      if ((this.PropertyChanging != null))
     1317      {
     1318        this.PropertyChanging(this, emptyChangingEventArgs);
     1319      }
     1320    }
     1321   
     1322    protected virtual void SendPropertyChanged(String propertyName)
     1323    {
     1324      if ((this.PropertyChanged != null))
     1325      {
     1326        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
     1327      }
     1328    }
     1329   
     1330    private void attach_Values(Value entity)
     1331    {
     1332      this.SendPropertyChanging();
     1333      entity.ValueName = this;
     1334    }
     1335   
     1336    private void detach_Values(Value entity)
     1337    {
     1338      this.SendPropertyChanging();
     1339      entity.ValueName = null;
     1340    }
     1341  }
     1342 
     1343  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Algorithm")]
     1344  public partial class Algorithm : INotifyPropertyChanging, INotifyPropertyChanged
     1345  {
     1346   
     1347    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
     1348   
     1349    private long _Id;
     1350   
     1351    private long _AlgorithmClassId;
     1352   
     1353    private long _PlatformId;
     1354   
     1355    private long _DataTypeId;
     1356   
     1357    private long _BinaryDataId;
     1358   
     1359    private string _Name;
     1360   
     1361    private string _Description;
     1362   
     1363    private EntitySet<AlgorithmUser> _AlgorithmUsers;
     1364   
     1365    private EntitySet<Run> _Runs;
     1366   
     1367    private EntityRef<AlgorithmClass> _AlgorithmClass;
     1368   
     1369    private EntityRef<DataType> _DataType;
     1370   
     1371    private EntityRef<Platform> _Platform;
     1372   
     1373    private EntityRef<BinaryData> _BinaryData;
     1374   
     1375    #region Extensibility Method Definitions
     1376    partial void OnLoaded();
     1377    partial void OnValidate(System.Data.Linq.ChangeAction action);
     1378    partial void OnCreated();
     1379    partial void OnIdChanging(long value);
     1380    partial void OnIdChanged();
     1381    partial void OnAlgorithmClassIdChanging(long value);
     1382    partial void OnAlgorithmClassIdChanged();
     1383    partial void OnPlatformIdChanging(long value);
     1384    partial void OnPlatformIdChanged();
     1385    partial void OnDataTypeIdChanging(long value);
     1386    partial void OnDataTypeIdChanged();
     1387    partial void OnBinaryDataIdChanging(long value);
     1388    partial void OnBinaryDataIdChanged();
     1389    partial void OnNameChanging(string value);
     1390    partial void OnNameChanged();
     1391    partial void OnDescriptionChanging(string value);
     1392    partial void OnDescriptionChanged();
     1393    #endregion
     1394   
     1395    public Algorithm()
     1396    {
     1397      this._AlgorithmUsers = new EntitySet<AlgorithmUser>(new Action<AlgorithmUser>(this.attach_AlgorithmUsers), new Action<AlgorithmUser>(this.detach_AlgorithmUsers));
     1398      this._Runs = new EntitySet<Run>(new Action<Run>(this.attach_Runs), new Action<Run>(this.detach_Runs));
     1399      this._AlgorithmClass = default(EntityRef<AlgorithmClass>);
     1400      this._DataType = default(EntityRef<DataType>);
     1401      this._Platform = default(EntityRef<Platform>);
     1402      this._BinaryData = default(EntityRef<BinaryData>);
     1403      OnCreated();
     1404    }
     1405   
     1406    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
     1407    public long Id
     1408    {
     1409      get
     1410      {
     1411        return this._Id;
     1412      }
     1413      set
     1414      {
     1415        if ((this._Id != value))
     1416        {
     1417          this.OnIdChanging(value);
     1418          this.SendPropertyChanging();
     1419          this._Id = value;
     1420          this.SendPropertyChanged("Id");
     1421          this.OnIdChanged();
     1422        }
     1423      }
     1424    }
     1425   
     1426    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AlgorithmClassId", DbType="BigInt NOT NULL")]
     1427    public long AlgorithmClassId
     1428    {
     1429      get
     1430      {
     1431        return this._AlgorithmClassId;
     1432      }
     1433      set
     1434      {
     1435        if ((this._AlgorithmClassId != value))
     1436        {
     1437          if (this._AlgorithmClass.HasLoadedOrAssignedValue)
     1438          {
     1439            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     1440          }
     1441          this.OnAlgorithmClassIdChanging(value);
     1442          this.SendPropertyChanging();
     1443          this._AlgorithmClassId = value;
     1444          this.SendPropertyChanged("AlgorithmClassId");
     1445          this.OnAlgorithmClassIdChanged();
     1446        }
     1447      }
     1448    }
     1449   
     1450    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PlatformId", DbType="BigInt NOT NULL")]
     1451    public long PlatformId
     1452    {
     1453      get
     1454      {
     1455        return this._PlatformId;
     1456      }
     1457      set
     1458      {
     1459        if ((this._PlatformId != value))
     1460        {
     1461          if (this._Platform.HasLoadedOrAssignedValue)
     1462          {
     1463            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     1464          }
     1465          this.OnPlatformIdChanging(value);
     1466          this.SendPropertyChanging();
     1467          this._PlatformId = value;
     1468          this.SendPropertyChanged("PlatformId");
     1469          this.OnPlatformIdChanged();
     1470        }
     1471      }
     1472    }
     1473   
     1474    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DataTypeId", DbType="BigInt NOT NULL")]
     1475    public long DataTypeId
     1476    {
     1477      get
     1478      {
     1479        return this._DataTypeId;
     1480      }
     1481      set
     1482      {
     1483        if ((this._DataTypeId != value))
     1484        {
     1485          if (this._DataType.HasLoadedOrAssignedValue)
     1486          {
     1487            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     1488          }
     1489          this.OnDataTypeIdChanging(value);
     1490          this.SendPropertyChanging();
     1491          this._DataTypeId = value;
     1492          this.SendPropertyChanged("DataTypeId");
     1493          this.OnDataTypeIdChanged();
     1494        }
     1495      }
     1496    }
     1497   
     1498    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_BinaryDataId", DbType="BigInt NOT NULL")]
     1499    public long BinaryDataId
     1500    {
     1501      get
     1502      {
     1503        return this._BinaryDataId;
     1504      }
     1505      set
     1506      {
     1507        if ((this._BinaryDataId != value))
     1508        {
     1509          if (this._BinaryData.HasLoadedOrAssignedValue)
     1510          {
     1511            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     1512          }
     1513          this.OnBinaryDataIdChanging(value);
     1514          this.SendPropertyChanging();
     1515          this._BinaryDataId = value;
     1516          this.SendPropertyChanged("BinaryDataId");
     1517          this.OnBinaryDataIdChanged();
     1518        }
     1519      }
     1520    }
     1521   
     1522    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(200) NOT NULL", CanBeNull=false)]
     1523    public string Name
     1524    {
     1525      get
     1526      {
     1527        return this._Name;
     1528      }
     1529      set
     1530      {
     1531        if ((this._Name != value))
     1532        {
     1533          this.OnNameChanging(value);
     1534          this.SendPropertyChanging();
     1535          this._Name = value;
     1536          this.SendPropertyChanged("Name");
     1537          this.OnNameChanged();
     1538        }
     1539      }
     1540    }
     1541   
     1542    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Description", DbType="NVarChar(MAX)")]
     1543    public string Description
     1544    {
     1545      get
     1546      {
     1547        return this._Description;
     1548      }
     1549      set
     1550      {
     1551        if ((this._Description != value))
     1552        {
     1553          this.OnDescriptionChanging(value);
     1554          this.SendPropertyChanging();
     1555          this._Description = value;
     1556          this.SendPropertyChanged("Description");
     1557          this.OnDescriptionChanged();
     1558        }
     1559      }
     1560    }
     1561   
     1562    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Algorithm_AlgorithmUser", Storage="_AlgorithmUsers", ThisKey="Id", OtherKey="AlgorithmId")]
     1563    public EntitySet<AlgorithmUser> AlgorithmUsers
     1564    {
     1565      get
     1566      {
     1567        return this._AlgorithmUsers;
     1568      }
     1569      set
     1570      {
     1571        this._AlgorithmUsers.Assign(value);
     1572      }
     1573    }
     1574   
     1575    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Algorithm_Run", Storage="_Runs", ThisKey="Id", OtherKey="AlgorithmId")]
     1576    public EntitySet<Run> Runs
     1577    {
     1578      get
     1579      {
     1580        return this._Runs;
     1581      }
     1582      set
     1583      {
     1584        this._Runs.Assign(value);
     1585      }
     1586    }
     1587   
     1588    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="AlgorithmClass_Algorithm", Storage="_AlgorithmClass", ThisKey="AlgorithmClassId", OtherKey="Id", IsForeignKey=true)]
     1589    public AlgorithmClass AlgorithmClass
     1590    {
     1591      get
     1592      {
     1593        return this._AlgorithmClass.Entity;
     1594      }
     1595      set
     1596      {
     1597        AlgorithmClass previousValue = this._AlgorithmClass.Entity;
     1598        if (((previousValue != value)
     1599              || (this._AlgorithmClass.HasLoadedOrAssignedValue == false)))
     1600        {
     1601          this.SendPropertyChanging();
     1602          if ((previousValue != null))
     1603          {
     1604            this._AlgorithmClass.Entity = null;
     1605            previousValue.Algorithms.Remove(this);
     1606          }
     1607          this._AlgorithmClass.Entity = value;
     1608          if ((value != null))
     1609          {
     1610            value.Algorithms.Add(this);
     1611            this._AlgorithmClassId = value.Id;
     1612          }
     1613          else
     1614          {
     1615            this._AlgorithmClassId = default(long);
     1616          }
     1617          this.SendPropertyChanged("AlgorithmClass");
     1618        }
     1619      }
     1620    }
     1621   
     1622    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DataType_Algorithm", Storage="_DataType", ThisKey="DataTypeId", OtherKey="Id", IsForeignKey=true)]
     1623    public DataType DataType
     1624    {
     1625      get
     1626      {
     1627        return this._DataType.Entity;
     1628      }
     1629      set
     1630      {
     1631        DataType previousValue = this._DataType.Entity;
     1632        if (((previousValue != value)
     1633              || (this._DataType.HasLoadedOrAssignedValue == false)))
     1634        {
     1635          this.SendPropertyChanging();
     1636          if ((previousValue != null))
     1637          {
     1638            this._DataType.Entity = null;
     1639            previousValue.Algorithms.Remove(this);
     1640          }
     1641          this._DataType.Entity = value;
     1642          if ((value != null))
     1643          {
     1644            value.Algorithms.Add(this);
     1645            this._DataTypeId = value.Id;
     1646          }
     1647          else
     1648          {
     1649            this._DataTypeId = default(long);
     1650          }
     1651          this.SendPropertyChanged("DataType");
     1652        }
     1653      }
     1654    }
     1655   
     1656    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Platform_Algorithm", Storage="_Platform", ThisKey="PlatformId", OtherKey="Id", IsForeignKey=true)]
     1657    public Platform Platform
     1658    {
     1659      get
     1660      {
     1661        return this._Platform.Entity;
     1662      }
     1663      set
     1664      {
     1665        Platform previousValue = this._Platform.Entity;
     1666        if (((previousValue != value)
     1667              || (this._Platform.HasLoadedOrAssignedValue == false)))
     1668        {
     1669          this.SendPropertyChanging();
     1670          if ((previousValue != null))
     1671          {
     1672            this._Platform.Entity = null;
     1673            previousValue.Algorithms.Remove(this);
     1674          }
     1675          this._Platform.Entity = value;
     1676          if ((value != null))
     1677          {
     1678            value.Algorithms.Add(this);
     1679            this._PlatformId = value.Id;
     1680          }
     1681          else
     1682          {
     1683            this._PlatformId = default(long);
     1684          }
     1685          this.SendPropertyChanged("Platform");
     1686        }
     1687      }
     1688    }
     1689   
     1690    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="BinaryData_Algorithm", Storage="_BinaryData", ThisKey="BinaryDataId", OtherKey="Id", IsForeignKey=true)]
     1691    public BinaryData BinaryData
     1692    {
     1693      get
     1694      {
     1695        return this._BinaryData.Entity;
     1696      }
     1697      set
     1698      {
     1699        BinaryData previousValue = this._BinaryData.Entity;
     1700        if (((previousValue != value)
     1701              || (this._BinaryData.HasLoadedOrAssignedValue == false)))
     1702        {
     1703          this.SendPropertyChanging();
     1704          if ((previousValue != null))
     1705          {
     1706            this._BinaryData.Entity = null;
     1707            previousValue.Algorithms.Remove(this);
     1708          }
     1709          this._BinaryData.Entity = value;
     1710          if ((value != null))
     1711          {
     1712            value.Algorithms.Add(this);
     1713            this._BinaryDataId = value.Id;
     1714          }
     1715          else
     1716          {
     1717            this._BinaryDataId = default(long);
     1718          }
     1719          this.SendPropertyChanged("BinaryData");
     1720        }
     1721      }
     1722    }
     1723   
     1724    public event PropertyChangingEventHandler PropertyChanging;
     1725   
     1726    public event PropertyChangedEventHandler PropertyChanged;
     1727   
     1728    protected virtual void SendPropertyChanging()
     1729    {
     1730      if ((this.PropertyChanging != null))
     1731      {
     1732        this.PropertyChanging(this, emptyChangingEventArgs);
     1733      }
     1734    }
     1735   
     1736    protected virtual void SendPropertyChanged(String propertyName)
     1737    {
     1738      if ((this.PropertyChanged != null))
     1739      {
     1740        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
     1741      }
     1742    }
     1743   
     1744    private void attach_AlgorithmUsers(AlgorithmUser entity)
     1745    {
     1746      this.SendPropertyChanging();
     1747      entity.Algorithm = this;
     1748    }
     1749   
     1750    private void detach_AlgorithmUsers(AlgorithmUser entity)
     1751    {
     1752      this.SendPropertyChanging();
     1753      entity.Algorithm = null;
     1754    }
     1755   
     1756    private void attach_Runs(Run entity)
     1757    {
     1758      this.SendPropertyChanging();
     1759      entity.Algorithm = this;
     1760    }
     1761   
     1762    private void detach_Runs(Run entity)
     1763    {
     1764      this.SendPropertyChanging();
     1765      entity.Algorithm = null;
     1766    }
     1767  }
     1768 
     1769  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Problem")]
     1770  public partial class Problem : INotifyPropertyChanging, INotifyPropertyChanged
     1771  {
     1772   
     1773    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
     1774   
     1775    private long _Id;
     1776   
     1777    private long _ProblemClassId;
     1778   
     1779    private long _PlatformId;
     1780   
     1781    private long _DataTypeId;
     1782   
     1783    private long _BinaryDataId;
     1784   
     1785    private string _Name;
     1786   
     1787    private string _Description;
     1788   
     1789    private EntitySet<ProblemUser> _ProblemUsers;
     1790   
     1791    private EntitySet<Run> _Runs;
     1792   
     1793    private EntityRef<DataType> _DataType;
     1794   
     1795    private EntityRef<Platform> _Platform;
     1796   
     1797    private EntityRef<ProblemClass> _ProblemClass;
     1798   
     1799    private EntityRef<BinaryData> _BinaryData;
     1800   
     1801    #region Extensibility Method Definitions
     1802    partial void OnLoaded();
     1803    partial void OnValidate(System.Data.Linq.ChangeAction action);
     1804    partial void OnCreated();
     1805    partial void OnIdChanging(long value);
     1806    partial void OnIdChanged();
     1807    partial void OnProblemClassIdChanging(long value);
     1808    partial void OnProblemClassIdChanged();
     1809    partial void OnPlatformIdChanging(long value);
     1810    partial void OnPlatformIdChanged();
     1811    partial void OnDataTypeIdChanging(long value);
     1812    partial void OnDataTypeIdChanged();
     1813    partial void OnBinaryDataIdChanging(long value);
     1814    partial void OnBinaryDataIdChanged();
     1815    partial void OnNameChanging(string value);
     1816    partial void OnNameChanged();
     1817    partial void OnDescriptionChanging(string value);
     1818    partial void OnDescriptionChanged();
     1819    #endregion
     1820   
     1821    public Problem()
     1822    {
     1823      this._ProblemUsers = new EntitySet<ProblemUser>(new Action<ProblemUser>(this.attach_ProblemUsers), new Action<ProblemUser>(this.detach_ProblemUsers));
     1824      this._Runs = new EntitySet<Run>(new Action<Run>(this.attach_Runs), new Action<Run>(this.detach_Runs));
     1825      this._DataType = default(EntityRef<DataType>);
     1826      this._Platform = default(EntityRef<Platform>);
     1827      this._ProblemClass = default(EntityRef<ProblemClass>);
     1828      this._BinaryData = default(EntityRef<BinaryData>);
     1829      OnCreated();
     1830    }
     1831   
     1832    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
     1833    public long Id
     1834    {
     1835      get
     1836      {
     1837        return this._Id;
     1838      }
     1839      set
     1840      {
     1841        if ((this._Id != value))
     1842        {
     1843          this.OnIdChanging(value);
     1844          this.SendPropertyChanging();
     1845          this._Id = value;
     1846          this.SendPropertyChanged("Id");
     1847          this.OnIdChanged();
     1848        }
     1849      }
     1850    }
     1851   
     1852    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProblemClassId", DbType="BigInt NOT NULL")]
     1853    public long ProblemClassId
     1854    {
     1855      get
     1856      {
     1857        return this._ProblemClassId;
     1858      }
     1859      set
     1860      {
     1861        if ((this._ProblemClassId != value))
     1862        {
     1863          if (this._ProblemClass.HasLoadedOrAssignedValue)
     1864          {
     1865            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     1866          }
     1867          this.OnProblemClassIdChanging(value);
     1868          this.SendPropertyChanging();
     1869          this._ProblemClassId = value;
     1870          this.SendPropertyChanged("ProblemClassId");
     1871          this.OnProblemClassIdChanged();
     1872        }
     1873      }
     1874    }
     1875   
     1876    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PlatformId", DbType="BigInt NOT NULL")]
     1877    public long PlatformId
     1878    {
     1879      get
     1880      {
     1881        return this._PlatformId;
     1882      }
     1883      set
     1884      {
     1885        if ((this._PlatformId != value))
     1886        {
     1887          if (this._Platform.HasLoadedOrAssignedValue)
     1888          {
     1889            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     1890          }
     1891          this.OnPlatformIdChanging(value);
     1892          this.SendPropertyChanging();
     1893          this._PlatformId = value;
     1894          this.SendPropertyChanged("PlatformId");
     1895          this.OnPlatformIdChanged();
     1896        }
     1897      }
     1898    }
     1899   
     1900    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DataTypeId", DbType="BigInt NOT NULL")]
     1901    public long DataTypeId
     1902    {
     1903      get
     1904      {
     1905        return this._DataTypeId;
     1906      }
     1907      set
     1908      {
     1909        if ((this._DataTypeId != value))
     1910        {
     1911          if (this._DataType.HasLoadedOrAssignedValue)
     1912          {
     1913            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     1914          }
     1915          this.OnDataTypeIdChanging(value);
     1916          this.SendPropertyChanging();
     1917          this._DataTypeId = value;
     1918          this.SendPropertyChanged("DataTypeId");
     1919          this.OnDataTypeIdChanged();
     1920        }
     1921      }
     1922    }
     1923   
     1924    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_BinaryDataId", DbType="BigInt NOT NULL")]
     1925    public long BinaryDataId
     1926    {
     1927      get
     1928      {
     1929        return this._BinaryDataId;
     1930      }
     1931      set
     1932      {
     1933        if ((this._BinaryDataId != value))
     1934        {
     1935          if (this._BinaryData.HasLoadedOrAssignedValue)
     1936          {
     1937            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     1938          }
     1939          this.OnBinaryDataIdChanging(value);
     1940          this.SendPropertyChanging();
     1941          this._BinaryDataId = value;
     1942          this.SendPropertyChanged("BinaryDataId");
     1943          this.OnBinaryDataIdChanged();
     1944        }
     1945      }
     1946    }
     1947   
     1948    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(200) NOT NULL", CanBeNull=false)]
     1949    public string Name
     1950    {
     1951      get
     1952      {
     1953        return this._Name;
     1954      }
     1955      set
     1956      {
     1957        if ((this._Name != value))
     1958        {
     1959          this.OnNameChanging(value);
     1960          this.SendPropertyChanging();
     1961          this._Name = value;
     1962          this.SendPropertyChanged("Name");
     1963          this.OnNameChanged();
     1964        }
     1965      }
     1966    }
     1967   
     1968    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Description", DbType="NVarChar(MAX)")]
     1969    public string Description
     1970    {
     1971      get
     1972      {
     1973        return this._Description;
     1974      }
     1975      set
     1976      {
     1977        if ((this._Description != value))
     1978        {
     1979          this.OnDescriptionChanging(value);
     1980          this.SendPropertyChanging();
     1981          this._Description = value;
     1982          this.SendPropertyChanged("Description");
     1983          this.OnDescriptionChanged();
     1984        }
     1985      }
     1986    }
     1987   
     1988    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Problem_ProblemUser", Storage="_ProblemUsers", ThisKey="Id", OtherKey="ProblemId")]
     1989    public EntitySet<ProblemUser> ProblemUsers
     1990    {
     1991      get
     1992      {
     1993        return this._ProblemUsers;
     1994      }
     1995      set
     1996      {
     1997        this._ProblemUsers.Assign(value);
     1998      }
     1999    }
     2000   
     2001    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Problem_Run", Storage="_Runs", ThisKey="Id", OtherKey="ProblemId")]
     2002    public EntitySet<Run> Runs
     2003    {
     2004      get
     2005      {
     2006        return this._Runs;
     2007      }
     2008      set
     2009      {
     2010        this._Runs.Assign(value);
     2011      }
     2012    }
     2013   
     2014    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DataType_Problem", Storage="_DataType", ThisKey="DataTypeId", OtherKey="Id", IsForeignKey=true)]
     2015    public DataType DataType
     2016    {
     2017      get
     2018      {
     2019        return this._DataType.Entity;
     2020      }
     2021      set
     2022      {
     2023        DataType previousValue = this._DataType.Entity;
     2024        if (((previousValue != value)
     2025              || (this._DataType.HasLoadedOrAssignedValue == false)))
     2026        {
     2027          this.SendPropertyChanging();
     2028          if ((previousValue != null))
     2029          {
     2030            this._DataType.Entity = null;
     2031            previousValue.Problems.Remove(this);
     2032          }
     2033          this._DataType.Entity = value;
     2034          if ((value != null))
     2035          {
     2036            value.Problems.Add(this);
     2037            this._DataTypeId = value.Id;
     2038          }
     2039          else
     2040          {
     2041            this._DataTypeId = default(long);
     2042          }
     2043          this.SendPropertyChanged("DataType");
     2044        }
     2045      }
     2046    }
     2047   
     2048    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Platform_Problem", Storage="_Platform", ThisKey="PlatformId", OtherKey="Id", IsForeignKey=true)]
     2049    public Platform Platform
     2050    {
     2051      get
     2052      {
     2053        return this._Platform.Entity;
     2054      }
     2055      set
     2056      {
     2057        Platform previousValue = this._Platform.Entity;
     2058        if (((previousValue != value)
     2059              || (this._Platform.HasLoadedOrAssignedValue == false)))
     2060        {
     2061          this.SendPropertyChanging();
     2062          if ((previousValue != null))
     2063          {
     2064            this._Platform.Entity = null;
     2065            previousValue.Problems.Remove(this);
     2066          }
     2067          this._Platform.Entity = value;
     2068          if ((value != null))
     2069          {
     2070            value.Problems.Add(this);
     2071            this._PlatformId = value.Id;
     2072          }
     2073          else
     2074          {
     2075            this._PlatformId = default(long);
     2076          }
     2077          this.SendPropertyChanged("Platform");
     2078        }
     2079      }
     2080    }
     2081   
     2082    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="ProblemClass_Problem", Storage="_ProblemClass", ThisKey="ProblemClassId", OtherKey="Id", IsForeignKey=true)]
     2083    public ProblemClass ProblemClass
     2084    {
     2085      get
     2086      {
     2087        return this._ProblemClass.Entity;
     2088      }
     2089      set
     2090      {
     2091        ProblemClass previousValue = this._ProblemClass.Entity;
     2092        if (((previousValue != value)
     2093              || (this._ProblemClass.HasLoadedOrAssignedValue == false)))
     2094        {
     2095          this.SendPropertyChanging();
     2096          if ((previousValue != null))
     2097          {
     2098            this._ProblemClass.Entity = null;
     2099            previousValue.Problems.Remove(this);
     2100          }
     2101          this._ProblemClass.Entity = value;
     2102          if ((value != null))
     2103          {
     2104            value.Problems.Add(this);
     2105            this._ProblemClassId = value.Id;
     2106          }
     2107          else
     2108          {
     2109            this._ProblemClassId = default(long);
     2110          }
     2111          this.SendPropertyChanged("ProblemClass");
     2112        }
     2113      }
     2114    }
     2115   
     2116    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="BinaryData_Problem", Storage="_BinaryData", ThisKey="BinaryDataId", OtherKey="Id", IsForeignKey=true)]
     2117    public BinaryData BinaryData
     2118    {
     2119      get
     2120      {
     2121        return this._BinaryData.Entity;
     2122      }
     2123      set
     2124      {
     2125        BinaryData previousValue = this._BinaryData.Entity;
     2126        if (((previousValue != value)
     2127              || (this._BinaryData.HasLoadedOrAssignedValue == false)))
     2128        {
     2129          this.SendPropertyChanging();
     2130          if ((previousValue != null))
     2131          {
     2132            this._BinaryData.Entity = null;
     2133            previousValue.Problems.Remove(this);
     2134          }
     2135          this._BinaryData.Entity = value;
     2136          if ((value != null))
     2137          {
     2138            value.Problems.Add(this);
     2139            this._BinaryDataId = value.Id;
     2140          }
     2141          else
     2142          {
     2143            this._BinaryDataId = default(long);
     2144          }
     2145          this.SendPropertyChanged("BinaryData");
     2146        }
     2147      }
     2148    }
     2149   
     2150    public event PropertyChangingEventHandler PropertyChanging;
     2151   
     2152    public event PropertyChangedEventHandler PropertyChanged;
     2153   
     2154    protected virtual void SendPropertyChanging()
     2155    {
     2156      if ((this.PropertyChanging != null))
     2157      {
     2158        this.PropertyChanging(this, emptyChangingEventArgs);
     2159      }
     2160    }
     2161   
     2162    protected virtual void SendPropertyChanged(String propertyName)
     2163    {
     2164      if ((this.PropertyChanged != null))
     2165      {
     2166        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
     2167      }
     2168    }
     2169   
     2170    private void attach_ProblemUsers(ProblemUser entity)
     2171    {
     2172      this.SendPropertyChanging();
     2173      entity.Problem = this;
     2174    }
     2175   
     2176    private void detach_ProblemUsers(ProblemUser entity)
     2177    {
     2178      this.SendPropertyChanging();
     2179      entity.Problem = null;
     2180    }
     2181   
     2182    private void attach_Runs(Run entity)
     2183    {
     2184      this.SendPropertyChanging();
     2185      entity.Problem = this;
     2186    }
     2187   
     2188    private void detach_Runs(Run entity)
     2189    {
     2190      this.SendPropertyChanging();
     2191      entity.Problem = null;
     2192    }
     2193  }
     2194 
     2195  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.BinaryData")]
     2196  public partial class BinaryData : INotifyPropertyChanging, INotifyPropertyChanged
     2197  {
     2198   
     2199    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
     2200   
     2201    private long _Id;
     2202   
     2203    private System.Data.Linq.Binary _Data;
     2204   
     2205    private System.Data.Linq.Binary _Hash;
     2206   
     2207    private EntitySet<Algorithm> _Algorithms;
     2208   
     2209    private EntitySet<Problem> _Problems;
     2210   
     2211    private EntitySet<Value> _Values;
     2212   
     2213    #region Extensibility Method Definitions
     2214    partial void OnLoaded();
     2215    partial void OnValidate(System.Data.Linq.ChangeAction action);
     2216    partial void OnCreated();
     2217    partial void OnIdChanging(long value);
     2218    partial void OnIdChanged();
     2219    partial void OnDataChanging(System.Data.Linq.Binary value);
     2220    partial void OnDataChanged();
     2221    partial void OnHashChanging(System.Data.Linq.Binary value);
     2222    partial void OnHashChanged();
     2223    #endregion
     2224   
     2225    public BinaryData()
     2226    {
     2227      this._Algorithms = new EntitySet<Algorithm>(new Action<Algorithm>(this.attach_Algorithms), new Action<Algorithm>(this.detach_Algorithms));
     2228      this._Problems = new EntitySet<Problem>(new Action<Problem>(this.attach_Problems), new Action<Problem>(this.detach_Problems));
     2229      this._Values = new EntitySet<Value>(new Action<Value>(this.attach_Values), new Action<Value>(this.detach_Values));
     2230      OnCreated();
     2231    }
     2232   
     2233    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
     2234    public long Id
     2235    {
     2236      get
     2237      {
     2238        return this._Id;
     2239      }
     2240      set
     2241      {
     2242        if ((this._Id != value))
     2243        {
     2244          this.OnIdChanging(value);
     2245          this.SendPropertyChanging();
     2246          this._Id = value;
     2247          this.SendPropertyChanged("Id");
     2248          this.OnIdChanged();
     2249        }
     2250      }
     2251    }
     2252   
     2253    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Data", DbType="VarBinary(MAX) NOT NULL", CanBeNull=false, UpdateCheck=UpdateCheck.Never)]
     2254    public System.Data.Linq.Binary Data
     2255    {
     2256      get
     2257      {
     2258        return this._Data;
     2259      }
     2260      set
     2261      {
     2262        if ((this._Data != value))
     2263        {
     2264          this.OnDataChanging(value);
     2265          this.SendPropertyChanging();
     2266          this._Data = value;
     2267          this.SendPropertyChanged("Data");
     2268          this.OnDataChanged();
     2269        }
     2270      }
     2271    }
     2272   
     2273    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Hash", AutoSync=AutoSync.Always, DbType="VarBinary(20)", IsDbGenerated=true, UpdateCheck=UpdateCheck.Never)]
     2274    public System.Data.Linq.Binary Hash
     2275    {
     2276      get
     2277      {
     2278        return this._Hash;
     2279      }
     2280      set
     2281      {
     2282        if ((this._Hash != value))
     2283        {
     2284          this.OnHashChanging(value);
     2285          this.SendPropertyChanging();
     2286          this._Hash = value;
     2287          this.SendPropertyChanged("Hash");
     2288          this.OnHashChanged();
     2289        }
     2290      }
     2291    }
     2292   
     2293    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="BinaryData_Algorithm", Storage="_Algorithms", ThisKey="Id", OtherKey="BinaryDataId")]
     2294    public EntitySet<Algorithm> Algorithms
     2295    {
     2296      get
     2297      {
     2298        return this._Algorithms;
     2299      }
     2300      set
     2301      {
     2302        this._Algorithms.Assign(value);
     2303      }
     2304    }
     2305   
     2306    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="BinaryData_Problem", Storage="_Problems", ThisKey="Id", OtherKey="BinaryDataId")]
     2307    public EntitySet<Problem> Problems
     2308    {
     2309      get
     2310      {
     2311        return this._Problems;
     2312      }
     2313      set
     2314      {
     2315        this._Problems.Assign(value);
     2316      }
     2317    }
     2318   
     2319    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="BinaryData_Value", Storage="_Values", ThisKey="Id", OtherKey="BinaryDataId")]
     2320    public EntitySet<Value> Values
     2321    {
     2322      get
     2323      {
     2324        return this._Values;
     2325      }
     2326      set
     2327      {
     2328        this._Values.Assign(value);
     2329      }
     2330    }
     2331   
     2332    public event PropertyChangingEventHandler PropertyChanging;
     2333   
     2334    public event PropertyChangedEventHandler PropertyChanged;
     2335   
     2336    protected virtual void SendPropertyChanging()
     2337    {
     2338      if ((this.PropertyChanging != null))
     2339      {
     2340        this.PropertyChanging(this, emptyChangingEventArgs);
     2341      }
     2342    }
     2343   
     2344    protected virtual void SendPropertyChanged(String propertyName)
     2345    {
     2346      if ((this.PropertyChanged != null))
     2347      {
     2348        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
     2349      }
     2350    }
     2351   
    38232352    private void attach_Algorithms(Algorithm entity)
    38242353    {
    38252354      this.SendPropertyChanging();
    3826       entity.DataType = this;
     2355      entity.BinaryData = this;
    38272356    }
    38282357   
     
    38302359    {
    38312360      this.SendPropertyChanging();
    3832       entity.DataType = null;
     2361      entity.BinaryData = null;
    38332362    }
    38342363   
     
    38362365    {
    38372366      this.SendPropertyChanging();
    3838       entity.DataType = this;
     2367      entity.BinaryData = this;
    38392368    }
    38402369   
     
    38422371    {
    38432372      this.SendPropertyChanging();
    3844       entity.DataType = null;
    3845     }
    3846    
    3847     private void attach_Results(Result entity)
    3848     {
    3849       this.SendPropertyChanging();
    3850       entity.DataType = this;
    3851     }
    3852    
    3853     private void detach_Results(Result entity)
    3854     {
    3855       this.SendPropertyChanging();
    3856       entity.DataType = null;
     2373      entity.BinaryData = null;
     2374    }
     2375   
     2376    private void attach_Values(Value entity)
     2377    {
     2378      this.SendPropertyChanging();
     2379      entity.BinaryData = this;
     2380    }
     2381   
     2382    private void detach_Values(Value entity)
     2383    {
     2384      this.SendPropertyChanging();
     2385      entity.BinaryData = null;
     2386    }
     2387  }
     2388 
     2389  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Run")]
     2390  public partial class Run : INotifyPropertyChanging, INotifyPropertyChanged
     2391  {
     2392   
     2393    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
     2394   
     2395    private long _Id;
     2396   
     2397    private long _AlgorithmId;
     2398   
     2399    private long _ProblemId;
     2400   
     2401    private int _RandomSeed;
     2402   
     2403    private System.DateTime _CreatedDate;
     2404   
     2405    private System.Guid _UserId;
     2406   
     2407    private System.Guid _ClientId;
     2408   
     2409    private EntitySet<Value> _Values;
     2410   
     2411    private EntityRef<Algorithm> _Algorithm;
     2412   
     2413    private EntityRef<Problem> _Problem;
     2414   
     2415    #region Extensibility Method Definitions
     2416    partial void OnLoaded();
     2417    partial void OnValidate(System.Data.Linq.ChangeAction action);
     2418    partial void OnCreated();
     2419    partial void OnIdChanging(long value);
     2420    partial void OnIdChanged();
     2421    partial void OnAlgorithmIdChanging(long value);
     2422    partial void OnAlgorithmIdChanged();
     2423    partial void OnProblemIdChanging(long value);
     2424    partial void OnProblemIdChanged();
     2425    partial void OnRandomSeedChanging(int value);
     2426    partial void OnRandomSeedChanged();
     2427    partial void OnCreatedDateChanging(System.DateTime value);
     2428    partial void OnCreatedDateChanged();
     2429    partial void OnUserIdChanging(System.Guid value);
     2430    partial void OnUserIdChanged();
     2431    partial void OnClientIdChanging(System.Guid value);
     2432    partial void OnClientIdChanged();
     2433    #endregion
     2434   
     2435    public Run()
     2436    {
     2437      this._Values = new EntitySet<Value>(new Action<Value>(this.attach_Values), new Action<Value>(this.detach_Values));
     2438      this._Algorithm = default(EntityRef<Algorithm>);
     2439      this._Problem = default(EntityRef<Problem>);
     2440      OnCreated();
     2441    }
     2442   
     2443    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
     2444    public long Id
     2445    {
     2446      get
     2447      {
     2448        return this._Id;
     2449      }
     2450      set
     2451      {
     2452        if ((this._Id != value))
     2453        {
     2454          this.OnIdChanging(value);
     2455          this.SendPropertyChanging();
     2456          this._Id = value;
     2457          this.SendPropertyChanged("Id");
     2458          this.OnIdChanged();
     2459        }
     2460      }
     2461    }
     2462   
     2463    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AlgorithmId", DbType="BigInt NOT NULL")]
     2464    public long AlgorithmId
     2465    {
     2466      get
     2467      {
     2468        return this._AlgorithmId;
     2469      }
     2470      set
     2471      {
     2472        if ((this._AlgorithmId != value))
     2473        {
     2474          if (this._Algorithm.HasLoadedOrAssignedValue)
     2475          {
     2476            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     2477          }
     2478          this.OnAlgorithmIdChanging(value);
     2479          this.SendPropertyChanging();
     2480          this._AlgorithmId = value;
     2481          this.SendPropertyChanged("AlgorithmId");
     2482          this.OnAlgorithmIdChanged();
     2483        }
     2484      }
     2485    }
     2486   
     2487    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProblemId", DbType="BigInt NOT NULL")]
     2488    public long ProblemId
     2489    {
     2490      get
     2491      {
     2492        return this._ProblemId;
     2493      }
     2494      set
     2495      {
     2496        if ((this._ProblemId != value))
     2497        {
     2498          if (this._Problem.HasLoadedOrAssignedValue)
     2499          {
     2500            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     2501          }
     2502          this.OnProblemIdChanging(value);
     2503          this.SendPropertyChanging();
     2504          this._ProblemId = value;
     2505          this.SendPropertyChanged("ProblemId");
     2506          this.OnProblemIdChanged();
     2507        }
     2508      }
     2509    }
     2510   
     2511    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RandomSeed", DbType="Int NOT NULL")]
     2512    public int RandomSeed
     2513    {
     2514      get
     2515      {
     2516        return this._RandomSeed;
     2517      }
     2518      set
     2519      {
     2520        if ((this._RandomSeed != value))
     2521        {
     2522          this.OnRandomSeedChanging(value);
     2523          this.SendPropertyChanging();
     2524          this._RandomSeed = value;
     2525          this.SendPropertyChanged("RandomSeed");
     2526          this.OnRandomSeedChanged();
     2527        }
     2528      }
     2529    }
     2530   
     2531    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CreatedDate", DbType="DateTime2 NOT NULL")]
     2532    public System.DateTime CreatedDate
     2533    {
     2534      get
     2535      {
     2536        return this._CreatedDate;
     2537      }
     2538      set
     2539      {
     2540        if ((this._CreatedDate != value))
     2541        {
     2542          this.OnCreatedDateChanging(value);
     2543          this.SendPropertyChanging();
     2544          this._CreatedDate = value;
     2545          this.SendPropertyChanged("CreatedDate");
     2546          this.OnCreatedDateChanged();
     2547        }
     2548      }
     2549    }
     2550   
     2551    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="UniqueIdentifier NOT NULL")]
     2552    public System.Guid UserId
     2553    {
     2554      get
     2555      {
     2556        return this._UserId;
     2557      }
     2558      set
     2559      {
     2560        if ((this._UserId != value))
     2561        {
     2562          this.OnUserIdChanging(value);
     2563          this.SendPropertyChanging();
     2564          this._UserId = value;
     2565          this.SendPropertyChanged("UserId");
     2566          this.OnUserIdChanged();
     2567        }
     2568      }
     2569    }
     2570   
     2571    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClientId", DbType="UniqueIdentifier NOT NULL")]
     2572    public System.Guid ClientId
     2573    {
     2574      get
     2575      {
     2576        return this._ClientId;
     2577      }
     2578      set
     2579      {
     2580        if ((this._ClientId != value))
     2581        {
     2582          this.OnClientIdChanging(value);
     2583          this.SendPropertyChanging();
     2584          this._ClientId = value;
     2585          this.SendPropertyChanged("ClientId");
     2586          this.OnClientIdChanged();
     2587        }
     2588      }
     2589    }
     2590   
     2591    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Run_Value", Storage="_Values", ThisKey="Id", OtherKey="RunId")]
     2592    public EntitySet<Value> Values
     2593    {
     2594      get
     2595      {
     2596        return this._Values;
     2597      }
     2598      set
     2599      {
     2600        this._Values.Assign(value);
     2601      }
     2602    }
     2603   
     2604    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Algorithm_Run", Storage="_Algorithm", ThisKey="AlgorithmId", OtherKey="Id", IsForeignKey=true)]
     2605    public Algorithm Algorithm
     2606    {
     2607      get
     2608      {
     2609        return this._Algorithm.Entity;
     2610      }
     2611      set
     2612      {
     2613        Algorithm previousValue = this._Algorithm.Entity;
     2614        if (((previousValue != value)
     2615              || (this._Algorithm.HasLoadedOrAssignedValue == false)))
     2616        {
     2617          this.SendPropertyChanging();
     2618          if ((previousValue != null))
     2619          {
     2620            this._Algorithm.Entity = null;
     2621            previousValue.Runs.Remove(this);
     2622          }
     2623          this._Algorithm.Entity = value;
     2624          if ((value != null))
     2625          {
     2626            value.Runs.Add(this);
     2627            this._AlgorithmId = value.Id;
     2628          }
     2629          else
     2630          {
     2631            this._AlgorithmId = default(long);
     2632          }
     2633          this.SendPropertyChanged("Algorithm");
     2634        }
     2635      }
     2636    }
     2637   
     2638    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Problem_Run", Storage="_Problem", ThisKey="ProblemId", OtherKey="Id", IsForeignKey=true)]
     2639    public Problem Problem
     2640    {
     2641      get
     2642      {
     2643        return this._Problem.Entity;
     2644      }
     2645      set
     2646      {
     2647        Problem previousValue = this._Problem.Entity;
     2648        if (((previousValue != value)
     2649              || (this._Problem.HasLoadedOrAssignedValue == false)))
     2650        {
     2651          this.SendPropertyChanging();
     2652          if ((previousValue != null))
     2653          {
     2654            this._Problem.Entity = null;
     2655            previousValue.Runs.Remove(this);
     2656          }
     2657          this._Problem.Entity = value;
     2658          if ((value != null))
     2659          {
     2660            value.Runs.Add(this);
     2661            this._ProblemId = value.Id;
     2662          }
     2663          else
     2664          {
     2665            this._ProblemId = default(long);
     2666          }
     2667          this.SendPropertyChanged("Problem");
     2668        }
     2669      }
     2670    }
     2671   
     2672    public event PropertyChangingEventHandler PropertyChanging;
     2673   
     2674    public event PropertyChangedEventHandler PropertyChanged;
     2675   
     2676    protected virtual void SendPropertyChanging()
     2677    {
     2678      if ((this.PropertyChanging != null))
     2679      {
     2680        this.PropertyChanging(this, emptyChangingEventArgs);
     2681      }
     2682    }
     2683   
     2684    protected virtual void SendPropertyChanged(String propertyName)
     2685    {
     2686      if ((this.PropertyChanged != null))
     2687      {
     2688        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
     2689      }
     2690    }
     2691   
     2692    private void attach_Values(Value entity)
     2693    {
     2694      this.SendPropertyChanging();
     2695      entity.Run = this;
     2696    }
     2697   
     2698    private void detach_Values(Value entity)
     2699    {
     2700      this.SendPropertyChanging();
     2701      entity.Run = null;
     2702    }
     2703  }
     2704 
     2705  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Value")]
     2706  public partial class Value : INotifyPropertyChanging, INotifyPropertyChanged
     2707  {
     2708   
     2709    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
     2710   
     2711    private long _Id;
     2712   
     2713    private long _RunId;
     2714   
     2715    private long _ValueNameId;
     2716   
     2717    private long _DataTypeId;
     2718   
     2719    private System.Nullable<bool> _BoolValue;
     2720   
     2721    private System.Nullable<int> _IntValue;
     2722   
     2723    private System.Nullable<long> _LongValue;
     2724   
     2725    private System.Nullable<float> _FloatValue;
     2726   
     2727    private System.Nullable<double> _DoubleValue;
     2728   
     2729    private string _StringValue;
     2730   
     2731    private System.Nullable<long> _BinaryDataId;
     2732   
     2733    private EntityRef<BinaryData> _BinaryData;
     2734   
     2735    private EntityRef<DataType> _DataType;
     2736   
     2737    private EntityRef<Run> _Run;
     2738   
     2739    private EntityRef<ValueName> _ValueName;
     2740   
     2741    #region Extensibility Method Definitions
     2742    partial void OnLoaded();
     2743    partial void OnValidate(System.Data.Linq.ChangeAction action);
     2744    partial void OnCreated();
     2745    partial void OnIdChanging(long value);
     2746    partial void OnIdChanged();
     2747    partial void OnRunIdChanging(long value);
     2748    partial void OnRunIdChanged();
     2749    partial void OnValueNameIdChanging(long value);
     2750    partial void OnValueNameIdChanged();
     2751    partial void OnDataTypeIdChanging(long value);
     2752    partial void OnDataTypeIdChanged();
     2753    partial void OnBoolValueChanging(System.Nullable<bool> value);
     2754    partial void OnBoolValueChanged();
     2755    partial void OnIntValueChanging(System.Nullable<int> value);
     2756    partial void OnIntValueChanged();
     2757    partial void OnLongValueChanging(System.Nullable<long> value);
     2758    partial void OnLongValueChanged();
     2759    partial void OnFloatValueChanging(System.Nullable<float> value);
     2760    partial void OnFloatValueChanged();
     2761    partial void OnDoubleValueChanging(System.Nullable<double> value);
     2762    partial void OnDoubleValueChanged();
     2763    partial void OnStringValueChanging(string value);
     2764    partial void OnStringValueChanged();
     2765    partial void OnBinaryDataIdChanging(System.Nullable<long> value);
     2766    partial void OnBinaryDataIdChanged();
     2767    #endregion
     2768   
     2769    public Value()
     2770    {
     2771      this._BinaryData = default(EntityRef<BinaryData>);
     2772      this._DataType = default(EntityRef<DataType>);
     2773      this._Run = default(EntityRef<Run>);
     2774      this._ValueName = default(EntityRef<ValueName>);
     2775      OnCreated();
     2776    }
     2777   
     2778    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="BigInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
     2779    public long Id
     2780    {
     2781      get
     2782      {
     2783        return this._Id;
     2784      }
     2785      set
     2786      {
     2787        if ((this._Id != value))
     2788        {
     2789          this.OnIdChanging(value);
     2790          this.SendPropertyChanging();
     2791          this._Id = value;
     2792          this.SendPropertyChanged("Id");
     2793          this.OnIdChanged();
     2794        }
     2795      }
     2796    }
     2797   
     2798    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RunId", DbType="BigInt NOT NULL")]
     2799    public long RunId
     2800    {
     2801      get
     2802      {
     2803        return this._RunId;
     2804      }
     2805      set
     2806      {
     2807        if ((this._RunId != value))
     2808        {
     2809          if (this._Run.HasLoadedOrAssignedValue)
     2810          {
     2811            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     2812          }
     2813          this.OnRunIdChanging(value);
     2814          this.SendPropertyChanging();
     2815          this._RunId = value;
     2816          this.SendPropertyChanged("RunId");
     2817          this.OnRunIdChanged();
     2818        }
     2819      }
     2820    }
     2821   
     2822    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ValueNameId", DbType="BigInt NOT NULL")]
     2823    public long ValueNameId
     2824    {
     2825      get
     2826      {
     2827        return this._ValueNameId;
     2828      }
     2829      set
     2830      {
     2831        if ((this._ValueNameId != value))
     2832        {
     2833          if (this._ValueName.HasLoadedOrAssignedValue)
     2834          {
     2835            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     2836          }
     2837          this.OnValueNameIdChanging(value);
     2838          this.SendPropertyChanging();
     2839          this._ValueNameId = value;
     2840          this.SendPropertyChanged("ValueNameId");
     2841          this.OnValueNameIdChanged();
     2842        }
     2843      }
     2844    }
     2845   
     2846    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DataTypeId", DbType="BigInt NOT NULL")]
     2847    public long DataTypeId
     2848    {
     2849      get
     2850      {
     2851        return this._DataTypeId;
     2852      }
     2853      set
     2854      {
     2855        if ((this._DataTypeId != value))
     2856        {
     2857          if (this._DataType.HasLoadedOrAssignedValue)
     2858          {
     2859            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     2860          }
     2861          this.OnDataTypeIdChanging(value);
     2862          this.SendPropertyChanging();
     2863          this._DataTypeId = value;
     2864          this.SendPropertyChanged("DataTypeId");
     2865          this.OnDataTypeIdChanged();
     2866        }
     2867      }
     2868    }
     2869   
     2870    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_BoolValue", DbType="Bit")]
     2871    public System.Nullable<bool> BoolValue
     2872    {
     2873      get
     2874      {
     2875        return this._BoolValue;
     2876      }
     2877      set
     2878      {
     2879        if ((this._BoolValue != value))
     2880        {
     2881          this.OnBoolValueChanging(value);
     2882          this.SendPropertyChanging();
     2883          this._BoolValue = value;
     2884          this.SendPropertyChanged("BoolValue");
     2885          this.OnBoolValueChanged();
     2886        }
     2887      }
     2888    }
     2889   
     2890    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IntValue", DbType="Int")]
     2891    public System.Nullable<int> IntValue
     2892    {
     2893      get
     2894      {
     2895        return this._IntValue;
     2896      }
     2897      set
     2898      {
     2899        if ((this._IntValue != value))
     2900        {
     2901          this.OnIntValueChanging(value);
     2902          this.SendPropertyChanging();
     2903          this._IntValue = value;
     2904          this.SendPropertyChanged("IntValue");
     2905          this.OnIntValueChanged();
     2906        }
     2907      }
     2908    }
     2909   
     2910    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LongValue", DbType="BigInt")]
     2911    public System.Nullable<long> LongValue
     2912    {
     2913      get
     2914      {
     2915        return this._LongValue;
     2916      }
     2917      set
     2918      {
     2919        if ((this._LongValue != value))
     2920        {
     2921          this.OnLongValueChanging(value);
     2922          this.SendPropertyChanging();
     2923          this._LongValue = value;
     2924          this.SendPropertyChanged("LongValue");
     2925          this.OnLongValueChanged();
     2926        }
     2927      }
     2928    }
     2929   
     2930    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_FloatValue", DbType="Real")]
     2931    public System.Nullable<float> FloatValue
     2932    {
     2933      get
     2934      {
     2935        return this._FloatValue;
     2936      }
     2937      set
     2938      {
     2939        if ((this._FloatValue != value))
     2940        {
     2941          this.OnFloatValueChanging(value);
     2942          this.SendPropertyChanging();
     2943          this._FloatValue = value;
     2944          this.SendPropertyChanged("FloatValue");
     2945          this.OnFloatValueChanged();
     2946        }
     2947      }
     2948    }
     2949   
     2950    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DoubleValue", DbType="Float")]
     2951    public System.Nullable<double> DoubleValue
     2952    {
     2953      get
     2954      {
     2955        return this._DoubleValue;
     2956      }
     2957      set
     2958      {
     2959        if ((this._DoubleValue != value))
     2960        {
     2961          this.OnDoubleValueChanging(value);
     2962          this.SendPropertyChanging();
     2963          this._DoubleValue = value;
     2964          this.SendPropertyChanged("DoubleValue");
     2965          this.OnDoubleValueChanged();
     2966        }
     2967      }
     2968    }
     2969   
     2970    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_StringValue", DbType="NVarChar(MAX)")]
     2971    public string StringValue
     2972    {
     2973      get
     2974      {
     2975        return this._StringValue;
     2976      }
     2977      set
     2978      {
     2979        if ((this._StringValue != value))
     2980        {
     2981          this.OnStringValueChanging(value);
     2982          this.SendPropertyChanging();
     2983          this._StringValue = value;
     2984          this.SendPropertyChanged("StringValue");
     2985          this.OnStringValueChanged();
     2986        }
     2987      }
     2988    }
     2989   
     2990    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_BinaryDataId", DbType="BigInt")]
     2991    public System.Nullable<long> BinaryDataId
     2992    {
     2993      get
     2994      {
     2995        return this._BinaryDataId;
     2996      }
     2997      set
     2998      {
     2999        if ((this._BinaryDataId != value))
     3000        {
     3001          if (this._BinaryData.HasLoadedOrAssignedValue)
     3002          {
     3003            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     3004          }
     3005          this.OnBinaryDataIdChanging(value);
     3006          this.SendPropertyChanging();
     3007          this._BinaryDataId = value;
     3008          this.SendPropertyChanged("BinaryDataId");
     3009          this.OnBinaryDataIdChanged();
     3010        }
     3011      }
     3012    }
     3013   
     3014    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="BinaryData_Value", Storage="_BinaryData", ThisKey="BinaryDataId", OtherKey="Id", IsForeignKey=true)]
     3015    public BinaryData BinaryData
     3016    {
     3017      get
     3018      {
     3019        return this._BinaryData.Entity;
     3020      }
     3021      set
     3022      {
     3023        BinaryData previousValue = this._BinaryData.Entity;
     3024        if (((previousValue != value)
     3025              || (this._BinaryData.HasLoadedOrAssignedValue == false)))
     3026        {
     3027          this.SendPropertyChanging();
     3028          if ((previousValue != null))
     3029          {
     3030            this._BinaryData.Entity = null;
     3031            previousValue.Values.Remove(this);
     3032          }
     3033          this._BinaryData.Entity = value;
     3034          if ((value != null))
     3035          {
     3036            value.Values.Add(this);
     3037            this._BinaryDataId = value.Id;
     3038          }
     3039          else
     3040          {
     3041            this._BinaryDataId = default(Nullable<long>);
     3042          }
     3043          this.SendPropertyChanged("BinaryData");
     3044        }
     3045      }
     3046    }
     3047   
     3048    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DataType_Value", Storage="_DataType", ThisKey="DataTypeId", OtherKey="Id", IsForeignKey=true)]
     3049    public DataType DataType
     3050    {
     3051      get
     3052      {
     3053        return this._DataType.Entity;
     3054      }
     3055      set
     3056      {
     3057        DataType previousValue = this._DataType.Entity;
     3058        if (((previousValue != value)
     3059              || (this._DataType.HasLoadedOrAssignedValue == false)))
     3060        {
     3061          this.SendPropertyChanging();
     3062          if ((previousValue != null))
     3063          {
     3064            this._DataType.Entity = null;
     3065            previousValue.Values.Remove(this);
     3066          }
     3067          this._DataType.Entity = value;
     3068          if ((value != null))
     3069          {
     3070            value.Values.Add(this);
     3071            this._DataTypeId = value.Id;
     3072          }
     3073          else
     3074          {
     3075            this._DataTypeId = default(long);
     3076          }
     3077          this.SendPropertyChanged("DataType");
     3078        }
     3079      }
     3080    }
     3081   
     3082    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Run_Value", Storage="_Run", ThisKey="RunId", OtherKey="Id", IsForeignKey=true)]
     3083    public Run Run
     3084    {
     3085      get
     3086      {
     3087        return this._Run.Entity;
     3088      }
     3089      set
     3090      {
     3091        Run previousValue = this._Run.Entity;
     3092        if (((previousValue != value)
     3093              || (this._Run.HasLoadedOrAssignedValue == false)))
     3094        {
     3095          this.SendPropertyChanging();
     3096          if ((previousValue != null))
     3097          {
     3098            this._Run.Entity = null;
     3099            previousValue.Values.Remove(this);
     3100          }
     3101          this._Run.Entity = value;
     3102          if ((value != null))
     3103          {
     3104            value.Values.Add(this);
     3105            this._RunId = value.Id;
     3106          }
     3107          else
     3108          {
     3109            this._RunId = default(long);
     3110          }
     3111          this.SendPropertyChanged("Run");
     3112        }
     3113      }
     3114    }
     3115   
     3116    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="ValueName_Value", Storage="_ValueName", ThisKey="ValueNameId", OtherKey="Id", IsForeignKey=true)]
     3117    public ValueName ValueName
     3118    {
     3119      get
     3120      {
     3121        return this._ValueName.Entity;
     3122      }
     3123      set
     3124      {
     3125        ValueName previousValue = this._ValueName.Entity;
     3126        if (((previousValue != value)
     3127              || (this._ValueName.HasLoadedOrAssignedValue == false)))
     3128        {
     3129          this.SendPropertyChanging();
     3130          if ((previousValue != null))
     3131          {
     3132            this._ValueName.Entity = null;
     3133            previousValue.Values.Remove(this);
     3134          }
     3135          this._ValueName.Entity = value;
     3136          if ((value != null))
     3137          {
     3138            value.Values.Add(this);
     3139            this._ValueNameId = value.Id;
     3140          }
     3141          else
     3142          {
     3143            this._ValueNameId = default(long);
     3144          }
     3145          this.SendPropertyChanged("ValueName");
     3146        }
     3147      }
     3148    }
     3149   
     3150    public event PropertyChangingEventHandler PropertyChanging;
     3151   
     3152    public event PropertyChangedEventHandler PropertyChanged;
     3153   
     3154    protected virtual void SendPropertyChanging()
     3155    {
     3156      if ((this.PropertyChanging != null))
     3157      {
     3158        this.PropertyChanging(this, emptyChangingEventArgs);
     3159      }
     3160    }
     3161   
     3162    protected virtual void SendPropertyChanged(String propertyName)
     3163    {
     3164      if ((this.PropertyChanged != null))
     3165      {
     3166        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
     3167      }
    38573168    }
    38583169  }
Note: See TracChangeset for help on using the changeset viewer.