Upload to server

uploading
This commit is contained in:
2025-08-02 05:20:17 +07:00
commit a5eccbd452
984 changed files with 3031800 additions and 0 deletions

1
omegapro/.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
OmegaPro

BIN
omegapro/Database/Data.mdb Normal file

Binary file not shown.

View File

@@ -0,0 +1,59 @@
using System.Reflection;
using System.Runtime.CompilerServices;
//
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
//
[assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: System.CLSCompliant(true)]
//
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.*")]
//
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing.
//
// Notes:
// (*) If no key is specified, the assembly is not signed.
// (*) KeyName refers to a key that has been installed in the Crypto Service
// Provider (CSP) on your machine. KeyFile refers to a file which contains
// a key.
// (*) If the KeyFile and the KeyName values are both specified, the
// following processing occurs:
// (1) If the KeyName can be found in the CSP, that key is used.
// (2) If the KeyName does not exist and the KeyFile does exist, the key
// in the KeyFile is installed into the CSP and used.
// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
// When specifying the KeyFile, the location of the KeyFile should be
// relative to the project output directory which is
// %Project Directory%\obj\<configuration>. For example, if your KeyFile is
// located in the project directory, you would specify the AssemblyKeyFile
// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")]
// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
// documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]
[assembly: AssemblyKeyName("")]

View File

@@ -0,0 +1,42 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
namespace Datalib
{
/// <summary>Enum definition for all the entity types defined in this namespace. Used by the entityfields factory.</summary>
public enum EntityType
{
///<summary>TblField</summary>
TblFieldEntity,
///<summary>TblQuestion</summary>
TblQuestionEntity,
///<summary>TblQuiz</summary>
TblQuizEntity,
///<summary>TblQuizQuestion</summary>
TblQuizQuestionEntity,
///<summary>TblQuizTemplate</summary>
TblQuizTemplateEntity,
///<summary>TblQuizTemplateDetail</summary>
TblQuizTemplateDetailEntity,
///<summary>TblSubject</summary>
TblSubjectEntity,
///<summary>TblTrainingType</summary>
TblTrainingTypeEntity
}
// __LLBLGENPRO_USER_CODE_REGION_START CustomUserConstants
// __LLBLGENPRO_USER_CODE_REGION_END
}

View File

@@ -0,0 +1,116 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{EBB932A0-0C25-40E3-8DB3-1DC684C014BA}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Datalib</RootNamespace>
<AssemblyName>Datalib</AssemblyName>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="SD.LLBLGen.Pro.ORMSupportClasses, Version=5.7.0.0, Culture=neutral, PublicKeyToken=ca73b74ba4e3ff27, processorArchitecture=MSIL">
<SpecificVersion>True</SpecificVersion>
<HintPath>C:\Program Files (x86)\Solutions Design\LLBLGen Pro v5.7\Frameworks\LLBLGen Pro\RuntimeLibraries\CompiledRuntimeLibraries\SD.LLBLGen.Pro.ORMSupportClasses.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="HelperClasses\EntityCollection.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="AssemblyInfo.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="ConstantsEnums.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="HelperClasses\ModelInfoProvider.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="HelperClasses\TypeDefaultValue.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="HelperClasses\LinqMetaData.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="FactoryClasses\QueryFactory.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="HelperClasses\DynamicRelation.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="EntityClasses\CommonEntityBase.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="EntityClasses\TblFieldEntity.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="EntityClasses\TblQuestionEntity.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="EntityClasses\TblQuizEntity.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="EntityClasses\TblQuizQuestionEntity.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="EntityClasses\TblQuizTemplateEntity.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="EntityClasses\TblQuizTemplateDetailEntity.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="EntityClasses\TblSubjectEntity.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="EntityClasses\TblTrainingTypeEntity.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="FactoryClasses\EntityFactories.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="FactoryClasses\EntityFieldFactory.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="FactoryClasses\EntityFieldsFactory.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="HelperClasses\ResultsetFields.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="HelperClasses\FieldCreationClasses.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
</Project>

View File

@@ -0,0 +1,101 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using Datalib.HelperClasses;
using Datalib.FactoryClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
using System.Runtime.Serialization;
namespace Datalib.EntityClasses
{
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalNamespaces
// __LLBLGENPRO_USER_CODE_REGION_END
/// <summary>Common base class which is the base class for all generated entities which aren't a subtype of another entity.</summary>
[Serializable]
public abstract partial class CommonEntityBase : EntityBase2
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalInterfaces
// __LLBLGENPRO_USER_CODE_REGION_END
{
// __LLBLGENPRO_USER_CODE_REGION_START PrivateMembers
// __LLBLGENPRO_USER_CODE_REGION_END
/// <summary>CTor</summary>
protected CommonEntityBase() {}
/// <summary> Protected CTor for deserialization</summary>
/// <param name="info"></param>
/// <param name="context"></param>
protected CommonEntityBase(SerializationInfo info, StreamingContext context) : base(info, context)
{
// __LLBLGENPRO_USER_CODE_REGION_START DeserializationConstructor
// __LLBLGENPRO_USER_CODE_REGION_END
}
/// <summary>Creates the entity collection and stores it in destination if destination is null</summary>
/// <typeparam name="T">type of the element to store in the collection</typeparam>
/// <typeparam name="TFactory">The type of the factory to pass to the entitycollection ctor.</typeparam>
/// <param name="navigatorName">Name of the property this collection is for.</param>
/// <param name="setContainingEntityInfo">if set to <see langword="true"/> the collection is for an 1:n relationship, and the containing entity info has to be set</param>
/// <param name="forMN">if set to <see langword="true"/> the collection is for an m:n relationship, otherwise for an 1:n relationship</param>
/// <param name="destination">The destination member variable.</param>
/// <returns>the collection referred to by destination if destination isn't null, otherwise the newly created collection (which is then stored in destination</returns>
protected EntityCollection<T> GetOrCreateEntityCollection<T, TFactory>(string navigatorName, bool setContainingEntityInfo, bool forMN, ref EntityCollection<T> destination)
where T:EntityBase2, IEntity2
{
if(destination==null)
{
destination = new EntityCollection<T>(EntityFactoryCache2.GetEntityFactory(typeof(TFactory)));
if(forMN)
{
((IEntityCollectionCore)destination).IsForMN = true;
}
else
{
if(setContainingEntityInfo)
{
destination.SetContainingEntityInfo(this, navigatorName);
}
}
destination.ActiveContext = this.ActiveContext;
}
return destination;
}
/// <inheritdoc/>
protected override IInheritanceInfoProvider GetInheritanceInfoProvider() { return ModelInfoProviderSingleton.GetInstance(); }
/// <inheritdoc/>
protected override ITypeDefaultValue CreateTypeDefaultValueProvider() { return new TypeDefaultValue(); }
/// <inheritdoc/>
protected override IEntityCollection2 CreateEntityCollectionForType<T>() { return CommonEntityBase.CreateEntityCollection<T>(); }
/// <summary>Creates the entity collection for the types specified</summary>
/// <typeparam name="T">type of the element to store in the collection</typeparam>
protected static EntityCollection<T> CreateEntityCollection<T>()
where T:EntityBase2, IEntity2
{
return new EntityCollection<T>(EntityFactoryFactory.GetFactory(typeof(T)));
}
/// <inheritdoc/>
protected override Type LLBLGenProEntityTypeEnumType
{
get { return typeof(Datalib.EntityType); }
}
// __LLBLGENPRO_USER_CODE_REGION_START CustomEntityCode
// __LLBLGENPRO_USER_CODE_REGION_END
}
}

View File

@@ -0,0 +1,249 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.ComponentModel;
using System.Collections.Generic;
using System.Runtime.Serialization;
using System.Xml.Serialization;
using Datalib.HelperClasses;
using Datalib.FactoryClasses;
using Datalib.RelationClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.EntityClasses
{
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalNamespaces
// __LLBLGENPRO_USER_CODE_REGION_END
/// <summary>Entity class which represents the entity 'TblField'.<br/><br/></summary>
[Serializable]
public partial class TblFieldEntity : CommonEntityBase
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalInterfaces
// __LLBLGENPRO_USER_CODE_REGION_END
{
private TblSubjectEntity _tblSubject;
// __LLBLGENPRO_USER_CODE_REGION_START PrivateMembers
// __LLBLGENPRO_USER_CODE_REGION_END
private static TblFieldEntityStaticMetaData _staticMetaData = new TblFieldEntityStaticMetaData();
private static TblFieldRelations _relationsFactory = new TblFieldRelations();
/// <summary>All names of fields mapped onto a relation. Usable for in-memory filtering</summary>
public static partial class MemberNames
{
/// <summary>Member name TblSubject</summary>
public static readonly string TblSubject = "TblSubject";
}
/// <summary>Static meta-data storage for navigator related information</summary>
protected class TblFieldEntityStaticMetaData : EntityStaticMetaDataBase
{
public TblFieldEntityStaticMetaData()
{
SetEntityCoreInfo("TblFieldEntity", InheritanceHierarchyType.None, false, (int)Datalib.EntityType.TblFieldEntity, typeof(TblFieldEntity), typeof(TblFieldEntityFactory), false);
AddNavigatorMetaData<TblFieldEntity, TblSubjectEntity>("TblSubject", "TblFields", (a, b) => a._tblSubject = b, a => a._tblSubject, (a, b) => a.TblSubject = b, Datalib.RelationClasses.StaticTblFieldRelations.TblSubjectEntityUsingSubjectIdStatic, ()=>new TblFieldRelations().TblSubjectEntityUsingSubjectId, null, new int[] { (int)TblFieldFieldIndex.SubjectId }, null, true, (int)Datalib.EntityType.TblSubjectEntity);
}
}
/// <summary>Static ctor</summary>
static TblFieldEntity()
{
}
/// <summary> CTor</summary>
public TblFieldEntity()
{
InitClassEmpty(null, null);
}
/// <summary> CTor</summary>
/// <param name="fields">Fields object to set as the fields for this entity.</param>
public TblFieldEntity(IEntityFields2 fields)
{
InitClassEmpty(null, fields);
}
/// <summary> CTor</summary>
/// <param name="validator">The custom validator object for this TblFieldEntity</param>
public TblFieldEntity(IValidator validator)
{
InitClassEmpty(validator, null);
}
/// <summary> CTor</summary>
/// <param name="uniqueId">PK value for TblField which data should be fetched into this TblField object</param>
public TblFieldEntity(System.String uniqueId) : this(uniqueId, null)
{
}
/// <summary> CTor</summary>
/// <param name="uniqueId">PK value for TblField which data should be fetched into this TblField object</param>
/// <param name="validator">The custom validator object for this TblFieldEntity</param>
public TblFieldEntity(System.String uniqueId, IValidator validator)
{
InitClassEmpty(validator, null);
this.UniqueId = uniqueId;
}
/// <summary>Private CTor for deserialization</summary>
/// <param name="info"></param>
/// <param name="context"></param>
protected TblFieldEntity(SerializationInfo info, StreamingContext context) : base(info, context)
{
// __LLBLGENPRO_USER_CODE_REGION_START DeserializationConstructor
// __LLBLGENPRO_USER_CODE_REGION_END
}
/// <summary>Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entity of type 'TblSubject' to this entity.</summary>
/// <returns></returns>
public virtual IRelationPredicateBucket GetRelationInfoTblSubject() { return CreateRelationInfoForNavigator("TblSubject"); }
/// <inheritdoc/>
protected override EntityStaticMetaDataBase GetEntityStaticMetaData() { return _staticMetaData; }
/// <summary>Initializes the class members</summary>
private void InitClassMembers()
{
PerformDependencyInjection();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassMembers
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitClassMembersComplete();
}
/// <summary>Initializes the class with empty data, as if it is a new Entity.</summary>
/// <param name="validator">The validator object for this TblFieldEntity</param>
/// <param name="fields">Fields of this entity</param>
private void InitClassEmpty(IValidator validator, IEntityFields2 fields)
{
OnInitializing();
this.Fields = fields ?? CreateFields();
this.Validator = validator;
InitClassMembers();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassEmpty
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitialized();
}
/// <summary>The relations object holding all relations of this entity with other entity classes.</summary>
public static TblFieldRelations Relations { get { return _relationsFactory; } }
/// <summary>Creates a new PrefetchPathElement2 object which contains all the information to prefetch the related entities of type 'TblSubject' for this entity.</summary>
/// <returns>Ready to use IPrefetchPathElement2 implementation.</returns>
public static IPrefetchPathElement2 PrefetchPathTblSubject { get { return _staticMetaData.GetPrefetchPathElement("TblSubject", CommonEntityBase.CreateEntityCollection<TblSubjectEntity>()); } }
/// <summary>The Description property of the Entity TblField<br/><br/></summary>
/// <remarks>Mapped on table field: "tblFields"."Description".<br/>Table field type characteristics (type, precision, scale, length): LongVarWChar, 0, 0, 536870911.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String Description
{
get { return (System.String)GetValue((int)TblFieldFieldIndex.Description, true); }
set { SetValue((int)TblFieldFieldIndex.Description, value); }
}
/// <summary>The FieldId property of the Entity TblField<br/><br/></summary>
/// <remarks>Mapped on table field: "tblFields"."FieldID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 1.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String FieldId
{
get { return (System.String)GetValue((int)TblFieldFieldIndex.FieldId, true); }
set { SetValue((int)TblFieldFieldIndex.FieldId, value); }
}
/// <summary>The FieldName property of the Entity TblField<br/><br/></summary>
/// <remarks>Mapped on table field: "tblFields"."FieldName".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 50.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String FieldName
{
get { return (System.String)GetValue((int)TblFieldFieldIndex.FieldName, true); }
set { SetValue((int)TblFieldFieldIndex.FieldName, value); }
}
/// <summary>The Prefix property of the Entity TblField<br/><br/></summary>
/// <remarks>Mapped on table field: "tblFields"."Prefix".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 255.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String Prefix
{
get { return (System.String)GetValue((int)TblFieldFieldIndex.Prefix, true); }
set { SetValue((int)TblFieldFieldIndex.Prefix, value); }
}
/// <summary>The SubjectId property of the Entity TblField<br/><br/></summary>
/// <remarks>Mapped on table field: "tblFields"."SubjectID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 2.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String SubjectId
{
get { return (System.String)GetValue((int)TblFieldFieldIndex.SubjectId, true); }
set { SetValue((int)TblFieldFieldIndex.SubjectId, value); }
}
/// <summary>The UniqueId property of the Entity TblField<br/><br/></summary>
/// <remarks>Mapped on table field: "tblFields"."UniqueID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 32.<br/>Table field behavior characteristics (is nullable, is PK, is identity): false, true, false</remarks>
public virtual System.String UniqueId
{
get { return (System.String)GetValue((int)TblFieldFieldIndex.UniqueId, true); }
set { SetValue((int)TblFieldFieldIndex.UniqueId, value); }
}
/// <summary>Gets / sets related entity of type 'TblSubjectEntity' which has to be set using a fetch action earlier. If no related entity is set for this property, null is returned..<br/><br/></summary>
[Browsable(false)]
public virtual TblSubjectEntity TblSubject
{
get { return _tblSubject; }
set { SetSingleRelatedEntityNavigator(value, "TblSubject"); }
}
// __LLBLGENPRO_USER_CODE_REGION_START CustomEntityCode
// __LLBLGENPRO_USER_CODE_REGION_END
}
}
namespace Datalib
{
public enum TblFieldFieldIndex
{
///<summary>Description. </summary>
Description,
///<summary>FieldId. </summary>
FieldId,
///<summary>FieldName. </summary>
FieldName,
///<summary>Prefix. </summary>
Prefix,
///<summary>SubjectId. </summary>
SubjectId,
///<summary>UniqueId. </summary>
UniqueId,
/// <summary></summary>
AmountOfFields
}
}
namespace Datalib.RelationClasses
{
/// <summary>Implements the relations factory for the entity: TblField. </summary>
public partial class TblFieldRelations: RelationFactory
{
/// <summary>Returns a new IEntityRelation object, between TblFieldEntity and TblSubjectEntity over the m:1 relation they have, using the relation between the fields: TblField.SubjectId - TblSubject.SubjectId</summary>
public virtual IEntityRelation TblSubjectEntityUsingSubjectId
{
get { return ModelInfoProviderSingleton.GetInstance().CreateRelation(RelationType.ManyToOne, "TblSubject", false, new[] { TblSubjectFields.SubjectId, TblFieldFields.SubjectId }); }
}
}
/// <summary>Static class which is used for providing relationship instances which are re-used internally for syncing</summary>
internal static class StaticTblFieldRelations
{
internal static readonly IEntityRelation TblSubjectEntityUsingSubjectIdStatic = new TblFieldRelations().TblSubjectEntityUsingSubjectId;
/// <summary>CTor</summary>
static StaticTblFieldRelations() { }
}
}

View File

@@ -0,0 +1,331 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.ComponentModel;
using System.Collections.Generic;
using System.Runtime.Serialization;
using System.Xml.Serialization;
using Datalib.HelperClasses;
using Datalib.FactoryClasses;
using Datalib.RelationClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.EntityClasses
{
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalNamespaces
// __LLBLGENPRO_USER_CODE_REGION_END
/// <summary>Entity class which represents the entity 'TblQuestion'.<br/><br/></summary>
[Serializable]
public partial class TblQuestionEntity : CommonEntityBase
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalInterfaces
// __LLBLGENPRO_USER_CODE_REGION_END
{
private EntityCollection<TblQuizQuestionEntity> _tblQuizQuestions;
private TblSubjectEntity _tblSubject;
// __LLBLGENPRO_USER_CODE_REGION_START PrivateMembers
// __LLBLGENPRO_USER_CODE_REGION_END
private static TblQuestionEntityStaticMetaData _staticMetaData = new TblQuestionEntityStaticMetaData();
private static TblQuestionRelations _relationsFactory = new TblQuestionRelations();
/// <summary>All names of fields mapped onto a relation. Usable for in-memory filtering</summary>
public static partial class MemberNames
{
/// <summary>Member name TblSubject</summary>
public static readonly string TblSubject = "TblSubject";
/// <summary>Member name TblQuizQuestions</summary>
public static readonly string TblQuizQuestions = "TblQuizQuestions";
}
/// <summary>Static meta-data storage for navigator related information</summary>
protected class TblQuestionEntityStaticMetaData : EntityStaticMetaDataBase
{
public TblQuestionEntityStaticMetaData()
{
SetEntityCoreInfo("TblQuestionEntity", InheritanceHierarchyType.None, false, (int)Datalib.EntityType.TblQuestionEntity, typeof(TblQuestionEntity), typeof(TblQuestionEntityFactory), false);
AddNavigatorMetaData<TblQuestionEntity, EntityCollection<TblQuizQuestionEntity>>("TblQuizQuestions", a => a._tblQuizQuestions, (a, b) => a._tblQuizQuestions = b, a => a.TblQuizQuestions, () => new TblQuestionRelations().TblQuizQuestionEntityUsingQuestionId, typeof(TblQuizQuestionEntity), (int)Datalib.EntityType.TblQuizQuestionEntity);
AddNavigatorMetaData<TblQuestionEntity, TblSubjectEntity>("TblSubject", "TblQuestions", (a, b) => a._tblSubject = b, a => a._tblSubject, (a, b) => a.TblSubject = b, Datalib.RelationClasses.StaticTblQuestionRelations.TblSubjectEntityUsingSubjectIdStatic, ()=>new TblQuestionRelations().TblSubjectEntityUsingSubjectId, null, new int[] { (int)TblQuestionFieldIndex.SubjectId }, null, true, (int)Datalib.EntityType.TblSubjectEntity);
}
}
/// <summary>Static ctor</summary>
static TblQuestionEntity()
{
}
/// <summary> CTor</summary>
public TblQuestionEntity()
{
InitClassEmpty(null, null);
}
/// <summary> CTor</summary>
/// <param name="fields">Fields object to set as the fields for this entity.</param>
public TblQuestionEntity(IEntityFields2 fields)
{
InitClassEmpty(null, fields);
}
/// <summary> CTor</summary>
/// <param name="validator">The custom validator object for this TblQuestionEntity</param>
public TblQuestionEntity(IValidator validator)
{
InitClassEmpty(validator, null);
}
/// <summary> CTor</summary>
/// <param name="questionId">PK value for TblQuestion which data should be fetched into this TblQuestion object</param>
public TblQuestionEntity(System.String questionId) : this(questionId, null)
{
}
/// <summary> CTor</summary>
/// <param name="questionId">PK value for TblQuestion which data should be fetched into this TblQuestion object</param>
/// <param name="validator">The custom validator object for this TblQuestionEntity</param>
public TblQuestionEntity(System.String questionId, IValidator validator)
{
InitClassEmpty(validator, null);
this.QuestionId = questionId;
}
/// <summary>Private CTor for deserialization</summary>
/// <param name="info"></param>
/// <param name="context"></param>
protected TblQuestionEntity(SerializationInfo info, StreamingContext context) : base(info, context)
{
// __LLBLGENPRO_USER_CODE_REGION_START DeserializationConstructor
// __LLBLGENPRO_USER_CODE_REGION_END
}
/// <summary>Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entities of type 'TblQuizQuestion' to this entity.</summary>
/// <returns></returns>
public virtual IRelationPredicateBucket GetRelationInfoTblQuizQuestions() { return CreateRelationInfoForNavigator("TblQuizQuestions"); }
/// <summary>Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entity of type 'TblSubject' to this entity.</summary>
/// <returns></returns>
public virtual IRelationPredicateBucket GetRelationInfoTblSubject() { return CreateRelationInfoForNavigator("TblSubject"); }
/// <inheritdoc/>
protected override EntityStaticMetaDataBase GetEntityStaticMetaData() { return _staticMetaData; }
/// <summary>Initializes the class members</summary>
private void InitClassMembers()
{
PerformDependencyInjection();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassMembers
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitClassMembersComplete();
}
/// <summary>Initializes the class with empty data, as if it is a new Entity.</summary>
/// <param name="validator">The validator object for this TblQuestionEntity</param>
/// <param name="fields">Fields of this entity</param>
private void InitClassEmpty(IValidator validator, IEntityFields2 fields)
{
OnInitializing();
this.Fields = fields ?? CreateFields();
this.Validator = validator;
InitClassMembers();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassEmpty
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitialized();
}
/// <summary>The relations object holding all relations of this entity with other entity classes.</summary>
public static TblQuestionRelations Relations { get { return _relationsFactory; } }
/// <summary>Creates a new PrefetchPathElement2 object which contains all the information to prefetch the related entities of type 'TblQuizQuestion' for this entity.</summary>
/// <returns>Ready to use IPrefetchPathElement2 implementation.</returns>
public static IPrefetchPathElement2 PrefetchPathTblQuizQuestions { get { return _staticMetaData.GetPrefetchPathElement("TblQuizQuestions", CommonEntityBase.CreateEntityCollection<TblQuizQuestionEntity>()); } }
/// <summary>Creates a new PrefetchPathElement2 object which contains all the information to prefetch the related entities of type 'TblSubject' for this entity.</summary>
/// <returns>Ready to use IPrefetchPathElement2 implementation.</returns>
public static IPrefetchPathElement2 PrefetchPathTblSubject { get { return _staticMetaData.GetPrefetchPathElement("TblSubject", CommonEntityBase.CreateEntityCollection<TblSubjectEntity>()); } }
/// <summary>The Answer property of the Entity TblQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuestions"."Answer".<br/>Table field type characteristics (type, precision, scale, length): LongVarWChar, 0, 0, 536870911.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String Answer
{
get { return (System.String)GetValue((int)TblQuestionFieldIndex.Answer, true); }
set { SetValue((int)TblQuestionFieldIndex.Answer, value); }
}
/// <summary>The Content property of the Entity TblQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuestions"."Content".<br/>Table field type characteristics (type, precision, scale, length): LongVarWChar, 0, 0, 536870911.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String Content
{
get { return (System.String)GetValue((int)TblQuestionFieldIndex.Content, true); }
set { SetValue((int)TblQuestionFieldIndex.Content, value); }
}
/// <summary>The CreateDate property of the Entity TblQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuestions"."CreateDate".<br/>Table field type characteristics (type, precision, scale, length): Date, 0, 0, 0.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual Nullable<System.DateTime> CreateDate
{
get { return (Nullable<System.DateTime>)GetValue((int)TblQuestionFieldIndex.CreateDate, false); }
set { SetValue((int)TblQuestionFieldIndex.CreateDate, value); }
}
/// <summary>The Difficulty property of the Entity TblQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuestions"."Difficulty".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 1.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String Difficulty
{
get { return (System.String)GetValue((int)TblQuestionFieldIndex.Difficulty, true); }
set { SetValue((int)TblQuestionFieldIndex.Difficulty, value); }
}
/// <summary>The Exclusive property of the Entity TblQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuestions"."Exclusive".<br/>Table field type characteristics (type, precision, scale, length): Boolean, 0, 0, 2.<br/>Table field behavior characteristics (is nullable, is PK, is identity): false, false, false</remarks>
public virtual System.Boolean Exclusive
{
get { return (System.Boolean)GetValue((int)TblQuestionFieldIndex.Exclusive, true); }
set { SetValue((int)TblQuestionFieldIndex.Exclusive, value); }
}
/// <summary>The Explaination property of the Entity TblQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuestions"."Explaination".<br/>Table field type characteristics (type, precision, scale, length): LongVarWChar, 0, 0, 536870911.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String Explaination
{
get { return (System.String)GetValue((int)TblQuestionFieldIndex.Explaination, true); }
set { SetValue((int)TblQuestionFieldIndex.Explaination, value); }
}
/// <summary>The FieldId property of the Entity TblQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuestions"."FieldID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 1.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String FieldId
{
get { return (System.String)GetValue((int)TblQuestionFieldIndex.FieldId, true); }
set { SetValue((int)TblQuestionFieldIndex.FieldId, value); }
}
/// <summary>The Level property of the Entity TblQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuestions"."Level".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 1.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String Level
{
get { return (System.String)GetValue((int)TblQuestionFieldIndex.Level, true); }
set { SetValue((int)TblQuestionFieldIndex.Level, value); }
}
/// <summary>The QuestionCode property of the Entity TblQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuestions"."QuestionCode".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 10.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String QuestionCode
{
get { return (System.String)GetValue((int)TblQuestionFieldIndex.QuestionCode, true); }
set { SetValue((int)TblQuestionFieldIndex.QuestionCode, value); }
}
/// <summary>The QuestionId property of the Entity TblQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuestions"."QuestionID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 32.<br/>Table field behavior characteristics (is nullable, is PK, is identity): false, true, false</remarks>
public virtual System.String QuestionId
{
get { return (System.String)GetValue((int)TblQuestionFieldIndex.QuestionId, true); }
set { SetValue((int)TblQuestionFieldIndex.QuestionId, value); }
}
/// <summary>The SubjectId property of the Entity TblQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuestions"."SubjectID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 2.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String SubjectId
{
get { return (System.String)GetValue((int)TblQuestionFieldIndex.SubjectId, true); }
set { SetValue((int)TblQuestionFieldIndex.SubjectId, value); }
}
/// <summary>The Summary property of the Entity TblQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuestions"."Summary".<br/>Table field type characteristics (type, precision, scale, length): LongVarWChar, 0, 0, 536870911.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String Summary
{
get { return (System.String)GetValue((int)TblQuestionFieldIndex.Summary, true); }
set { SetValue((int)TblQuestionFieldIndex.Summary, value); }
}
/// <summary>Gets the EntityCollection with the related entities of type 'TblQuizQuestionEntity' which are related to this entity via a relation of type '1:n'. If the EntityCollection hasn't been fetched yet, the collection returned will be empty.<br/><br/></summary>
[TypeContainedAttribute(typeof(TblQuizQuestionEntity))]
public virtual EntityCollection<TblQuizQuestionEntity> TblQuizQuestions { get { return GetOrCreateEntityCollection<TblQuizQuestionEntity, TblQuizQuestionEntityFactory>("TblQuestion", true, false, ref _tblQuizQuestions); } }
/// <summary>Gets / sets related entity of type 'TblSubjectEntity' which has to be set using a fetch action earlier. If no related entity is set for this property, null is returned..<br/><br/></summary>
[Browsable(false)]
public virtual TblSubjectEntity TblSubject
{
get { return _tblSubject; }
set { SetSingleRelatedEntityNavigator(value, "TblSubject"); }
}
// __LLBLGENPRO_USER_CODE_REGION_START CustomEntityCode
// __LLBLGENPRO_USER_CODE_REGION_END
}
}
namespace Datalib
{
public enum TblQuestionFieldIndex
{
///<summary>Answer. </summary>
Answer,
///<summary>Content. </summary>
Content,
///<summary>CreateDate. </summary>
CreateDate,
///<summary>Difficulty. </summary>
Difficulty,
///<summary>Exclusive. </summary>
Exclusive,
///<summary>Explaination. </summary>
Explaination,
///<summary>FieldId. </summary>
FieldId,
///<summary>Level. </summary>
Level,
///<summary>QuestionCode. </summary>
QuestionCode,
///<summary>QuestionId. </summary>
QuestionId,
///<summary>SubjectId. </summary>
SubjectId,
///<summary>Summary. </summary>
Summary,
/// <summary></summary>
AmountOfFields
}
}
namespace Datalib.RelationClasses
{
/// <summary>Implements the relations factory for the entity: TblQuestion. </summary>
public partial class TblQuestionRelations: RelationFactory
{
/// <summary>Returns a new IEntityRelation object, between TblQuestionEntity and TblQuizQuestionEntity over the 1:n relation they have, using the relation between the fields: TblQuestion.QuestionId - TblQuizQuestion.QuestionId</summary>
public virtual IEntityRelation TblQuizQuestionEntityUsingQuestionId
{
get { return ModelInfoProviderSingleton.GetInstance().CreateRelation(RelationType.OneToMany, "TblQuizQuestions", true, new[] { TblQuestionFields.QuestionId, TblQuizQuestionFields.QuestionId }); }
}
/// <summary>Returns a new IEntityRelation object, between TblQuestionEntity and TblSubjectEntity over the m:1 relation they have, using the relation between the fields: TblQuestion.SubjectId - TblSubject.SubjectId</summary>
public virtual IEntityRelation TblSubjectEntityUsingSubjectId
{
get { return ModelInfoProviderSingleton.GetInstance().CreateRelation(RelationType.ManyToOne, "TblSubject", false, new[] { TblSubjectFields.SubjectId, TblQuestionFields.SubjectId }); }
}
}
/// <summary>Static class which is used for providing relationship instances which are re-used internally for syncing</summary>
internal static class StaticTblQuestionRelations
{
internal static readonly IEntityRelation TblQuizQuestionEntityUsingQuestionIdStatic = new TblQuestionRelations().TblQuizQuestionEntityUsingQuestionId;
internal static readonly IEntityRelation TblSubjectEntityUsingSubjectIdStatic = new TblQuestionRelations().TblSubjectEntityUsingSubjectId;
/// <summary>CTor</summary>
static StaticTblQuestionRelations() { }
}
}

View File

@@ -0,0 +1,271 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.ComponentModel;
using System.Collections.Generic;
using System.Runtime.Serialization;
using System.Xml.Serialization;
using Datalib.HelperClasses;
using Datalib.FactoryClasses;
using Datalib.RelationClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.EntityClasses
{
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalNamespaces
// __LLBLGENPRO_USER_CODE_REGION_END
/// <summary>Entity class which represents the entity 'TblQuiz'.<br/><br/></summary>
[Serializable]
public partial class TblQuizEntity : CommonEntityBase
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalInterfaces
// __LLBLGENPRO_USER_CODE_REGION_END
{
private EntityCollection<TblQuizQuestionEntity> _tblQuizQuestions;
private TblQuizTemplateEntity _tblQuizTemplate;
// __LLBLGENPRO_USER_CODE_REGION_START PrivateMembers
// __LLBLGENPRO_USER_CODE_REGION_END
private static TblQuizEntityStaticMetaData _staticMetaData = new TblQuizEntityStaticMetaData();
private static TblQuizRelations _relationsFactory = new TblQuizRelations();
/// <summary>All names of fields mapped onto a relation. Usable for in-memory filtering</summary>
public static partial class MemberNames
{
/// <summary>Member name TblQuizTemplate</summary>
public static readonly string TblQuizTemplate = "TblQuizTemplate";
/// <summary>Member name TblQuizQuestions</summary>
public static readonly string TblQuizQuestions = "TblQuizQuestions";
}
/// <summary>Static meta-data storage for navigator related information</summary>
protected class TblQuizEntityStaticMetaData : EntityStaticMetaDataBase
{
public TblQuizEntityStaticMetaData()
{
SetEntityCoreInfo("TblQuizEntity", InheritanceHierarchyType.None, false, (int)Datalib.EntityType.TblQuizEntity, typeof(TblQuizEntity), typeof(TblQuizEntityFactory), false);
AddNavigatorMetaData<TblQuizEntity, EntityCollection<TblQuizQuestionEntity>>("TblQuizQuestions", a => a._tblQuizQuestions, (a, b) => a._tblQuizQuestions = b, a => a.TblQuizQuestions, () => new TblQuizRelations().TblQuizQuestionEntityUsingQuizId, typeof(TblQuizQuestionEntity), (int)Datalib.EntityType.TblQuizQuestionEntity);
AddNavigatorMetaData<TblQuizEntity, TblQuizTemplateEntity>("TblQuizTemplate", "TblQuizzes", (a, b) => a._tblQuizTemplate = b, a => a._tblQuizTemplate, (a, b) => a.TblQuizTemplate = b, Datalib.RelationClasses.StaticTblQuizRelations.TblQuizTemplateEntityUsingQuizTemplateIdStatic, ()=>new TblQuizRelations().TblQuizTemplateEntityUsingQuizTemplateId, null, new int[] { (int)TblQuizFieldIndex.QuizTemplateId }, null, true, (int)Datalib.EntityType.TblQuizTemplateEntity);
}
}
/// <summary>Static ctor</summary>
static TblQuizEntity()
{
}
/// <summary> CTor</summary>
public TblQuizEntity()
{
InitClassEmpty(null, null);
}
/// <summary> CTor</summary>
/// <param name="fields">Fields object to set as the fields for this entity.</param>
public TblQuizEntity(IEntityFields2 fields)
{
InitClassEmpty(null, fields);
}
/// <summary> CTor</summary>
/// <param name="validator">The custom validator object for this TblQuizEntity</param>
public TblQuizEntity(IValidator validator)
{
InitClassEmpty(validator, null);
}
/// <summary> CTor</summary>
/// <param name="quizId">PK value for TblQuiz which data should be fetched into this TblQuiz object</param>
public TblQuizEntity(System.String quizId) : this(quizId, null)
{
}
/// <summary> CTor</summary>
/// <param name="quizId">PK value for TblQuiz which data should be fetched into this TblQuiz object</param>
/// <param name="validator">The custom validator object for this TblQuizEntity</param>
public TblQuizEntity(System.String quizId, IValidator validator)
{
InitClassEmpty(validator, null);
this.QuizId = quizId;
}
/// <summary>Private CTor for deserialization</summary>
/// <param name="info"></param>
/// <param name="context"></param>
protected TblQuizEntity(SerializationInfo info, StreamingContext context) : base(info, context)
{
// __LLBLGENPRO_USER_CODE_REGION_START DeserializationConstructor
// __LLBLGENPRO_USER_CODE_REGION_END
}
/// <summary>Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entities of type 'TblQuizQuestion' to this entity.</summary>
/// <returns></returns>
public virtual IRelationPredicateBucket GetRelationInfoTblQuizQuestions() { return CreateRelationInfoForNavigator("TblQuizQuestions"); }
/// <summary>Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entity of type 'TblQuizTemplate' to this entity.</summary>
/// <returns></returns>
public virtual IRelationPredicateBucket GetRelationInfoTblQuizTemplate() { return CreateRelationInfoForNavigator("TblQuizTemplate"); }
/// <inheritdoc/>
protected override EntityStaticMetaDataBase GetEntityStaticMetaData() { return _staticMetaData; }
/// <summary>Initializes the class members</summary>
private void InitClassMembers()
{
PerformDependencyInjection();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassMembers
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitClassMembersComplete();
}
/// <summary>Initializes the class with empty data, as if it is a new Entity.</summary>
/// <param name="validator">The validator object for this TblQuizEntity</param>
/// <param name="fields">Fields of this entity</param>
private void InitClassEmpty(IValidator validator, IEntityFields2 fields)
{
OnInitializing();
this.Fields = fields ?? CreateFields();
this.Validator = validator;
InitClassMembers();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassEmpty
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitialized();
}
/// <summary>The relations object holding all relations of this entity with other entity classes.</summary>
public static TblQuizRelations Relations { get { return _relationsFactory; } }
/// <summary>Creates a new PrefetchPathElement2 object which contains all the information to prefetch the related entities of type 'TblQuizQuestion' for this entity.</summary>
/// <returns>Ready to use IPrefetchPathElement2 implementation.</returns>
public static IPrefetchPathElement2 PrefetchPathTblQuizQuestions { get { return _staticMetaData.GetPrefetchPathElement("TblQuizQuestions", CommonEntityBase.CreateEntityCollection<TblQuizQuestionEntity>()); } }
/// <summary>Creates a new PrefetchPathElement2 object which contains all the information to prefetch the related entities of type 'TblQuizTemplate' for this entity.</summary>
/// <returns>Ready to use IPrefetchPathElement2 implementation.</returns>
public static IPrefetchPathElement2 PrefetchPathTblQuizTemplate { get { return _staticMetaData.GetPrefetchPathElement("TblQuizTemplate", CommonEntityBase.CreateEntityCollection<TblQuizTemplateEntity>()); } }
/// <summary>The QuizCode property of the Entity TblQuiz<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizs"."QuizCode".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 255.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String QuizCode
{
get { return (System.String)GetValue((int)TblQuizFieldIndex.QuizCode, true); }
set { SetValue((int)TblQuizFieldIndex.QuizCode, value); }
}
/// <summary>The QuizId property of the Entity TblQuiz<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizs"."QuizID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 32.<br/>Table field behavior characteristics (is nullable, is PK, is identity): false, true, false</remarks>
public virtual System.String QuizId
{
get { return (System.String)GetValue((int)TblQuizFieldIndex.QuizId, true); }
set { SetValue((int)TblQuizFieldIndex.QuizId, value); }
}
/// <summary>The QuizName property of the Entity TblQuiz<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizs"."QuizName".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 255.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String QuizName
{
get { return (System.String)GetValue((int)TblQuizFieldIndex.QuizName, true); }
set { SetValue((int)TblQuizFieldIndex.QuizName, value); }
}
/// <summary>The QuizTemplateId property of the Entity TblQuiz<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizs"."QuizTemplateID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 32.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String QuizTemplateId
{
get { return (System.String)GetValue((int)TblQuizFieldIndex.QuizTemplateId, true); }
set { SetValue((int)TblQuizFieldIndex.QuizTemplateId, value); }
}
/// <summary>The QuizTime property of the Entity TblQuiz<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizs"."QuizTime".<br/>Table field type characteristics (type, precision, scale, length): Integer, 10, 0, 0.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual Nullable<System.Int32> QuizTime
{
get { return (Nullable<System.Int32>)GetValue((int)TblQuizFieldIndex.QuizTime, false); }
set { SetValue((int)TblQuizFieldIndex.QuizTime, value); }
}
/// <summary>The QuizYear property of the Entity TblQuiz<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizs"."QuizYear".<br/>Table field type characteristics (type, precision, scale, length): Integer, 10, 0, 0.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual Nullable<System.Int32> QuizYear
{
get { return (Nullable<System.Int32>)GetValue((int)TblQuizFieldIndex.QuizYear, false); }
set { SetValue((int)TblQuizFieldIndex.QuizYear, value); }
}
/// <summary>Gets the EntityCollection with the related entities of type 'TblQuizQuestionEntity' which are related to this entity via a relation of type '1:n'. If the EntityCollection hasn't been fetched yet, the collection returned will be empty.<br/><br/></summary>
[TypeContainedAttribute(typeof(TblQuizQuestionEntity))]
public virtual EntityCollection<TblQuizQuestionEntity> TblQuizQuestions { get { return GetOrCreateEntityCollection<TblQuizQuestionEntity, TblQuizQuestionEntityFactory>("TblQuiz", true, false, ref _tblQuizQuestions); } }
/// <summary>Gets / sets related entity of type 'TblQuizTemplateEntity' which has to be set using a fetch action earlier. If no related entity is set for this property, null is returned..<br/><br/></summary>
[Browsable(false)]
public virtual TblQuizTemplateEntity TblQuizTemplate
{
get { return _tblQuizTemplate; }
set { SetSingleRelatedEntityNavigator(value, "TblQuizTemplate"); }
}
// __LLBLGENPRO_USER_CODE_REGION_START CustomEntityCode
// __LLBLGENPRO_USER_CODE_REGION_END
}
}
namespace Datalib
{
public enum TblQuizFieldIndex
{
///<summary>QuizCode. </summary>
QuizCode,
///<summary>QuizId. </summary>
QuizId,
///<summary>QuizName. </summary>
QuizName,
///<summary>QuizTemplateId. </summary>
QuizTemplateId,
///<summary>QuizTime. </summary>
QuizTime,
///<summary>QuizYear. </summary>
QuizYear,
/// <summary></summary>
AmountOfFields
}
}
namespace Datalib.RelationClasses
{
/// <summary>Implements the relations factory for the entity: TblQuiz. </summary>
public partial class TblQuizRelations: RelationFactory
{
/// <summary>Returns a new IEntityRelation object, between TblQuizEntity and TblQuizQuestionEntity over the 1:n relation they have, using the relation between the fields: TblQuiz.QuizId - TblQuizQuestion.QuizId</summary>
public virtual IEntityRelation TblQuizQuestionEntityUsingQuizId
{
get { return ModelInfoProviderSingleton.GetInstance().CreateRelation(RelationType.OneToMany, "TblQuizQuestions", true, new[] { TblQuizFields.QuizId, TblQuizQuestionFields.QuizId }); }
}
/// <summary>Returns a new IEntityRelation object, between TblQuizEntity and TblQuizTemplateEntity over the m:1 relation they have, using the relation between the fields: TblQuiz.QuizTemplateId - TblQuizTemplate.QuizTemplateId</summary>
public virtual IEntityRelation TblQuizTemplateEntityUsingQuizTemplateId
{
get { return ModelInfoProviderSingleton.GetInstance().CreateRelation(RelationType.ManyToOne, "TblQuizTemplate", false, new[] { TblQuizTemplateFields.QuizTemplateId, TblQuizFields.QuizTemplateId }); }
}
}
/// <summary>Static class which is used for providing relationship instances which are re-used internally for syncing</summary>
internal static class StaticTblQuizRelations
{
internal static readonly IEntityRelation TblQuizQuestionEntityUsingQuizIdStatic = new TblQuizRelations().TblQuizQuestionEntityUsingQuizId;
internal static readonly IEntityRelation TblQuizTemplateEntityUsingQuizTemplateIdStatic = new TblQuizRelations().TblQuizTemplateEntityUsingQuizTemplateId;
/// <summary>CTor</summary>
static StaticTblQuizRelations() { }
}
}

View File

@@ -0,0 +1,266 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.ComponentModel;
using System.Collections.Generic;
using System.Runtime.Serialization;
using System.Xml.Serialization;
using Datalib.HelperClasses;
using Datalib.FactoryClasses;
using Datalib.RelationClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.EntityClasses
{
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalNamespaces
// __LLBLGENPRO_USER_CODE_REGION_END
/// <summary>Entity class which represents the entity 'TblQuizQuestion'.<br/><br/></summary>
[Serializable]
public partial class TblQuizQuestionEntity : CommonEntityBase
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalInterfaces
// __LLBLGENPRO_USER_CODE_REGION_END
{
private TblQuestionEntity _tblQuestion;
private TblQuizEntity _tblQuiz;
// __LLBLGENPRO_USER_CODE_REGION_START PrivateMembers
// __LLBLGENPRO_USER_CODE_REGION_END
private static TblQuizQuestionEntityStaticMetaData _staticMetaData = new TblQuizQuestionEntityStaticMetaData();
private static TblQuizQuestionRelations _relationsFactory = new TblQuizQuestionRelations();
/// <summary>All names of fields mapped onto a relation. Usable for in-memory filtering</summary>
public static partial class MemberNames
{
/// <summary>Member name TblQuestion</summary>
public static readonly string TblQuestion = "TblQuestion";
/// <summary>Member name TblQuiz</summary>
public static readonly string TblQuiz = "TblQuiz";
}
/// <summary>Static meta-data storage for navigator related information</summary>
protected class TblQuizQuestionEntityStaticMetaData : EntityStaticMetaDataBase
{
public TblQuizQuestionEntityStaticMetaData()
{
SetEntityCoreInfo("TblQuizQuestionEntity", InheritanceHierarchyType.None, false, (int)Datalib.EntityType.TblQuizQuestionEntity, typeof(TblQuizQuestionEntity), typeof(TblQuizQuestionEntityFactory), false);
AddNavigatorMetaData<TblQuizQuestionEntity, TblQuestionEntity>("TblQuestion", "TblQuizQuestions", (a, b) => a._tblQuestion = b, a => a._tblQuestion, (a, b) => a.TblQuestion = b, Datalib.RelationClasses.StaticTblQuizQuestionRelations.TblQuestionEntityUsingQuestionIdStatic, ()=>new TblQuizQuestionRelations().TblQuestionEntityUsingQuestionId, null, new int[] { (int)TblQuizQuestionFieldIndex.QuestionId }, null, true, (int)Datalib.EntityType.TblQuestionEntity);
AddNavigatorMetaData<TblQuizQuestionEntity, TblQuizEntity>("TblQuiz", "TblQuizQuestions", (a, b) => a._tblQuiz = b, a => a._tblQuiz, (a, b) => a.TblQuiz = b, Datalib.RelationClasses.StaticTblQuizQuestionRelations.TblQuizEntityUsingQuizIdStatic, ()=>new TblQuizQuestionRelations().TblQuizEntityUsingQuizId, null, new int[] { (int)TblQuizQuestionFieldIndex.QuizId }, null, true, (int)Datalib.EntityType.TblQuizEntity);
}
}
/// <summary>Static ctor</summary>
static TblQuizQuestionEntity()
{
}
/// <summary> CTor</summary>
public TblQuizQuestionEntity()
{
InitClassEmpty(null, null);
}
/// <summary> CTor</summary>
/// <param name="fields">Fields object to set as the fields for this entity.</param>
public TblQuizQuestionEntity(IEntityFields2 fields)
{
InitClassEmpty(null, fields);
}
/// <summary> CTor</summary>
/// <param name="validator">The custom validator object for this TblQuizQuestionEntity</param>
public TblQuizQuestionEntity(IValidator validator)
{
InitClassEmpty(validator, null);
}
/// <summary> CTor</summary>
/// <param name="uniqueId">PK value for TblQuizQuestion which data should be fetched into this TblQuizQuestion object</param>
public TblQuizQuestionEntity(System.String uniqueId) : this(uniqueId, null)
{
}
/// <summary> CTor</summary>
/// <param name="uniqueId">PK value for TblQuizQuestion which data should be fetched into this TblQuizQuestion object</param>
/// <param name="validator">The custom validator object for this TblQuizQuestionEntity</param>
public TblQuizQuestionEntity(System.String uniqueId, IValidator validator)
{
InitClassEmpty(validator, null);
this.UniqueId = uniqueId;
}
/// <summary>Private CTor for deserialization</summary>
/// <param name="info"></param>
/// <param name="context"></param>
protected TblQuizQuestionEntity(SerializationInfo info, StreamingContext context) : base(info, context)
{
// __LLBLGENPRO_USER_CODE_REGION_START DeserializationConstructor
// __LLBLGENPRO_USER_CODE_REGION_END
}
/// <summary>Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entity of type 'TblQuestion' to this entity.</summary>
/// <returns></returns>
public virtual IRelationPredicateBucket GetRelationInfoTblQuestion() { return CreateRelationInfoForNavigator("TblQuestion"); }
/// <summary>Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entity of type 'TblQuiz' to this entity.</summary>
/// <returns></returns>
public virtual IRelationPredicateBucket GetRelationInfoTblQuiz() { return CreateRelationInfoForNavigator("TblQuiz"); }
/// <inheritdoc/>
protected override EntityStaticMetaDataBase GetEntityStaticMetaData() { return _staticMetaData; }
/// <summary>Initializes the class members</summary>
private void InitClassMembers()
{
PerformDependencyInjection();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassMembers
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitClassMembersComplete();
}
/// <summary>Initializes the class with empty data, as if it is a new Entity.</summary>
/// <param name="validator">The validator object for this TblQuizQuestionEntity</param>
/// <param name="fields">Fields of this entity</param>
private void InitClassEmpty(IValidator validator, IEntityFields2 fields)
{
OnInitializing();
this.Fields = fields ?? CreateFields();
this.Validator = validator;
InitClassMembers();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassEmpty
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitialized();
}
/// <summary>The relations object holding all relations of this entity with other entity classes.</summary>
public static TblQuizQuestionRelations Relations { get { return _relationsFactory; } }
/// <summary>Creates a new PrefetchPathElement2 object which contains all the information to prefetch the related entities of type 'TblQuestion' for this entity.</summary>
/// <returns>Ready to use IPrefetchPathElement2 implementation.</returns>
public static IPrefetchPathElement2 PrefetchPathTblQuestion { get { return _staticMetaData.GetPrefetchPathElement("TblQuestion", CommonEntityBase.CreateEntityCollection<TblQuestionEntity>()); } }
/// <summary>Creates a new PrefetchPathElement2 object which contains all the information to prefetch the related entities of type 'TblQuiz' for this entity.</summary>
/// <returns>Ready to use IPrefetchPathElement2 implementation.</returns>
public static IPrefetchPathElement2 PrefetchPathTblQuiz { get { return _staticMetaData.GetPrefetchPathElement("TblQuiz", CommonEntityBase.CreateEntityCollection<TblQuizEntity>()); } }
/// <summary>The QuestionId property of the Entity TblQuizQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizQuestions"."QuestionID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 32.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String QuestionId
{
get { return (System.String)GetValue((int)TblQuizQuestionFieldIndex.QuestionId, true); }
set { SetValue((int)TblQuizQuestionFieldIndex.QuestionId, value); }
}
/// <summary>The QuizId property of the Entity TblQuizQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizQuestions"."QuizID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 32.<br/>Table field behavior characteristics (is nullable, is PK, is identity): false, false, false</remarks>
public virtual System.String QuizId
{
get { return (System.String)GetValue((int)TblQuizQuestionFieldIndex.QuizId, true); }
set { SetValue((int)TblQuizQuestionFieldIndex.QuizId, value); }
}
/// <summary>The QuizTemplateId property of the Entity TblQuizQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizQuestions"."QuizTemplateID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 32.<br/>Table field behavior characteristics (is nullable, is PK, is identity): false, false, false</remarks>
public virtual System.String QuizTemplateId
{
get { return (System.String)GetValue((int)TblQuizQuestionFieldIndex.QuizTemplateId, true); }
set { SetValue((int)TblQuizQuestionFieldIndex.QuizTemplateId, value); }
}
/// <summary>The TrainingTypeId property of the Entity TblQuizQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizQuestions"."TrainingTypeID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 2.<br/>Table field behavior characteristics (is nullable, is PK, is identity): false, false, false</remarks>
public virtual System.String TrainingTypeId
{
get { return (System.String)GetValue((int)TblQuizQuestionFieldIndex.TrainingTypeId, true); }
set { SetValue((int)TblQuizQuestionFieldIndex.TrainingTypeId, value); }
}
/// <summary>The UniqueId property of the Entity TblQuizQuestion<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizQuestions"."UniqueID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 32.<br/>Table field behavior characteristics (is nullable, is PK, is identity): false, true, false</remarks>
public virtual System.String UniqueId
{
get { return (System.String)GetValue((int)TblQuizQuestionFieldIndex.UniqueId, true); }
set { SetValue((int)TblQuizQuestionFieldIndex.UniqueId, value); }
}
/// <summary>Gets / sets related entity of type 'TblQuestionEntity' which has to be set using a fetch action earlier. If no related entity is set for this property, null is returned..<br/><br/></summary>
[Browsable(false)]
public virtual TblQuestionEntity TblQuestion
{
get { return _tblQuestion; }
set { SetSingleRelatedEntityNavigator(value, "TblQuestion"); }
}
/// <summary>Gets / sets related entity of type 'TblQuizEntity' which has to be set using a fetch action earlier. If no related entity is set for this property, null is returned..<br/><br/></summary>
[Browsable(false)]
public virtual TblQuizEntity TblQuiz
{
get { return _tblQuiz; }
set { SetSingleRelatedEntityNavigator(value, "TblQuiz"); }
}
// __LLBLGENPRO_USER_CODE_REGION_START CustomEntityCode
// __LLBLGENPRO_USER_CODE_REGION_END
}
}
namespace Datalib
{
public enum TblQuizQuestionFieldIndex
{
///<summary>QuestionId. </summary>
QuestionId,
///<summary>QuizId. </summary>
QuizId,
///<summary>QuizTemplateId. </summary>
QuizTemplateId,
///<summary>TrainingTypeId. </summary>
TrainingTypeId,
///<summary>UniqueId. </summary>
UniqueId,
/// <summary></summary>
AmountOfFields
}
}
namespace Datalib.RelationClasses
{
/// <summary>Implements the relations factory for the entity: TblQuizQuestion. </summary>
public partial class TblQuizQuestionRelations: RelationFactory
{
/// <summary>Returns a new IEntityRelation object, between TblQuizQuestionEntity and TblQuestionEntity over the m:1 relation they have, using the relation between the fields: TblQuizQuestion.QuestionId - TblQuestion.QuestionId</summary>
public virtual IEntityRelation TblQuestionEntityUsingQuestionId
{
get { return ModelInfoProviderSingleton.GetInstance().CreateRelation(RelationType.ManyToOne, "TblQuestion", false, new[] { TblQuestionFields.QuestionId, TblQuizQuestionFields.QuestionId }); }
}
/// <summary>Returns a new IEntityRelation object, between TblQuizQuestionEntity and TblQuizEntity over the m:1 relation they have, using the relation between the fields: TblQuizQuestion.QuizId - TblQuiz.QuizId</summary>
public virtual IEntityRelation TblQuizEntityUsingQuizId
{
get { return ModelInfoProviderSingleton.GetInstance().CreateRelation(RelationType.ManyToOne, "TblQuiz", false, new[] { TblQuizFields.QuizId, TblQuizQuestionFields.QuizId }); }
}
}
/// <summary>Static class which is used for providing relationship instances which are re-used internally for syncing</summary>
internal static class StaticTblQuizQuestionRelations
{
internal static readonly IEntityRelation TblQuestionEntityUsingQuestionIdStatic = new TblQuizQuestionRelations().TblQuestionEntityUsingQuestionId;
internal static readonly IEntityRelation TblQuizEntityUsingQuizIdStatic = new TblQuizQuestionRelations().TblQuizEntityUsingQuizId;
/// <summary>CTor</summary>
static StaticTblQuizQuestionRelations() { }
}
}

View File

@@ -0,0 +1,259 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.ComponentModel;
using System.Collections.Generic;
using System.Runtime.Serialization;
using System.Xml.Serialization;
using Datalib.HelperClasses;
using Datalib.FactoryClasses;
using Datalib.RelationClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.EntityClasses
{
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalNamespaces
// __LLBLGENPRO_USER_CODE_REGION_END
/// <summary>Entity class which represents the entity 'TblQuizTemplateDetail'.<br/><br/></summary>
[Serializable]
public partial class TblQuizTemplateDetailEntity : CommonEntityBase
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalInterfaces
// __LLBLGENPRO_USER_CODE_REGION_END
{
private TblQuizTemplateEntity _tblQuizTemplate;
// __LLBLGENPRO_USER_CODE_REGION_START PrivateMembers
// __LLBLGENPRO_USER_CODE_REGION_END
private static TblQuizTemplateDetailEntityStaticMetaData _staticMetaData = new TblQuizTemplateDetailEntityStaticMetaData();
private static TblQuizTemplateDetailRelations _relationsFactory = new TblQuizTemplateDetailRelations();
/// <summary>All names of fields mapped onto a relation. Usable for in-memory filtering</summary>
public static partial class MemberNames
{
/// <summary>Member name TblQuizTemplate</summary>
public static readonly string TblQuizTemplate = "TblQuizTemplate";
}
/// <summary>Static meta-data storage for navigator related information</summary>
protected class TblQuizTemplateDetailEntityStaticMetaData : EntityStaticMetaDataBase
{
public TblQuizTemplateDetailEntityStaticMetaData()
{
SetEntityCoreInfo("TblQuizTemplateDetailEntity", InheritanceHierarchyType.None, false, (int)Datalib.EntityType.TblQuizTemplateDetailEntity, typeof(TblQuizTemplateDetailEntity), typeof(TblQuizTemplateDetailEntityFactory), false);
AddNavigatorMetaData<TblQuizTemplateDetailEntity, TblQuizTemplateEntity>("TblQuizTemplate", "TblQuizTemplateDetails", (a, b) => a._tblQuizTemplate = b, a => a._tblQuizTemplate, (a, b) => a.TblQuizTemplate = b, Datalib.RelationClasses.StaticTblQuizTemplateDetailRelations.TblQuizTemplateEntityUsingQuizTemplateIdStatic, ()=>new TblQuizTemplateDetailRelations().TblQuizTemplateEntityUsingQuizTemplateId, null, new int[] { (int)TblQuizTemplateDetailFieldIndex.QuizTemplateId }, null, true, (int)Datalib.EntityType.TblQuizTemplateEntity);
}
}
/// <summary>Static ctor</summary>
static TblQuizTemplateDetailEntity()
{
}
/// <summary> CTor</summary>
public TblQuizTemplateDetailEntity()
{
InitClassEmpty(null, null);
}
/// <summary> CTor</summary>
/// <param name="fields">Fields object to set as the fields for this entity.</param>
public TblQuizTemplateDetailEntity(IEntityFields2 fields)
{
InitClassEmpty(null, fields);
}
/// <summary> CTor</summary>
/// <param name="validator">The custom validator object for this TblQuizTemplateDetailEntity</param>
public TblQuizTemplateDetailEntity(IValidator validator)
{
InitClassEmpty(validator, null);
}
/// <summary> CTor</summary>
/// <param name="uniqueId">PK value for TblQuizTemplateDetail which data should be fetched into this TblQuizTemplateDetail object</param>
public TblQuizTemplateDetailEntity(System.String uniqueId) : this(uniqueId, null)
{
}
/// <summary> CTor</summary>
/// <param name="uniqueId">PK value for TblQuizTemplateDetail which data should be fetched into this TblQuizTemplateDetail object</param>
/// <param name="validator">The custom validator object for this TblQuizTemplateDetailEntity</param>
public TblQuizTemplateDetailEntity(System.String uniqueId, IValidator validator)
{
InitClassEmpty(validator, null);
this.UniqueId = uniqueId;
}
/// <summary>Private CTor for deserialization</summary>
/// <param name="info"></param>
/// <param name="context"></param>
protected TblQuizTemplateDetailEntity(SerializationInfo info, StreamingContext context) : base(info, context)
{
// __LLBLGENPRO_USER_CODE_REGION_START DeserializationConstructor
// __LLBLGENPRO_USER_CODE_REGION_END
}
/// <summary>Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entity of type 'TblQuizTemplate' to this entity.</summary>
/// <returns></returns>
public virtual IRelationPredicateBucket GetRelationInfoTblQuizTemplate() { return CreateRelationInfoForNavigator("TblQuizTemplate"); }
/// <inheritdoc/>
protected override EntityStaticMetaDataBase GetEntityStaticMetaData() { return _staticMetaData; }
/// <summary>Initializes the class members</summary>
private void InitClassMembers()
{
PerformDependencyInjection();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassMembers
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitClassMembersComplete();
}
/// <summary>Initializes the class with empty data, as if it is a new Entity.</summary>
/// <param name="validator">The validator object for this TblQuizTemplateDetailEntity</param>
/// <param name="fields">Fields of this entity</param>
private void InitClassEmpty(IValidator validator, IEntityFields2 fields)
{
OnInitializing();
this.Fields = fields ?? CreateFields();
this.Validator = validator;
InitClassMembers();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassEmpty
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitialized();
}
/// <summary>The relations object holding all relations of this entity with other entity classes.</summary>
public static TblQuizTemplateDetailRelations Relations { get { return _relationsFactory; } }
/// <summary>Creates a new PrefetchPathElement2 object which contains all the information to prefetch the related entities of type 'TblQuizTemplate' for this entity.</summary>
/// <returns>Ready to use IPrefetchPathElement2 implementation.</returns>
public static IPrefetchPathElement2 PrefetchPathTblQuizTemplate { get { return _staticMetaData.GetPrefetchPathElement("TblQuizTemplate", CommonEntityBase.CreateEntityCollection<TblQuizTemplateEntity>()); } }
/// <summary>The Difficulty property of the Entity TblQuizTemplateDetail<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizTemplateDetail"."Difficulty".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 1.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String Difficulty
{
get { return (System.String)GetValue((int)TblQuizTemplateDetailFieldIndex.Difficulty, true); }
set { SetValue((int)TblQuizTemplateDetailFieldIndex.Difficulty, value); }
}
/// <summary>The FieldId property of the Entity TblQuizTemplateDetail<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizTemplateDetail"."FieldID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 1.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String FieldId
{
get { return (System.String)GetValue((int)TblQuizTemplateDetailFieldIndex.FieldId, true); }
set { SetValue((int)TblQuizTemplateDetailFieldIndex.FieldId, value); }
}
/// <summary>The Level property of the Entity TblQuizTemplateDetail<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizTemplateDetail"."Level".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 1.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String Level
{
get { return (System.String)GetValue((int)TblQuizTemplateDetailFieldIndex.Level, true); }
set { SetValue((int)TblQuizTemplateDetailFieldIndex.Level, value); }
}
/// <summary>The QuestionNum property of the Entity TblQuizTemplateDetail<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizTemplateDetail"."QuestionNum".<br/>Table field type characteristics (type, precision, scale, length): SmallInt, 5, 0, 0.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual Nullable<System.Int16> QuestionNum
{
get { return (Nullable<System.Int16>)GetValue((int)TblQuizTemplateDetailFieldIndex.QuestionNum, false); }
set { SetValue((int)TblQuizTemplateDetailFieldIndex.QuestionNum, value); }
}
/// <summary>The QuizTemplateId property of the Entity TblQuizTemplateDetail<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizTemplateDetail"."QuizTemplateID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 32.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String QuizTemplateId
{
get { return (System.String)GetValue((int)TblQuizTemplateDetailFieldIndex.QuizTemplateId, true); }
set { SetValue((int)TblQuizTemplateDetailFieldIndex.QuizTemplateId, value); }
}
/// <summary>The SubjectId property of the Entity TblQuizTemplateDetail<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizTemplateDetail"."SubjectID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 2.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String SubjectId
{
get { return (System.String)GetValue((int)TblQuizTemplateDetailFieldIndex.SubjectId, true); }
set { SetValue((int)TblQuizTemplateDetailFieldIndex.SubjectId, value); }
}
/// <summary>The UniqueId property of the Entity TblQuizTemplateDetail<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizTemplateDetail"."UniqueID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 32.<br/>Table field behavior characteristics (is nullable, is PK, is identity): false, true, false</remarks>
public virtual System.String UniqueId
{
get { return (System.String)GetValue((int)TblQuizTemplateDetailFieldIndex.UniqueId, true); }
set { SetValue((int)TblQuizTemplateDetailFieldIndex.UniqueId, value); }
}
/// <summary>Gets / sets related entity of type 'TblQuizTemplateEntity' which has to be set using a fetch action earlier. If no related entity is set for this property, null is returned..<br/><br/></summary>
[Browsable(false)]
public virtual TblQuizTemplateEntity TblQuizTemplate
{
get { return _tblQuizTemplate; }
set { SetSingleRelatedEntityNavigator(value, "TblQuizTemplate"); }
}
// __LLBLGENPRO_USER_CODE_REGION_START CustomEntityCode
// __LLBLGENPRO_USER_CODE_REGION_END
}
}
namespace Datalib
{
public enum TblQuizTemplateDetailFieldIndex
{
///<summary>Difficulty. </summary>
Difficulty,
///<summary>FieldId. </summary>
FieldId,
///<summary>Level. </summary>
Level,
///<summary>QuestionNum. </summary>
QuestionNum,
///<summary>QuizTemplateId. </summary>
QuizTemplateId,
///<summary>SubjectId. </summary>
SubjectId,
///<summary>UniqueId. </summary>
UniqueId,
/// <summary></summary>
AmountOfFields
}
}
namespace Datalib.RelationClasses
{
/// <summary>Implements the relations factory for the entity: TblQuizTemplateDetail. </summary>
public partial class TblQuizTemplateDetailRelations: RelationFactory
{
/// <summary>Returns a new IEntityRelation object, between TblQuizTemplateDetailEntity and TblQuizTemplateEntity over the m:1 relation they have, using the relation between the fields: TblQuizTemplateDetail.QuizTemplateId - TblQuizTemplate.QuizTemplateId</summary>
public virtual IEntityRelation TblQuizTemplateEntityUsingQuizTemplateId
{
get { return ModelInfoProviderSingleton.GetInstance().CreateRelation(RelationType.ManyToOne, "TblQuizTemplate", false, new[] { TblQuizTemplateFields.QuizTemplateId, TblQuizTemplateDetailFields.QuizTemplateId }); }
}
}
/// <summary>Static class which is used for providing relationship instances which are re-used internally for syncing</summary>
internal static class StaticTblQuizTemplateDetailRelations
{
internal static readonly IEntityRelation TblQuizTemplateEntityUsingQuizTemplateIdStatic = new TblQuizTemplateDetailRelations().TblQuizTemplateEntityUsingQuizTemplateId;
/// <summary>CTor</summary>
static StaticTblQuizTemplateDetailRelations() { }
}
}

View File

@@ -0,0 +1,304 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.ComponentModel;
using System.Collections.Generic;
using System.Runtime.Serialization;
using System.Xml.Serialization;
using Datalib.HelperClasses;
using Datalib.FactoryClasses;
using Datalib.RelationClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.EntityClasses
{
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalNamespaces
// __LLBLGENPRO_USER_CODE_REGION_END
/// <summary>Entity class which represents the entity 'TblQuizTemplate'.<br/><br/></summary>
[Serializable]
public partial class TblQuizTemplateEntity : CommonEntityBase
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalInterfaces
// __LLBLGENPRO_USER_CODE_REGION_END
{
private EntityCollection<TblQuizEntity> _tblQuizzes;
private EntityCollection<TblQuizTemplateDetailEntity> _tblQuizTemplateDetails;
private TblTrainingTypeEntity _tblTrainingType;
// __LLBLGENPRO_USER_CODE_REGION_START PrivateMembers
// __LLBLGENPRO_USER_CODE_REGION_END
private static TblQuizTemplateEntityStaticMetaData _staticMetaData = new TblQuizTemplateEntityStaticMetaData();
private static TblQuizTemplateRelations _relationsFactory = new TblQuizTemplateRelations();
/// <summary>All names of fields mapped onto a relation. Usable for in-memory filtering</summary>
public static partial class MemberNames
{
/// <summary>Member name TblTrainingType</summary>
public static readonly string TblTrainingType = "TblTrainingType";
/// <summary>Member name TblQuizzes</summary>
public static readonly string TblQuizzes = "TblQuizzes";
/// <summary>Member name TblQuizTemplateDetails</summary>
public static readonly string TblQuizTemplateDetails = "TblQuizTemplateDetails";
}
/// <summary>Static meta-data storage for navigator related information</summary>
protected class TblQuizTemplateEntityStaticMetaData : EntityStaticMetaDataBase
{
public TblQuizTemplateEntityStaticMetaData()
{
SetEntityCoreInfo("TblQuizTemplateEntity", InheritanceHierarchyType.None, false, (int)Datalib.EntityType.TblQuizTemplateEntity, typeof(TblQuizTemplateEntity), typeof(TblQuizTemplateEntityFactory), false);
AddNavigatorMetaData<TblQuizTemplateEntity, EntityCollection<TblQuizEntity>>("TblQuizzes", a => a._tblQuizzes, (a, b) => a._tblQuizzes = b, a => a.TblQuizzes, () => new TblQuizTemplateRelations().TblQuizEntityUsingQuizTemplateId, typeof(TblQuizEntity), (int)Datalib.EntityType.TblQuizEntity);
AddNavigatorMetaData<TblQuizTemplateEntity, EntityCollection<TblQuizTemplateDetailEntity>>("TblQuizTemplateDetails", a => a._tblQuizTemplateDetails, (a, b) => a._tblQuizTemplateDetails = b, a => a.TblQuizTemplateDetails, () => new TblQuizTemplateRelations().TblQuizTemplateDetailEntityUsingQuizTemplateId, typeof(TblQuizTemplateDetailEntity), (int)Datalib.EntityType.TblQuizTemplateDetailEntity);
AddNavigatorMetaData<TblQuizTemplateEntity, TblTrainingTypeEntity>("TblTrainingType", "TblQuizTemplates", (a, b) => a._tblTrainingType = b, a => a._tblTrainingType, (a, b) => a.TblTrainingType = b, Datalib.RelationClasses.StaticTblQuizTemplateRelations.TblTrainingTypeEntityUsingTrainingTypeIdStatic, ()=>new TblQuizTemplateRelations().TblTrainingTypeEntityUsingTrainingTypeId, null, new int[] { (int)TblQuizTemplateFieldIndex.TrainingTypeId }, null, true, (int)Datalib.EntityType.TblTrainingTypeEntity);
}
}
/// <summary>Static ctor</summary>
static TblQuizTemplateEntity()
{
}
/// <summary> CTor</summary>
public TblQuizTemplateEntity()
{
InitClassEmpty(null, null);
}
/// <summary> CTor</summary>
/// <param name="fields">Fields object to set as the fields for this entity.</param>
public TblQuizTemplateEntity(IEntityFields2 fields)
{
InitClassEmpty(null, fields);
}
/// <summary> CTor</summary>
/// <param name="validator">The custom validator object for this TblQuizTemplateEntity</param>
public TblQuizTemplateEntity(IValidator validator)
{
InitClassEmpty(validator, null);
}
/// <summary> CTor</summary>
/// <param name="quizTemplateId">PK value for TblQuizTemplate which data should be fetched into this TblQuizTemplate object</param>
public TblQuizTemplateEntity(System.String quizTemplateId) : this(quizTemplateId, null)
{
}
/// <summary> CTor</summary>
/// <param name="quizTemplateId">PK value for TblQuizTemplate which data should be fetched into this TblQuizTemplate object</param>
/// <param name="validator">The custom validator object for this TblQuizTemplateEntity</param>
public TblQuizTemplateEntity(System.String quizTemplateId, IValidator validator)
{
InitClassEmpty(validator, null);
this.QuizTemplateId = quizTemplateId;
}
/// <summary>Private CTor for deserialization</summary>
/// <param name="info"></param>
/// <param name="context"></param>
protected TblQuizTemplateEntity(SerializationInfo info, StreamingContext context) : base(info, context)
{
// __LLBLGENPRO_USER_CODE_REGION_START DeserializationConstructor
// __LLBLGENPRO_USER_CODE_REGION_END
}
/// <summary>Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entities of type 'TblQuiz' to this entity.</summary>
/// <returns></returns>
public virtual IRelationPredicateBucket GetRelationInfoTblQuizzes() { return CreateRelationInfoForNavigator("TblQuizzes"); }
/// <summary>Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entities of type 'TblQuizTemplateDetail' to this entity.</summary>
/// <returns></returns>
public virtual IRelationPredicateBucket GetRelationInfoTblQuizTemplateDetails() { return CreateRelationInfoForNavigator("TblQuizTemplateDetails"); }
/// <summary>Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entity of type 'TblTrainingType' to this entity.</summary>
/// <returns></returns>
public virtual IRelationPredicateBucket GetRelationInfoTblTrainingType() { return CreateRelationInfoForNavigator("TblTrainingType"); }
/// <inheritdoc/>
protected override EntityStaticMetaDataBase GetEntityStaticMetaData() { return _staticMetaData; }
/// <summary>Initializes the class members</summary>
private void InitClassMembers()
{
PerformDependencyInjection();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassMembers
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitClassMembersComplete();
}
/// <summary>Initializes the class with empty data, as if it is a new Entity.</summary>
/// <param name="validator">The validator object for this TblQuizTemplateEntity</param>
/// <param name="fields">Fields of this entity</param>
private void InitClassEmpty(IValidator validator, IEntityFields2 fields)
{
OnInitializing();
this.Fields = fields ?? CreateFields();
this.Validator = validator;
InitClassMembers();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassEmpty
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitialized();
}
/// <summary>The relations object holding all relations of this entity with other entity classes.</summary>
public static TblQuizTemplateRelations Relations { get { return _relationsFactory; } }
/// <summary>Creates a new PrefetchPathElement2 object which contains all the information to prefetch the related entities of type 'TblQuiz' for this entity.</summary>
/// <returns>Ready to use IPrefetchPathElement2 implementation.</returns>
public static IPrefetchPathElement2 PrefetchPathTblQuizzes { get { return _staticMetaData.GetPrefetchPathElement("TblQuizzes", CommonEntityBase.CreateEntityCollection<TblQuizEntity>()); } }
/// <summary>Creates a new PrefetchPathElement2 object which contains all the information to prefetch the related entities of type 'TblQuizTemplateDetail' for this entity.</summary>
/// <returns>Ready to use IPrefetchPathElement2 implementation.</returns>
public static IPrefetchPathElement2 PrefetchPathTblQuizTemplateDetails { get { return _staticMetaData.GetPrefetchPathElement("TblQuizTemplateDetails", CommonEntityBase.CreateEntityCollection<TblQuizTemplateDetailEntity>()); } }
/// <summary>Creates a new PrefetchPathElement2 object which contains all the information to prefetch the related entities of type 'TblTrainingType' for this entity.</summary>
/// <returns>Ready to use IPrefetchPathElement2 implementation.</returns>
public static IPrefetchPathElement2 PrefetchPathTblTrainingType { get { return _staticMetaData.GetPrefetchPathElement("TblTrainingType", CommonEntityBase.CreateEntityCollection<TblTrainingTypeEntity>()); } }
/// <summary>The FooterDes property of the Entity TblQuizTemplate<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizTemplate"."FooterDes".<br/>Table field type characteristics (type, precision, scale, length): LongVarWChar, 0, 0, 536870911.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String FooterDes
{
get { return (System.String)GetValue((int)TblQuizTemplateFieldIndex.FooterDes, true); }
set { SetValue((int)TblQuizTemplateFieldIndex.FooterDes, value); }
}
/// <summary>The HeaderDes property of the Entity TblQuizTemplate<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizTemplate"."HeaderDes".<br/>Table field type characteristics (type, precision, scale, length): LongVarWChar, 0, 0, 536870911.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String HeaderDes
{
get { return (System.String)GetValue((int)TblQuizTemplateFieldIndex.HeaderDes, true); }
set { SetValue((int)TblQuizTemplateFieldIndex.HeaderDes, value); }
}
/// <summary>The QuizTemplateCode property of the Entity TblQuizTemplate<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizTemplate"."QuizTemplateCode".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 255.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String QuizTemplateCode
{
get { return (System.String)GetValue((int)TblQuizTemplateFieldIndex.QuizTemplateCode, true); }
set { SetValue((int)TblQuizTemplateFieldIndex.QuizTemplateCode, value); }
}
/// <summary>The QuizTemplateId property of the Entity TblQuizTemplate<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizTemplate"."QuizTemplateID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 32.<br/>Table field behavior characteristics (is nullable, is PK, is identity): false, true, false</remarks>
public virtual System.String QuizTemplateId
{
get { return (System.String)GetValue((int)TblQuizTemplateFieldIndex.QuizTemplateId, true); }
set { SetValue((int)TblQuizTemplateFieldIndex.QuizTemplateId, value); }
}
/// <summary>The Renumering property of the Entity TblQuizTemplate<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizTemplate"."Renumering".<br/>Table field type characteristics (type, precision, scale, length): Boolean, 0, 0, 2.<br/>Table field behavior characteristics (is nullable, is PK, is identity): false, false, false</remarks>
public virtual System.Boolean Renumering
{
get { return (System.Boolean)GetValue((int)TblQuizTemplateFieldIndex.Renumering, true); }
set { SetValue((int)TblQuizTemplateFieldIndex.Renumering, value); }
}
/// <summary>The TemplateQuizName property of the Entity TblQuizTemplate<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizTemplate"."TemplateQuizName".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 255.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String TemplateQuizName
{
get { return (System.String)GetValue((int)TblQuizTemplateFieldIndex.TemplateQuizName, true); }
set { SetValue((int)TblQuizTemplateFieldIndex.TemplateQuizName, value); }
}
/// <summary>The TrainingTypeId property of the Entity TblQuizTemplate<br/><br/></summary>
/// <remarks>Mapped on table field: "tblQuizTemplate"."TrainingTypeID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 2.<br/>Table field behavior characteristics (is nullable, is PK, is identity): false, false, false</remarks>
public virtual System.String TrainingTypeId
{
get { return (System.String)GetValue((int)TblQuizTemplateFieldIndex.TrainingTypeId, true); }
set { SetValue((int)TblQuizTemplateFieldIndex.TrainingTypeId, value); }
}
/// <summary>Gets the EntityCollection with the related entities of type 'TblQuizEntity' which are related to this entity via a relation of type '1:n'. If the EntityCollection hasn't been fetched yet, the collection returned will be empty.<br/><br/></summary>
[TypeContainedAttribute(typeof(TblQuizEntity))]
public virtual EntityCollection<TblQuizEntity> TblQuizzes { get { return GetOrCreateEntityCollection<TblQuizEntity, TblQuizEntityFactory>("TblQuizTemplate", true, false, ref _tblQuizzes); } }
/// <summary>Gets the EntityCollection with the related entities of type 'TblQuizTemplateDetailEntity' which are related to this entity via a relation of type '1:n'. If the EntityCollection hasn't been fetched yet, the collection returned will be empty.<br/><br/></summary>
[TypeContainedAttribute(typeof(TblQuizTemplateDetailEntity))]
public virtual EntityCollection<TblQuizTemplateDetailEntity> TblQuizTemplateDetails { get { return GetOrCreateEntityCollection<TblQuizTemplateDetailEntity, TblQuizTemplateDetailEntityFactory>("TblQuizTemplate", true, false, ref _tblQuizTemplateDetails); } }
/// <summary>Gets / sets related entity of type 'TblTrainingTypeEntity' which has to be set using a fetch action earlier. If no related entity is set for this property, null is returned..<br/><br/></summary>
[Browsable(false)]
public virtual TblTrainingTypeEntity TblTrainingType
{
get { return _tblTrainingType; }
set { SetSingleRelatedEntityNavigator(value, "TblTrainingType"); }
}
// __LLBLGENPRO_USER_CODE_REGION_START CustomEntityCode
// __LLBLGENPRO_USER_CODE_REGION_END
}
}
namespace Datalib
{
public enum TblQuizTemplateFieldIndex
{
///<summary>FooterDes. </summary>
FooterDes,
///<summary>HeaderDes. </summary>
HeaderDes,
///<summary>QuizTemplateCode. </summary>
QuizTemplateCode,
///<summary>QuizTemplateId. </summary>
QuizTemplateId,
///<summary>Renumering. </summary>
Renumering,
///<summary>TemplateQuizName. </summary>
TemplateQuizName,
///<summary>TrainingTypeId. </summary>
TrainingTypeId,
/// <summary></summary>
AmountOfFields
}
}
namespace Datalib.RelationClasses
{
/// <summary>Implements the relations factory for the entity: TblQuizTemplate. </summary>
public partial class TblQuizTemplateRelations: RelationFactory
{
/// <summary>Returns a new IEntityRelation object, between TblQuizTemplateEntity and TblQuizEntity over the 1:n relation they have, using the relation between the fields: TblQuizTemplate.QuizTemplateId - TblQuiz.QuizTemplateId</summary>
public virtual IEntityRelation TblQuizEntityUsingQuizTemplateId
{
get { return ModelInfoProviderSingleton.GetInstance().CreateRelation(RelationType.OneToMany, "TblQuizzes", true, new[] { TblQuizTemplateFields.QuizTemplateId, TblQuizFields.QuizTemplateId }); }
}
/// <summary>Returns a new IEntityRelation object, between TblQuizTemplateEntity and TblQuizTemplateDetailEntity over the 1:n relation they have, using the relation between the fields: TblQuizTemplate.QuizTemplateId - TblQuizTemplateDetail.QuizTemplateId</summary>
public virtual IEntityRelation TblQuizTemplateDetailEntityUsingQuizTemplateId
{
get { return ModelInfoProviderSingleton.GetInstance().CreateRelation(RelationType.OneToMany, "TblQuizTemplateDetails", true, new[] { TblQuizTemplateFields.QuizTemplateId, TblQuizTemplateDetailFields.QuizTemplateId }); }
}
/// <summary>Returns a new IEntityRelation object, between TblQuizTemplateEntity and TblTrainingTypeEntity over the m:1 relation they have, using the relation between the fields: TblQuizTemplate.TrainingTypeId - TblTrainingType.TrainingTypeId</summary>
public virtual IEntityRelation TblTrainingTypeEntityUsingTrainingTypeId
{
get { return ModelInfoProviderSingleton.GetInstance().CreateRelation(RelationType.ManyToOne, "TblTrainingType", false, new[] { TblTrainingTypeFields.TrainingTypeId, TblQuizTemplateFields.TrainingTypeId }); }
}
}
/// <summary>Static class which is used for providing relationship instances which are re-used internally for syncing</summary>
internal static class StaticTblQuizTemplateRelations
{
internal static readonly IEntityRelation TblQuizEntityUsingQuizTemplateIdStatic = new TblQuizTemplateRelations().TblQuizEntityUsingQuizTemplateId;
internal static readonly IEntityRelation TblQuizTemplateDetailEntityUsingQuizTemplateIdStatic = new TblQuizTemplateRelations().TblQuizTemplateDetailEntityUsingQuizTemplateId;
internal static readonly IEntityRelation TblTrainingTypeEntityUsingTrainingTypeIdStatic = new TblQuizTemplateRelations().TblTrainingTypeEntityUsingTrainingTypeId;
/// <summary>CTor</summary>
static StaticTblQuizTemplateRelations() { }
}
}

View File

@@ -0,0 +1,237 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.ComponentModel;
using System.Collections.Generic;
using System.Runtime.Serialization;
using System.Xml.Serialization;
using Datalib.HelperClasses;
using Datalib.FactoryClasses;
using Datalib.RelationClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.EntityClasses
{
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalNamespaces
// __LLBLGENPRO_USER_CODE_REGION_END
/// <summary>Entity class which represents the entity 'TblSubject'.<br/><br/></summary>
[Serializable]
public partial class TblSubjectEntity : CommonEntityBase
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalInterfaces
// __LLBLGENPRO_USER_CODE_REGION_END
{
private EntityCollection<TblFieldEntity> _tblFields;
private EntityCollection<TblQuestionEntity> _tblQuestions;
// __LLBLGENPRO_USER_CODE_REGION_START PrivateMembers
// __LLBLGENPRO_USER_CODE_REGION_END
private static TblSubjectEntityStaticMetaData _staticMetaData = new TblSubjectEntityStaticMetaData();
private static TblSubjectRelations _relationsFactory = new TblSubjectRelations();
/// <summary>All names of fields mapped onto a relation. Usable for in-memory filtering</summary>
public static partial class MemberNames
{
/// <summary>Member name TblFields</summary>
public static readonly string TblFields = "TblFields";
/// <summary>Member name TblQuestions</summary>
public static readonly string TblQuestions = "TblQuestions";
}
/// <summary>Static meta-data storage for navigator related information</summary>
protected class TblSubjectEntityStaticMetaData : EntityStaticMetaDataBase
{
public TblSubjectEntityStaticMetaData()
{
SetEntityCoreInfo("TblSubjectEntity", InheritanceHierarchyType.None, false, (int)Datalib.EntityType.TblSubjectEntity, typeof(TblSubjectEntity), typeof(TblSubjectEntityFactory), false);
AddNavigatorMetaData<TblSubjectEntity, EntityCollection<TblFieldEntity>>("TblFields", a => a._tblFields, (a, b) => a._tblFields = b, a => a.TblFields, () => new TblSubjectRelations().TblFieldEntityUsingSubjectId, typeof(TblFieldEntity), (int)Datalib.EntityType.TblFieldEntity);
AddNavigatorMetaData<TblSubjectEntity, EntityCollection<TblQuestionEntity>>("TblQuestions", a => a._tblQuestions, (a, b) => a._tblQuestions = b, a => a.TblQuestions, () => new TblSubjectRelations().TblQuestionEntityUsingSubjectId, typeof(TblQuestionEntity), (int)Datalib.EntityType.TblQuestionEntity);
}
}
/// <summary>Static ctor</summary>
static TblSubjectEntity()
{
}
/// <summary> CTor</summary>
public TblSubjectEntity()
{
InitClassEmpty(null, null);
}
/// <summary> CTor</summary>
/// <param name="fields">Fields object to set as the fields for this entity.</param>
public TblSubjectEntity(IEntityFields2 fields)
{
InitClassEmpty(null, fields);
}
/// <summary> CTor</summary>
/// <param name="validator">The custom validator object for this TblSubjectEntity</param>
public TblSubjectEntity(IValidator validator)
{
InitClassEmpty(validator, null);
}
/// <summary> CTor</summary>
/// <param name="subjectId">PK value for TblSubject which data should be fetched into this TblSubject object</param>
public TblSubjectEntity(System.String subjectId) : this(subjectId, null)
{
}
/// <summary> CTor</summary>
/// <param name="subjectId">PK value for TblSubject which data should be fetched into this TblSubject object</param>
/// <param name="validator">The custom validator object for this TblSubjectEntity</param>
public TblSubjectEntity(System.String subjectId, IValidator validator)
{
InitClassEmpty(validator, null);
this.SubjectId = subjectId;
}
/// <summary>Private CTor for deserialization</summary>
/// <param name="info"></param>
/// <param name="context"></param>
protected TblSubjectEntity(SerializationInfo info, StreamingContext context) : base(info, context)
{
// __LLBLGENPRO_USER_CODE_REGION_START DeserializationConstructor
// __LLBLGENPRO_USER_CODE_REGION_END
}
/// <summary>Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entities of type 'TblField' to this entity.</summary>
/// <returns></returns>
public virtual IRelationPredicateBucket GetRelationInfoTblFields() { return CreateRelationInfoForNavigator("TblFields"); }
/// <summary>Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entities of type 'TblQuestion' to this entity.</summary>
/// <returns></returns>
public virtual IRelationPredicateBucket GetRelationInfoTblQuestions() { return CreateRelationInfoForNavigator("TblQuestions"); }
/// <inheritdoc/>
protected override EntityStaticMetaDataBase GetEntityStaticMetaData() { return _staticMetaData; }
/// <summary>Initializes the class members</summary>
private void InitClassMembers()
{
PerformDependencyInjection();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassMembers
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitClassMembersComplete();
}
/// <summary>Initializes the class with empty data, as if it is a new Entity.</summary>
/// <param name="validator">The validator object for this TblSubjectEntity</param>
/// <param name="fields">Fields of this entity</param>
private void InitClassEmpty(IValidator validator, IEntityFields2 fields)
{
OnInitializing();
this.Fields = fields ?? CreateFields();
this.Validator = validator;
InitClassMembers();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassEmpty
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitialized();
}
/// <summary>The relations object holding all relations of this entity with other entity classes.</summary>
public static TblSubjectRelations Relations { get { return _relationsFactory; } }
/// <summary>Creates a new PrefetchPathElement2 object which contains all the information to prefetch the related entities of type 'TblField' for this entity.</summary>
/// <returns>Ready to use IPrefetchPathElement2 implementation.</returns>
public static IPrefetchPathElement2 PrefetchPathTblFields { get { return _staticMetaData.GetPrefetchPathElement("TblFields", CommonEntityBase.CreateEntityCollection<TblFieldEntity>()); } }
/// <summary>Creates a new PrefetchPathElement2 object which contains all the information to prefetch the related entities of type 'TblQuestion' for this entity.</summary>
/// <returns>Ready to use IPrefetchPathElement2 implementation.</returns>
public static IPrefetchPathElement2 PrefetchPathTblQuestions { get { return _staticMetaData.GetPrefetchPathElement("TblQuestions", CommonEntityBase.CreateEntityCollection<TblQuestionEntity>()); } }
/// <summary>The SubjectDes property of the Entity TblSubject<br/><br/></summary>
/// <remarks>Mapped on table field: "tblSubjects"."SubjectDes".<br/>Table field type characteristics (type, precision, scale, length): LongVarWChar, 0, 0, 536870911.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String SubjectDes
{
get { return (System.String)GetValue((int)TblSubjectFieldIndex.SubjectDes, true); }
set { SetValue((int)TblSubjectFieldIndex.SubjectDes, value); }
}
/// <summary>The SubjectId property of the Entity TblSubject<br/><br/></summary>
/// <remarks>Mapped on table field: "tblSubjects"."SubjectID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 2.<br/>Table field behavior characteristics (is nullable, is PK, is identity): false, true, false</remarks>
public virtual System.String SubjectId
{
get { return (System.String)GetValue((int)TblSubjectFieldIndex.SubjectId, true); }
set { SetValue((int)TblSubjectFieldIndex.SubjectId, value); }
}
/// <summary>The SubjectName property of the Entity TblSubject<br/><br/></summary>
/// <remarks>Mapped on table field: "tblSubjects"."SubjectName".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 50.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String SubjectName
{
get { return (System.String)GetValue((int)TblSubjectFieldIndex.SubjectName, true); }
set { SetValue((int)TblSubjectFieldIndex.SubjectName, value); }
}
/// <summary>Gets the EntityCollection with the related entities of type 'TblFieldEntity' which are related to this entity via a relation of type '1:n'. If the EntityCollection hasn't been fetched yet, the collection returned will be empty.<br/><br/></summary>
[TypeContainedAttribute(typeof(TblFieldEntity))]
public virtual EntityCollection<TblFieldEntity> TblFields { get { return GetOrCreateEntityCollection<TblFieldEntity, TblFieldEntityFactory>("TblSubject", true, false, ref _tblFields); } }
/// <summary>Gets the EntityCollection with the related entities of type 'TblQuestionEntity' which are related to this entity via a relation of type '1:n'. If the EntityCollection hasn't been fetched yet, the collection returned will be empty.<br/><br/></summary>
[TypeContainedAttribute(typeof(TblQuestionEntity))]
public virtual EntityCollection<TblQuestionEntity> TblQuestions { get { return GetOrCreateEntityCollection<TblQuestionEntity, TblQuestionEntityFactory>("TblSubject", true, false, ref _tblQuestions); } }
// __LLBLGENPRO_USER_CODE_REGION_START CustomEntityCode
// __LLBLGENPRO_USER_CODE_REGION_END
}
}
namespace Datalib
{
public enum TblSubjectFieldIndex
{
///<summary>SubjectDes. </summary>
SubjectDes,
///<summary>SubjectId. </summary>
SubjectId,
///<summary>SubjectName. </summary>
SubjectName,
/// <summary></summary>
AmountOfFields
}
}
namespace Datalib.RelationClasses
{
/// <summary>Implements the relations factory for the entity: TblSubject. </summary>
public partial class TblSubjectRelations: RelationFactory
{
/// <summary>Returns a new IEntityRelation object, between TblSubjectEntity and TblFieldEntity over the 1:n relation they have, using the relation between the fields: TblSubject.SubjectId - TblField.SubjectId</summary>
public virtual IEntityRelation TblFieldEntityUsingSubjectId
{
get { return ModelInfoProviderSingleton.GetInstance().CreateRelation(RelationType.OneToMany, "TblFields", true, new[] { TblSubjectFields.SubjectId, TblFieldFields.SubjectId }); }
}
/// <summary>Returns a new IEntityRelation object, between TblSubjectEntity and TblQuestionEntity over the 1:n relation they have, using the relation between the fields: TblSubject.SubjectId - TblQuestion.SubjectId</summary>
public virtual IEntityRelation TblQuestionEntityUsingSubjectId
{
get { return ModelInfoProviderSingleton.GetInstance().CreateRelation(RelationType.OneToMany, "TblQuestions", true, new[] { TblSubjectFields.SubjectId, TblQuestionFields.SubjectId }); }
}
}
/// <summary>Static class which is used for providing relationship instances which are re-used internally for syncing</summary>
internal static class StaticTblSubjectRelations
{
internal static readonly IEntityRelation TblFieldEntityUsingSubjectIdStatic = new TblSubjectRelations().TblFieldEntityUsingSubjectId;
internal static readonly IEntityRelation TblQuestionEntityUsingSubjectIdStatic = new TblSubjectRelations().TblQuestionEntityUsingSubjectId;
/// <summary>CTor</summary>
static StaticTblSubjectRelations() { }
}
}

View File

@@ -0,0 +1,204 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.ComponentModel;
using System.Collections.Generic;
using System.Runtime.Serialization;
using System.Xml.Serialization;
using Datalib.HelperClasses;
using Datalib.FactoryClasses;
using Datalib.RelationClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.EntityClasses
{
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalNamespaces
// __LLBLGENPRO_USER_CODE_REGION_END
/// <summary>Entity class which represents the entity 'TblTrainingType'.<br/><br/></summary>
[Serializable]
public partial class TblTrainingTypeEntity : CommonEntityBase
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalInterfaces
// __LLBLGENPRO_USER_CODE_REGION_END
{
private EntityCollection<TblQuizTemplateEntity> _tblQuizTemplates;
// __LLBLGENPRO_USER_CODE_REGION_START PrivateMembers
// __LLBLGENPRO_USER_CODE_REGION_END
private static TblTrainingTypeEntityStaticMetaData _staticMetaData = new TblTrainingTypeEntityStaticMetaData();
private static TblTrainingTypeRelations _relationsFactory = new TblTrainingTypeRelations();
/// <summary>All names of fields mapped onto a relation. Usable for in-memory filtering</summary>
public static partial class MemberNames
{
/// <summary>Member name TblQuizTemplates</summary>
public static readonly string TblQuizTemplates = "TblQuizTemplates";
}
/// <summary>Static meta-data storage for navigator related information</summary>
protected class TblTrainingTypeEntityStaticMetaData : EntityStaticMetaDataBase
{
public TblTrainingTypeEntityStaticMetaData()
{
SetEntityCoreInfo("TblTrainingTypeEntity", InheritanceHierarchyType.None, false, (int)Datalib.EntityType.TblTrainingTypeEntity, typeof(TblTrainingTypeEntity), typeof(TblTrainingTypeEntityFactory), false);
AddNavigatorMetaData<TblTrainingTypeEntity, EntityCollection<TblQuizTemplateEntity>>("TblQuizTemplates", a => a._tblQuizTemplates, (a, b) => a._tblQuizTemplates = b, a => a.TblQuizTemplates, () => new TblTrainingTypeRelations().TblQuizTemplateEntityUsingTrainingTypeId, typeof(TblQuizTemplateEntity), (int)Datalib.EntityType.TblQuizTemplateEntity);
}
}
/// <summary>Static ctor</summary>
static TblTrainingTypeEntity()
{
}
/// <summary> CTor</summary>
public TblTrainingTypeEntity()
{
InitClassEmpty(null, null);
}
/// <summary> CTor</summary>
/// <param name="fields">Fields object to set as the fields for this entity.</param>
public TblTrainingTypeEntity(IEntityFields2 fields)
{
InitClassEmpty(null, fields);
}
/// <summary> CTor</summary>
/// <param name="validator">The custom validator object for this TblTrainingTypeEntity</param>
public TblTrainingTypeEntity(IValidator validator)
{
InitClassEmpty(validator, null);
}
/// <summary> CTor</summary>
/// <param name="trainingTypeId">PK value for TblTrainingType which data should be fetched into this TblTrainingType object</param>
public TblTrainingTypeEntity(System.String trainingTypeId) : this(trainingTypeId, null)
{
}
/// <summary> CTor</summary>
/// <param name="trainingTypeId">PK value for TblTrainingType which data should be fetched into this TblTrainingType object</param>
/// <param name="validator">The custom validator object for this TblTrainingTypeEntity</param>
public TblTrainingTypeEntity(System.String trainingTypeId, IValidator validator)
{
InitClassEmpty(validator, null);
this.TrainingTypeId = trainingTypeId;
}
/// <summary>Private CTor for deserialization</summary>
/// <param name="info"></param>
/// <param name="context"></param>
protected TblTrainingTypeEntity(SerializationInfo info, StreamingContext context) : base(info, context)
{
// __LLBLGENPRO_USER_CODE_REGION_START DeserializationConstructor
// __LLBLGENPRO_USER_CODE_REGION_END
}
/// <summary>Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entities of type 'TblQuizTemplate' to this entity.</summary>
/// <returns></returns>
public virtual IRelationPredicateBucket GetRelationInfoTblQuizTemplates() { return CreateRelationInfoForNavigator("TblQuizTemplates"); }
/// <inheritdoc/>
protected override EntityStaticMetaDataBase GetEntityStaticMetaData() { return _staticMetaData; }
/// <summary>Initializes the class members</summary>
private void InitClassMembers()
{
PerformDependencyInjection();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassMembers
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitClassMembersComplete();
}
/// <summary>Initializes the class with empty data, as if it is a new Entity.</summary>
/// <param name="validator">The validator object for this TblTrainingTypeEntity</param>
/// <param name="fields">Fields of this entity</param>
private void InitClassEmpty(IValidator validator, IEntityFields2 fields)
{
OnInitializing();
this.Fields = fields ?? CreateFields();
this.Validator = validator;
InitClassMembers();
// __LLBLGENPRO_USER_CODE_REGION_START InitClassEmpty
// __LLBLGENPRO_USER_CODE_REGION_END
OnInitialized();
}
/// <summary>The relations object holding all relations of this entity with other entity classes.</summary>
public static TblTrainingTypeRelations Relations { get { return _relationsFactory; } }
/// <summary>Creates a new PrefetchPathElement2 object which contains all the information to prefetch the related entities of type 'TblQuizTemplate' for this entity.</summary>
/// <returns>Ready to use IPrefetchPathElement2 implementation.</returns>
public static IPrefetchPathElement2 PrefetchPathTblQuizTemplates { get { return _staticMetaData.GetPrefetchPathElement("TblQuizTemplates", CommonEntityBase.CreateEntityCollection<TblQuizTemplateEntity>()); } }
/// <summary>The TrainingTypeId property of the Entity TblTrainingType<br/><br/></summary>
/// <remarks>Mapped on table field: "tblTrainingTypes"."TrainingTypeID".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 2.<br/>Table field behavior characteristics (is nullable, is PK, is identity): false, true, false</remarks>
public virtual System.String TrainingTypeId
{
get { return (System.String)GetValue((int)TblTrainingTypeFieldIndex.TrainingTypeId, true); }
set { SetValue((int)TblTrainingTypeFieldIndex.TrainingTypeId, value); }
}
/// <summary>The TrainingTypeName property of the Entity TblTrainingType<br/><br/></summary>
/// <remarks>Mapped on table field: "tblTrainingTypes"."TrainingTypeName".<br/>Table field type characteristics (type, precision, scale, length): VarWChar, 0, 0, 255.<br/>Table field behavior characteristics (is nullable, is PK, is identity): true, false, false</remarks>
public virtual System.String TrainingTypeName
{
get { return (System.String)GetValue((int)TblTrainingTypeFieldIndex.TrainingTypeName, true); }
set { SetValue((int)TblTrainingTypeFieldIndex.TrainingTypeName, value); }
}
/// <summary>Gets the EntityCollection with the related entities of type 'TblQuizTemplateEntity' which are related to this entity via a relation of type '1:n'. If the EntityCollection hasn't been fetched yet, the collection returned will be empty.<br/><br/></summary>
[TypeContainedAttribute(typeof(TblQuizTemplateEntity))]
public virtual EntityCollection<TblQuizTemplateEntity> TblQuizTemplates { get { return GetOrCreateEntityCollection<TblQuizTemplateEntity, TblQuizTemplateEntityFactory>("TblTrainingType", true, false, ref _tblQuizTemplates); } }
// __LLBLGENPRO_USER_CODE_REGION_START CustomEntityCode
// __LLBLGENPRO_USER_CODE_REGION_END
}
}
namespace Datalib
{
public enum TblTrainingTypeFieldIndex
{
///<summary>TrainingTypeId. </summary>
TrainingTypeId,
///<summary>TrainingTypeName. </summary>
TrainingTypeName,
/// <summary></summary>
AmountOfFields
}
}
namespace Datalib.RelationClasses
{
/// <summary>Implements the relations factory for the entity: TblTrainingType. </summary>
public partial class TblTrainingTypeRelations: RelationFactory
{
/// <summary>Returns a new IEntityRelation object, between TblTrainingTypeEntity and TblQuizTemplateEntity over the 1:n relation they have, using the relation between the fields: TblTrainingType.TrainingTypeId - TblQuizTemplate.TrainingTypeId</summary>
public virtual IEntityRelation TblQuizTemplateEntityUsingTrainingTypeId
{
get { return ModelInfoProviderSingleton.GetInstance().CreateRelation(RelationType.OneToMany, "TblQuizTemplates", true, new[] { TblTrainingTypeFields.TrainingTypeId, TblQuizTemplateFields.TrainingTypeId }); }
}
}
/// <summary>Static class which is used for providing relationship instances which are re-used internally for syncing</summary>
internal static class StaticTblTrainingTypeRelations
{
internal static readonly IEntityRelation TblQuizTemplateEntityUsingTrainingTypeIdStatic = new TblTrainingTypeRelations().TblQuizTemplateEntityUsingTrainingTypeId;
/// <summary>CTor</summary>
static StaticTblTrainingTypeRelations() { }
}
}

View File

@@ -0,0 +1,280 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.Collections.Generic;
using Datalib.EntityClasses;
using Datalib.HelperClasses;
using Datalib.RelationClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.FactoryClasses
{
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalNamespaces
// __LLBLGENPRO_USER_CODE_REGION_END
/// <summary>general base class for the generated factories</summary>
[Serializable]
public partial class EntityFactoryBase2<TEntity> : EntityFactoryCore2
where TEntity : EntityBase2, IEntity2
{
private readonly Datalib.EntityType _typeOfEntity;
private readonly bool _isInHierarchy;
/// <summary>CTor</summary>
/// <param name="entityName">Name of the entity.</param>
/// <param name="typeOfEntity">The type of entity.</param>
/// <param name="isInHierarchy">If true, the entity of this factory is in an inheritance hierarchy, false otherwise</param>
public EntityFactoryBase2(string entityName, Datalib.EntityType typeOfEntity, bool isInHierarchy) : base(entityName)
{
_typeOfEntity = typeOfEntity;
_isInHierarchy = isInHierarchy;
}
/// <inheritdoc/>
public override IEntityFields2 CreateFields() { return ModelInfoProviderSingleton.GetInstance().GetEntityFields(this.ForEntityName); }
/// <inheritdoc/>
public override IEntity2 CreateEntityFromEntityTypeValue(int entityTypeValue) { return GeneralEntityFactory.Create((Datalib.EntityType)entityTypeValue); }
/// <inheritdoc/>
public override IRelationCollection CreateHierarchyRelations(string objectAlias) { return ModelInfoProviderSingleton.GetInstance().GetHierarchyRelations(this.ForEntityName, objectAlias); }
/// <inheritdoc/>
public override IEntityFactory2 GetEntityFactory(object[] fieldValues, Dictionary<string, int> entityFieldStartIndexesPerEntity)
{
return (IEntityFactory2)ModelInfoProviderSingleton.GetInstance().GetEntityFactory(this.ForEntityName, fieldValues, entityFieldStartIndexesPerEntity) ?? this;
}
/// <inheritdoc/>
public override IPredicateExpression GetEntityTypeFilter(bool negate, string objectAlias) { return ModelInfoProviderSingleton.GetInstance().GetEntityTypeFilter(this.ForEntityName, objectAlias, negate); }
/// <inheritdoc/>
public override IEntityCollection2 CreateEntityCollection() { return new EntityCollection<TEntity>(this); }
/// <inheritdoc/>
public override IEntityFields2 CreateHierarchyFields()
{
return _isInHierarchy ? new EntityFields2(ModelInfoProviderSingleton.GetInstance().GetHierarchyFields(this.ForEntityName), ModelInfoProviderSingleton.GetInstance(), null) : base.CreateHierarchyFields();
}
/// <inheritdoc/>
protected override Type ForEntityType { get { return typeof(TEntity); } }
}
/// <summary>Factory to create new, empty TblFieldEntity objects.</summary>
[Serializable]
public partial class TblFieldEntityFactory : EntityFactoryBase2<TblFieldEntity>
{
/// <summary>CTor</summary>
public TblFieldEntityFactory() : base("TblFieldEntity", Datalib.EntityType.TblFieldEntity, false) { }
/// <inheritdoc/>
protected override IEntity2 CreateImpl(IEntityFields2 fields) { return new TblFieldEntity(fields); }
}
/// <summary>Factory to create new, empty TblQuestionEntity objects.</summary>
[Serializable]
public partial class TblQuestionEntityFactory : EntityFactoryBase2<TblQuestionEntity>
{
/// <summary>CTor</summary>
public TblQuestionEntityFactory() : base("TblQuestionEntity", Datalib.EntityType.TblQuestionEntity, false) { }
/// <inheritdoc/>
protected override IEntity2 CreateImpl(IEntityFields2 fields) { return new TblQuestionEntity(fields); }
}
/// <summary>Factory to create new, empty TblQuizEntity objects.</summary>
[Serializable]
public partial class TblQuizEntityFactory : EntityFactoryBase2<TblQuizEntity>
{
/// <summary>CTor</summary>
public TblQuizEntityFactory() : base("TblQuizEntity", Datalib.EntityType.TblQuizEntity, false) { }
/// <inheritdoc/>
protected override IEntity2 CreateImpl(IEntityFields2 fields) { return new TblQuizEntity(fields); }
}
/// <summary>Factory to create new, empty TblQuizQuestionEntity objects.</summary>
[Serializable]
public partial class TblQuizQuestionEntityFactory : EntityFactoryBase2<TblQuizQuestionEntity>
{
/// <summary>CTor</summary>
public TblQuizQuestionEntityFactory() : base("TblQuizQuestionEntity", Datalib.EntityType.TblQuizQuestionEntity, false) { }
/// <inheritdoc/>
protected override IEntity2 CreateImpl(IEntityFields2 fields) { return new TblQuizQuestionEntity(fields); }
}
/// <summary>Factory to create new, empty TblQuizTemplateEntity objects.</summary>
[Serializable]
public partial class TblQuizTemplateEntityFactory : EntityFactoryBase2<TblQuizTemplateEntity>
{
/// <summary>CTor</summary>
public TblQuizTemplateEntityFactory() : base("TblQuizTemplateEntity", Datalib.EntityType.TblQuizTemplateEntity, false) { }
/// <inheritdoc/>
protected override IEntity2 CreateImpl(IEntityFields2 fields) { return new TblQuizTemplateEntity(fields); }
}
/// <summary>Factory to create new, empty TblQuizTemplateDetailEntity objects.</summary>
[Serializable]
public partial class TblQuizTemplateDetailEntityFactory : EntityFactoryBase2<TblQuizTemplateDetailEntity>
{
/// <summary>CTor</summary>
public TblQuizTemplateDetailEntityFactory() : base("TblQuizTemplateDetailEntity", Datalib.EntityType.TblQuizTemplateDetailEntity, false) { }
/// <inheritdoc/>
protected override IEntity2 CreateImpl(IEntityFields2 fields) { return new TblQuizTemplateDetailEntity(fields); }
}
/// <summary>Factory to create new, empty TblSubjectEntity objects.</summary>
[Serializable]
public partial class TblSubjectEntityFactory : EntityFactoryBase2<TblSubjectEntity>
{
/// <summary>CTor</summary>
public TblSubjectEntityFactory() : base("TblSubjectEntity", Datalib.EntityType.TblSubjectEntity, false) { }
/// <inheritdoc/>
protected override IEntity2 CreateImpl(IEntityFields2 fields) { return new TblSubjectEntity(fields); }
}
/// <summary>Factory to create new, empty TblTrainingTypeEntity objects.</summary>
[Serializable]
public partial class TblTrainingTypeEntityFactory : EntityFactoryBase2<TblTrainingTypeEntity>
{
/// <summary>CTor</summary>
public TblTrainingTypeEntityFactory() : base("TblTrainingTypeEntity", Datalib.EntityType.TblTrainingTypeEntity, false) { }
/// <inheritdoc/>
protected override IEntity2 CreateImpl(IEntityFields2 fields) { return new TblTrainingTypeEntity(fields); }
}
/// <summary>Factory to create new, empty Entity objects based on the entity type specified. Uses entity specific factory objects</summary>
[Serializable]
public partial class GeneralEntityFactory
{
/// <summary>Creates a new, empty Entity object of the type specified</summary>
/// <param name="entityTypeToCreate">The entity type to create.</param>
/// <returns>A new, empty Entity object.</returns>
public static IEntity2 Create(Datalib.EntityType entityTypeToCreate)
{
var factoryToUse = EntityFactoryFactory.GetFactory(entityTypeToCreate);
IEntity2 toReturn = null;
if(factoryToUse != null)
{
toReturn = factoryToUse.Create();
}
return toReturn;
}
}
/// <summary>Class which is used to obtain the entity factory based on the .NET type of the entity. </summary>
[Serializable]
public static class EntityFactoryFactory
{
private static Dictionary<Type, IEntityFactory2> _factoryPerType = new Dictionary<Type, IEntityFactory2>();
/// <summary>Initializes the <see cref="EntityFactoryFactory"/> class.</summary>
static EntityFactoryFactory()
{
foreach(int entityTypeValue in Enum.GetValues(typeof(Datalib.EntityType)))
{
var factory = GetFactory((Datalib.EntityType)entityTypeValue);
_factoryPerType.Add(factory.ForEntityType ?? factory.Create().GetType(), factory);
}
}
/// <summary>Gets the factory of the entity with the .NET type specified</summary>
/// <param name="typeOfEntity">The type of entity.</param>
/// <returns>factory to use or null if not found</returns>
public static IEntityFactory2 GetFactory(Type typeOfEntity) { return _factoryPerType.GetValue(typeOfEntity); }
/// <summary>Gets the factory of the entity with the Datalib.EntityType specified</summary>
/// <param name="typeOfEntity">The type of entity.</param>
/// <returns>factory to use or null if not found</returns>
public static IEntityFactory2 GetFactory(Datalib.EntityType typeOfEntity)
{
switch(typeOfEntity)
{
case Datalib.EntityType.TblFieldEntity:
return new TblFieldEntityFactory();
case Datalib.EntityType.TblQuestionEntity:
return new TblQuestionEntityFactory();
case Datalib.EntityType.TblQuizEntity:
return new TblQuizEntityFactory();
case Datalib.EntityType.TblQuizQuestionEntity:
return new TblQuizQuestionEntityFactory();
case Datalib.EntityType.TblQuizTemplateEntity:
return new TblQuizTemplateEntityFactory();
case Datalib.EntityType.TblQuizTemplateDetailEntity:
return new TblQuizTemplateDetailEntityFactory();
case Datalib.EntityType.TblSubjectEntity:
return new TblSubjectEntityFactory();
case Datalib.EntityType.TblTrainingTypeEntity:
return new TblTrainingTypeEntityFactory();
default:
return null;
}
}
}
/// <summary>Element creator for creating project elements from somewhere else, like inside Linq providers.</summary>
public class ElementCreator : ElementCreatorBase, IElementCreator2
{
/// <summary>Gets the factory of the Entity type with the Datalib.EntityType value passed in</summary>
/// <param name="entityTypeValue">The entity type value.</param>
/// <returns>the entity factory of the entity type or null if not found</returns>
public IEntityFactory2 GetFactory(int entityTypeValue) { return (IEntityFactory2)this.GetFactoryImpl(entityTypeValue); }
/// <summary>Gets the factory of the Entity type with the .NET type passed in</summary>
/// <param name="typeOfEntity">The type of entity.</param>
/// <returns>the entity factory of the entity type or null if not found</returns>
public IEntityFactory2 GetFactory(Type typeOfEntity) { return (IEntityFactory2)this.GetFactoryImpl(typeOfEntity); }
/// <summary>Creates a new resultset fields object with the number of field slots reserved as specified</summary>
/// <param name="numberOfFields">The number of fields.</param>
/// <returns>ready to use resultsetfields object</returns>
public IEntityFields2 CreateResultsetFields(int numberOfFields) { return new ResultsetFields(numberOfFields); }
/// <inheritdoc/>
public override IInheritanceInfoProvider ObtainInheritanceInfoProviderInstance() { return ModelInfoProviderSingleton.GetInstance(); }
/// <inheritdoc/>
public override IDynamicRelation CreateDynamicRelation(DerivedTableDefinition leftOperand) { return new DynamicRelation(leftOperand); }
/// <inheritdoc/>
public override IDynamicRelation CreateDynamicRelation(DerivedTableDefinition leftOperand, JoinHint joinType, DerivedTableDefinition rightOperand, IPredicate onClause)
{
return new DynamicRelation(leftOperand, joinType, rightOperand, onClause);
}
/// <inheritdoc/>
public override IDynamicRelation CreateDynamicRelation(IEntityFieldCore leftOperand, JoinHint joinType, DerivedTableDefinition rightOperand, string aliasLeftOperand, IPredicate onClause)
{
return new DynamicRelation(leftOperand, joinType, rightOperand, aliasLeftOperand, onClause);
}
/// <inheritdoc/>
public override IDynamicRelation CreateDynamicRelation(DerivedTableDefinition leftOperand, JoinHint joinType, string rightOperandEntityName, string aliasRightOperand, IPredicate onClause)
{
return new DynamicRelation(leftOperand, joinType, (Datalib.EntityType)Enum.Parse(typeof(Datalib.EntityType), rightOperandEntityName, false), aliasRightOperand, onClause);
}
/// <inheritdoc/>
public override IDynamicRelation CreateDynamicRelation(string leftOperandEntityName, JoinHint joinType, string rightOperandEntityName, string aliasLeftOperand, string aliasRightOperand, IPredicate onClause)
{
return new DynamicRelation((Datalib.EntityType)Enum.Parse(typeof(Datalib.EntityType), leftOperandEntityName, false), joinType, (Datalib.EntityType)Enum.Parse(typeof(Datalib.EntityType), rightOperandEntityName, false), aliasLeftOperand, aliasRightOperand, onClause);
}
/// <inheritdoc/>
public override IDynamicRelation CreateDynamicRelation(IEntityFieldCore leftOperand, JoinHint joinType, string rightOperandEntityName, string aliasLeftOperand, string aliasRightOperand, IPredicate onClause)
{
return new DynamicRelation(leftOperand, joinType, (Datalib.EntityType)Enum.Parse(typeof(Datalib.EntityType), rightOperandEntityName, false), aliasLeftOperand, aliasRightOperand, onClause);
}
/// <inheritdoc/>
protected override IEntityFactoryCore GetFactoryImpl(int entityTypeValue) { return EntityFactoryFactory.GetFactory((Datalib.EntityType)entityTypeValue); }
/// <inheritdoc/>
protected override IEntityFactoryCore GetFactoryImpl(Type typeOfEntity) { return EntityFactoryFactory.GetFactory(typeOfEntity); }
}
}

View File

@@ -0,0 +1,28 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using Datalib.HelperClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.FactoryClasses
{
/// <summary>Factory class for IEntityField2 instances, used in IEntityFields2 instances. For backwards compatibility</summary>
public static partial class EntityFieldFactory
{
/// <summary>Creates a new IEntityField2 instance for usage in the EntityFields object for the entity related to the field index specified.</summary>
/// <param name="fieldIndex">The field which IEntityField2 instance should be created</param>
/// <returns>The IEntityField2 instance for the field specified in fieldIndex</returns>
public static IEntityField2 Create(Enum fieldIndex) { return new EntityField2(ModelInfoProviderSingleton.GetInstance().GetFieldInfo(fieldIndex)); }
/// <summary>Creates a new IEntityField2 instance, which represents the field objectName.fieldName</summary>
/// <param name="objectName">the name of the object the field belongs to, like CustomerEntity or OrdersTypedView</param>
/// <param name="fieldName">the name of the field to create</param>
public static IEntityField2 Create(string objectName, string fieldName) { return new EntityField2(ModelInfoProviderSingleton.GetInstance().GetFieldInfo(objectName, fieldName)); }
}
}

View File

@@ -0,0 +1,27 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using Datalib.HelperClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.FactoryClasses
{
/// <summary>Generates IEntityFields2 instances for different kind of Entities. For backwards compatibility.</summary>
public static partial class EntityFieldsFactory
{
/// <summary>General factory entrance method which will return an EntityFields2 object with the format generated by the factory specified</summary>
/// <param name="relatedEntityType">The type of entity the fields are for</param>
/// <returns>The IEntityFields instance requested</returns>
public static IEntityFields2 CreateEntityFieldsObject(Datalib.EntityType relatedEntityType)
{
return ModelInfoProviderSingleton.GetInstance().GetEntityFields(relatedEntityType.ToString());
}
}
}

View File

@@ -0,0 +1,49 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.Linq;
using Datalib.EntityClasses;
using Datalib.HelperClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
using SD.LLBLGen.Pro.QuerySpec.AdapterSpecific;
using SD.LLBLGen.Pro.QuerySpec;
namespace Datalib.FactoryClasses
{
/// <summary>Factory class to produce DynamicQuery instances and EntityQuery instances</summary>
public partial class QueryFactory : QueryFactoryBase2
{
/// <summary>Creates and returns a new EntityQuery for the TblField entity</summary>
public EntityQuery<TblFieldEntity> TblField { get { return Create<TblFieldEntity>(); } }
/// <summary>Creates and returns a new EntityQuery for the TblQuestion entity</summary>
public EntityQuery<TblQuestionEntity> TblQuestion { get { return Create<TblQuestionEntity>(); } }
/// <summary>Creates and returns a new EntityQuery for the TblQuiz entity</summary>
public EntityQuery<TblQuizEntity> TblQuiz { get { return Create<TblQuizEntity>(); } }
/// <summary>Creates and returns a new EntityQuery for the TblQuizQuestion entity</summary>
public EntityQuery<TblQuizQuestionEntity> TblQuizQuestion { get { return Create<TblQuizQuestionEntity>(); } }
/// <summary>Creates and returns a new EntityQuery for the TblQuizTemplate entity</summary>
public EntityQuery<TblQuizTemplateEntity> TblQuizTemplate { get { return Create<TblQuizTemplateEntity>(); } }
/// <summary>Creates and returns a new EntityQuery for the TblQuizTemplateDetail entity</summary>
public EntityQuery<TblQuizTemplateDetailEntity> TblQuizTemplateDetail { get { return Create<TblQuizTemplateDetailEntity>(); } }
/// <summary>Creates and returns a new EntityQuery for the TblSubject entity</summary>
public EntityQuery<TblSubjectEntity> TblSubject { get { return Create<TblSubjectEntity>(); } }
/// <summary>Creates and returns a new EntityQuery for the TblTrainingType entity</summary>
public EntityQuery<TblTrainingTypeEntity> TblTrainingType { get { return Create<TblTrainingTypeEntity>(); } }
/// <inheritdoc/>
protected override IElementCreatorCore CreateElementCreator() { return new ElementCreator(); }
}
}

View File

@@ -0,0 +1,86 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using Datalib.FactoryClasses;
using Datalib.HelperClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.RelationClasses
{
/// <summary>Class to define dynamic relations for queries.</summary>
[Serializable]
public class DynamicRelation : DynamicRelationBase
{
/// <summary>Initializes a new instance of the <see cref="DynamicRelation"/> class.</summary>
/// <param name="leftOperand">The left operand, which can only be a derived table definition. No join will take place. </param>
/// <remarks>If a DynamicRelation is created with this CTor, it has to be the only one. It will be ignored if there are more relations in the relation collection.</remarks>
public DynamicRelation(DerivedTableDefinition leftOperand)
{
this.InitClass(JoinHint.None, string.Empty, string.Empty, null, leftOperand, null);
}
/// <summary>Initializes a new instance of the <see cref="DynamicRelation"/> class.</summary>
/// <param name="leftOperand">The left operand.</param>
/// <param name="joinType">Type of the join. If None is specified, Inner is assumed.</param>
/// <param name="rightOperand">The right operand.</param>
/// <param name="onClause">The on clause for the join.</param>
public DynamicRelation(DerivedTableDefinition leftOperand, JoinHint joinType, DerivedTableDefinition rightOperand, IPredicate onClause)
{
this.InitClass(joinType, string.Empty, string.Empty, onClause, leftOperand, rightOperand);
}
/// <summary>Initializes a new instance of the <see cref="DynamicRelation"/> class.</summary>
/// <param name="leftOperand">The left operand which is a field.</param>
/// <param name="joinType">Type of the join. If None is specified, Inner is assumed.</param>
/// <param name="rightOperand">The right operand which is a derived table.</param>
/// <param name="aliasLeftOperand">The alias of the left operand. If you don't want to / need to alias the left operand (only alias if you have to), specify string.Empty.</param>
/// <param name="onClause">The on clause for the join.</param>
public DynamicRelation(IEntityFieldCore leftOperand, JoinHint joinType, DerivedTableDefinition rightOperand, string aliasLeftOperand, IPredicate onClause)
{
this.InitClass(joinType, aliasLeftOperand, string.Empty, onClause, leftOperand, rightOperand);
}
/// <summary>Initializes a new instance of the <see cref="DynamicRelation"/> class.</summary>
/// <param name="leftOperand">The left operand.</param>
/// <param name="joinType">Type of the join. If None is specified, Inner is assumed.</param>
/// <param name="rightOperand">The right operand which is an entity type.</param>
/// <param name="aliasRightOperand">The alias of the right operand. If you don't want to / need to alias the right operand (only alias if you have to), specify string.Empty.</param>
/// <param name="onClause">The on clause for the join.</param>
public DynamicRelation(DerivedTableDefinition leftOperand, JoinHint joinType, Datalib.EntityType rightOperand, string aliasRightOperand, IPredicate onClause)
{
this.InitClass(joinType, string.Empty, aliasRightOperand, onClause, leftOperand, GeneralEntityFactory.Create(rightOperand));
}
/// <summary>Initializes a new instance of the <see cref="DynamicRelation"/> class.</summary>
/// <param name="leftOperand">The left operand, which is an entity.</param>
/// <param name="joinType">Type of the join. If None is specified, Inner is assumed.</param>
/// <param name="rightOperand">The right operand which is an entity.</param>
/// <param name="aliasLeftOperand">The alias of the left operand. If you don't want to / need to alias the left operand (only alias if you have to), specify string.Empty.</param>
/// <param name="aliasRightOperand">The alias of the right operand. If you don't want to / need to alias the right operand (only alias if you have to), specify string.Empty.</param>
/// <param name="onClause">The on clause for the join.</param>
public DynamicRelation(Datalib.EntityType leftOperand, JoinHint joinType, Datalib.EntityType rightOperand, string aliasLeftOperand, string aliasRightOperand, IPredicate onClause)
{
this.InitClass(joinType, aliasLeftOperand, aliasRightOperand, onClause, GeneralEntityFactory.Create(leftOperand), GeneralEntityFactory.Create(rightOperand));
}
/// <summary>Initializes a new instance of the <see cref="DynamicRelation"/> class.</summary>
/// <param name="leftOperand">The left operand which is a field.</param>
/// <param name="joinType">Type of the join. If None is specified, Inner is assumed.</param>
/// <param name="rightOperand">The right operand which is an entity.</param>
/// <param name="aliasLeftOperand">The alias of the left operand. If you don't want to / need to alias the left operand (only alias if you have to), specify string.Empty.</param>
/// <param name="aliasRightOperand">The alias of the right operand. If you don't want to / need to alias the right operand (only alias if you have to), specify string.Empty.</param>
/// <param name="onClause">The on clause for the join.</param>
public DynamicRelation(IEntityFieldCore leftOperand, JoinHint joinType, Datalib.EntityType rightOperand, string aliasLeftOperand, string aliasRightOperand, IPredicate onClause)
{
this.InitClass(joinType, aliasLeftOperand, aliasRightOperand, onClause, leftOperand, GeneralEntityFactory.Create(rightOperand));
}
/// <inheritdoc/>
protected override IInheritanceInfoProvider GetInheritanceProvider() { return ModelInfoProviderSingleton.GetInstance(); }
}
}

View File

@@ -0,0 +1,66 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
// Templates version:
//////////////////////////////////////////////////////////////
using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.HelperClasses
{
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalNamespaces
// __LLBLGENPRO_USER_CODE_REGION_END
/// <summary>EntityCollection implementation which is used for backwards compatibility and for design time databinding.</summary>
[Serializable]
public partial class EntityCollection : EntityCollectionNonGeneric
{
/// <summary>CTor</summary>
public EntityCollection() : base() { }
/// <summary>CTor</summary>
/// <param name="entityFactoryToUse">The entity factory object to use when this collection has to construct new objects.</param>
public EntityCollection(IEntityFactory2 entityFactoryToUse) : base(entityFactoryToUse) { }
/// <summary>Protected CTor for deserialization</summary>
/// <param name="info"></param>
/// <param name="context"></param>
protected EntityCollection(SerializationInfo info, StreamingContext context) : base(info, context) { }
// __LLBLGENPRO_USER_CODE_REGION_START CustomEntityCollectionCode
// __LLBLGENPRO_USER_CODE_REGION_END
}
/// <summary>Generic entity collection class which replaces the original generated, non strongly typed EntityCollection variant.</summary>
[Serializable]
public partial class EntityCollection<TEntity> : EntityCollectionBase2<TEntity>
where TEntity : EntityBase2, IEntity2
{
/// <summary>CTor which determines the factory to use from the generic type argument, unless TEntity is an abstract entity.</summary>
public EntityCollection() : base((IEntityFactory2)null) { }
/// <summary>CTor</summary>
/// <param name="entityFactoryToUse">The entity factory object to use when this collection has to construct new objects.</param>
public EntityCollection(IEntityFactory2 entityFactoryToUse) : base(entityFactoryToUse) { }
/// <summary>CTor</summary>
/// <param name="initialContents">initial contents for this collection</param>
public EntityCollection(IEnumerable<TEntity> initialContents ) : base(initialContents) { }
/// <summary>Protected CTor for deserialization</summary>
/// <param name="info"></param>
/// <param name="context"></param>
protected EntityCollection(SerializationInfo info, StreamingContext context) : base(info, context) { }
// __LLBLGENPRO_USER_CODE_REGION_START CustomEntityCollectionCodeGeneric
// __LLBLGENPRO_USER_CODE_REGION_END
}
}

View File

@@ -0,0 +1,150 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.HelperClasses
{
/// <summary>Field Creation Class for entity TblFieldEntity</summary>
public partial class TblFieldFields
{
/// <summary>Creates a new TblFieldEntity.Description field instance</summary>
public static EntityField2 Description { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblFieldFieldIndex.Description); }}
/// <summary>Creates a new TblFieldEntity.FieldId field instance</summary>
public static EntityField2 FieldId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblFieldFieldIndex.FieldId); }}
/// <summary>Creates a new TblFieldEntity.FieldName field instance</summary>
public static EntityField2 FieldName { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblFieldFieldIndex.FieldName); }}
/// <summary>Creates a new TblFieldEntity.Prefix field instance</summary>
public static EntityField2 Prefix { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblFieldFieldIndex.Prefix); }}
/// <summary>Creates a new TblFieldEntity.SubjectId field instance</summary>
public static EntityField2 SubjectId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblFieldFieldIndex.SubjectId); }}
/// <summary>Creates a new TblFieldEntity.UniqueId field instance</summary>
public static EntityField2 UniqueId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblFieldFieldIndex.UniqueId); }}
}
/// <summary>Field Creation Class for entity TblQuestionEntity</summary>
public partial class TblQuestionFields
{
/// <summary>Creates a new TblQuestionEntity.Answer field instance</summary>
public static EntityField2 Answer { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuestionFieldIndex.Answer); }}
/// <summary>Creates a new TblQuestionEntity.Content field instance</summary>
public static EntityField2 Content { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuestionFieldIndex.Content); }}
/// <summary>Creates a new TblQuestionEntity.CreateDate field instance</summary>
public static EntityField2 CreateDate { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuestionFieldIndex.CreateDate); }}
/// <summary>Creates a new TblQuestionEntity.Difficulty field instance</summary>
public static EntityField2 Difficulty { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuestionFieldIndex.Difficulty); }}
/// <summary>Creates a new TblQuestionEntity.Exclusive field instance</summary>
public static EntityField2 Exclusive { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuestionFieldIndex.Exclusive); }}
/// <summary>Creates a new TblQuestionEntity.Explaination field instance</summary>
public static EntityField2 Explaination { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuestionFieldIndex.Explaination); }}
/// <summary>Creates a new TblQuestionEntity.FieldId field instance</summary>
public static EntityField2 FieldId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuestionFieldIndex.FieldId); }}
/// <summary>Creates a new TblQuestionEntity.Level field instance</summary>
public static EntityField2 Level { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuestionFieldIndex.Level); }}
/// <summary>Creates a new TblQuestionEntity.QuestionCode field instance</summary>
public static EntityField2 QuestionCode { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuestionFieldIndex.QuestionCode); }}
/// <summary>Creates a new TblQuestionEntity.QuestionId field instance</summary>
public static EntityField2 QuestionId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuestionFieldIndex.QuestionId); }}
/// <summary>Creates a new TblQuestionEntity.SubjectId field instance</summary>
public static EntityField2 SubjectId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuestionFieldIndex.SubjectId); }}
/// <summary>Creates a new TblQuestionEntity.Summary field instance</summary>
public static EntityField2 Summary { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuestionFieldIndex.Summary); }}
}
/// <summary>Field Creation Class for entity TblQuizEntity</summary>
public partial class TblQuizFields
{
/// <summary>Creates a new TblQuizEntity.QuizCode field instance</summary>
public static EntityField2 QuizCode { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizFieldIndex.QuizCode); }}
/// <summary>Creates a new TblQuizEntity.QuizId field instance</summary>
public static EntityField2 QuizId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizFieldIndex.QuizId); }}
/// <summary>Creates a new TblQuizEntity.QuizName field instance</summary>
public static EntityField2 QuizName { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizFieldIndex.QuizName); }}
/// <summary>Creates a new TblQuizEntity.QuizTemplateId field instance</summary>
public static EntityField2 QuizTemplateId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizFieldIndex.QuizTemplateId); }}
/// <summary>Creates a new TblQuizEntity.QuizTime field instance</summary>
public static EntityField2 QuizTime { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizFieldIndex.QuizTime); }}
/// <summary>Creates a new TblQuizEntity.QuizYear field instance</summary>
public static EntityField2 QuizYear { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizFieldIndex.QuizYear); }}
}
/// <summary>Field Creation Class for entity TblQuizQuestionEntity</summary>
public partial class TblQuizQuestionFields
{
/// <summary>Creates a new TblQuizQuestionEntity.QuestionId field instance</summary>
public static EntityField2 QuestionId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizQuestionFieldIndex.QuestionId); }}
/// <summary>Creates a new TblQuizQuestionEntity.QuizId field instance</summary>
public static EntityField2 QuizId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizQuestionFieldIndex.QuizId); }}
/// <summary>Creates a new TblQuizQuestionEntity.QuizTemplateId field instance</summary>
public static EntityField2 QuizTemplateId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizQuestionFieldIndex.QuizTemplateId); }}
/// <summary>Creates a new TblQuizQuestionEntity.TrainingTypeId field instance</summary>
public static EntityField2 TrainingTypeId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizQuestionFieldIndex.TrainingTypeId); }}
/// <summary>Creates a new TblQuizQuestionEntity.UniqueId field instance</summary>
public static EntityField2 UniqueId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizQuestionFieldIndex.UniqueId); }}
}
/// <summary>Field Creation Class for entity TblQuizTemplateEntity</summary>
public partial class TblQuizTemplateFields
{
/// <summary>Creates a new TblQuizTemplateEntity.FooterDes field instance</summary>
public static EntityField2 FooterDes { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizTemplateFieldIndex.FooterDes); }}
/// <summary>Creates a new TblQuizTemplateEntity.HeaderDes field instance</summary>
public static EntityField2 HeaderDes { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizTemplateFieldIndex.HeaderDes); }}
/// <summary>Creates a new TblQuizTemplateEntity.QuizTemplateCode field instance</summary>
public static EntityField2 QuizTemplateCode { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizTemplateFieldIndex.QuizTemplateCode); }}
/// <summary>Creates a new TblQuizTemplateEntity.QuizTemplateId field instance</summary>
public static EntityField2 QuizTemplateId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizTemplateFieldIndex.QuizTemplateId); }}
/// <summary>Creates a new TblQuizTemplateEntity.Renumering field instance</summary>
public static EntityField2 Renumering { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizTemplateFieldIndex.Renumering); }}
/// <summary>Creates a new TblQuizTemplateEntity.TemplateQuizName field instance</summary>
public static EntityField2 TemplateQuizName { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizTemplateFieldIndex.TemplateQuizName); }}
/// <summary>Creates a new TblQuizTemplateEntity.TrainingTypeId field instance</summary>
public static EntityField2 TrainingTypeId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizTemplateFieldIndex.TrainingTypeId); }}
}
/// <summary>Field Creation Class for entity TblQuizTemplateDetailEntity</summary>
public partial class TblQuizTemplateDetailFields
{
/// <summary>Creates a new TblQuizTemplateDetailEntity.Difficulty field instance</summary>
public static EntityField2 Difficulty { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizTemplateDetailFieldIndex.Difficulty); }}
/// <summary>Creates a new TblQuizTemplateDetailEntity.FieldId field instance</summary>
public static EntityField2 FieldId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizTemplateDetailFieldIndex.FieldId); }}
/// <summary>Creates a new TblQuizTemplateDetailEntity.Level field instance</summary>
public static EntityField2 Level { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizTemplateDetailFieldIndex.Level); }}
/// <summary>Creates a new TblQuizTemplateDetailEntity.QuestionNum field instance</summary>
public static EntityField2 QuestionNum { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizTemplateDetailFieldIndex.QuestionNum); }}
/// <summary>Creates a new TblQuizTemplateDetailEntity.QuizTemplateId field instance</summary>
public static EntityField2 QuizTemplateId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizTemplateDetailFieldIndex.QuizTemplateId); }}
/// <summary>Creates a new TblQuizTemplateDetailEntity.SubjectId field instance</summary>
public static EntityField2 SubjectId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizTemplateDetailFieldIndex.SubjectId); }}
/// <summary>Creates a new TblQuizTemplateDetailEntity.UniqueId field instance</summary>
public static EntityField2 UniqueId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblQuizTemplateDetailFieldIndex.UniqueId); }}
}
/// <summary>Field Creation Class for entity TblSubjectEntity</summary>
public partial class TblSubjectFields
{
/// <summary>Creates a new TblSubjectEntity.SubjectDes field instance</summary>
public static EntityField2 SubjectDes { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblSubjectFieldIndex.SubjectDes); }}
/// <summary>Creates a new TblSubjectEntity.SubjectId field instance</summary>
public static EntityField2 SubjectId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblSubjectFieldIndex.SubjectId); }}
/// <summary>Creates a new TblSubjectEntity.SubjectName field instance</summary>
public static EntityField2 SubjectName { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblSubjectFieldIndex.SubjectName); }}
}
/// <summary>Field Creation Class for entity TblTrainingTypeEntity</summary>
public partial class TblTrainingTypeFields
{
/// <summary>Creates a new TblTrainingTypeEntity.TrainingTypeId field instance</summary>
public static EntityField2 TrainingTypeId { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblTrainingTypeFieldIndex.TrainingTypeId); }}
/// <summary>Creates a new TblTrainingTypeEntity.TrainingTypeName field instance</summary>
public static EntityField2 TrainingTypeName { get { return ModelInfoProviderSingleton.GetInstance().CreateField2(TblTrainingTypeFieldIndex.TrainingTypeName); }}
}
}

View File

@@ -0,0 +1,114 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.Linq;
using System.Collections.Generic;
using SD.LLBLGen.Pro.LinqSupportClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
using Datalib.EntityClasses;
using Datalib.FactoryClasses;
namespace Datalib.Linq
{
/// <summary>Meta-data class for the construction of Linq queries which are to be executed using LLBLGen Pro code.</summary>
public partial class LinqMetaData: ILinqMetaData
{
/// <summary>CTor. Using this ctor will leave the IDataAccessAdapter object to use empty. To be able to execute the query, an IDataAccessAdapter instance
/// is required, and has to be set on the LLBLGenProProvider2 object in the query to execute. </summary>
public LinqMetaData() : this(null, null) { }
/// <summary>CTor which accepts an IDataAccessAdapter implementing object, which will be used to execute queries created with this metadata class.</summary>
/// <param name="adapterToUse">the IDataAccessAdapter to use in queries created with this meta data</param>
/// <remarks> Be aware that the IDataAccessAdapter object set via this property is kept alive by the LLBLGenProQuery objects created with this meta data till they go out of scope.</remarks>
public LinqMetaData(IDataAccessAdapter adapterToUse) : this (adapterToUse, null) { }
/// <summary>CTor which accepts an IDataAccessAdapter implementing object, which will be used to execute queries created with this metadata class.</summary>
/// <param name="adapterToUse">the IDataAccessAdapter to use in queries created with this meta data</param>
/// <param name="customFunctionMappings">The custom function mappings to use. These take higher precedence than the ones in the DQE to use.</param>
/// <remarks> Be aware that the IDataAccessAdapter object set via this property is kept alive by the LLBLGenProQuery objects created with this meta data till they go out of scope.</remarks>
public LinqMetaData(IDataAccessAdapter adapterToUse, FunctionMappingStore customFunctionMappings)
{
this.AdapterToUse = adapterToUse;
this.CustomFunctionMappings = customFunctionMappings;
}
/// <summary>returns the datasource to use in a Linq query for the entity type specified</summary>
/// <param name="typeOfEntity">the type of the entity to get the datasource for</param>
/// <returns>the requested datasource</returns>
public IDataSource GetQueryableForEntity(int typeOfEntity)
{
switch((Datalib.EntityType)typeOfEntity)
{
case Datalib.EntityType.TblFieldEntity:
return this.TblField;
case Datalib.EntityType.TblQuestionEntity:
return this.TblQuestion;
case Datalib.EntityType.TblQuizEntity:
return this.TblQuiz;
case Datalib.EntityType.TblQuizQuestionEntity:
return this.TblQuizQuestion;
case Datalib.EntityType.TblQuizTemplateEntity:
return this.TblQuizTemplate;
case Datalib.EntityType.TblQuizTemplateDetailEntity:
return this.TblQuizTemplateDetail;
case Datalib.EntityType.TblSubjectEntity:
return this.TblSubject;
case Datalib.EntityType.TblTrainingTypeEntity:
return this.TblTrainingType;
default:
return null;
}
}
/// <summary>returns the datasource to use in a Linq query for the entity type specified</summary>
/// <typeparam name="TEntity">the type of the entity to get the datasource for</typeparam>
/// <returns>the requested datasource</returns>
public DataSource2<TEntity> GetQueryableForEntity<TEntity>()
where TEntity : class
{
return new DataSource2<TEntity>(this.AdapterToUse, new ElementCreator(), this.CustomFunctionMappings, this.ContextToUse);
}
/// <summary>returns the datasource to use in a Linq query when targeting TblFieldEntity instances in the database.</summary>
public DataSource2<TblFieldEntity> TblField { get { return new DataSource2<TblFieldEntity>(this.AdapterToUse, new ElementCreator(), this.CustomFunctionMappings, this.ContextToUse); } }
/// <summary>returns the datasource to use in a Linq query when targeting TblQuestionEntity instances in the database.</summary>
public DataSource2<TblQuestionEntity> TblQuestion { get { return new DataSource2<TblQuestionEntity>(this.AdapterToUse, new ElementCreator(), this.CustomFunctionMappings, this.ContextToUse); } }
/// <summary>returns the datasource to use in a Linq query when targeting TblQuizEntity instances in the database.</summary>
public DataSource2<TblQuizEntity> TblQuiz { get { return new DataSource2<TblQuizEntity>(this.AdapterToUse, new ElementCreator(), this.CustomFunctionMappings, this.ContextToUse); } }
/// <summary>returns the datasource to use in a Linq query when targeting TblQuizQuestionEntity instances in the database.</summary>
public DataSource2<TblQuizQuestionEntity> TblQuizQuestion { get { return new DataSource2<TblQuizQuestionEntity>(this.AdapterToUse, new ElementCreator(), this.CustomFunctionMappings, this.ContextToUse); } }
/// <summary>returns the datasource to use in a Linq query when targeting TblQuizTemplateEntity instances in the database.</summary>
public DataSource2<TblQuizTemplateEntity> TblQuizTemplate { get { return new DataSource2<TblQuizTemplateEntity>(this.AdapterToUse, new ElementCreator(), this.CustomFunctionMappings, this.ContextToUse); } }
/// <summary>returns the datasource to use in a Linq query when targeting TblQuizTemplateDetailEntity instances in the database.</summary>
public DataSource2<TblQuizTemplateDetailEntity> TblQuizTemplateDetail { get { return new DataSource2<TblQuizTemplateDetailEntity>(this.AdapterToUse, new ElementCreator(), this.CustomFunctionMappings, this.ContextToUse); } }
/// <summary>returns the datasource to use in a Linq query when targeting TblSubjectEntity instances in the database.</summary>
public DataSource2<TblSubjectEntity> TblSubject { get { return new DataSource2<TblSubjectEntity>(this.AdapterToUse, new ElementCreator(), this.CustomFunctionMappings, this.ContextToUse); } }
/// <summary>returns the datasource to use in a Linq query when targeting TblTrainingTypeEntity instances in the database.</summary>
public DataSource2<TblTrainingTypeEntity> TblTrainingType { get { return new DataSource2<TblTrainingTypeEntity>(this.AdapterToUse, new ElementCreator(), this.CustomFunctionMappings, this.ContextToUse); } }
/// <summary> Gets / sets the IDataAccessAdapter to use for the queries created with this meta data object.</summary>
/// <remarks> Be aware that the IDataAccessAdapter object set via this property is kept alive by the LLBLGenProQuery objects created with this meta data
/// till they go out of scope.</remarks>
public IDataAccessAdapter AdapterToUse { get; set; }
/// <summary>Gets or sets the custom function mappings to use. These take higher precedence than the ones in the DQE to use</summary>
public FunctionMappingStore CustomFunctionMappings { get; set; }
/// <summary>Gets or sets the Context instance to use for entity fetches.</summary>
public Context ContextToUse { get; set; }
}
}

View File

@@ -0,0 +1,151 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro v5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using Datalib.FactoryClasses;
using Datalib.RelationClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.HelperClasses
{
/// <summary>Singleton implementation of the ModelInfoProvider. This class is the singleton wrapper through which the actual instance is retrieved.</summary>
public static class ModelInfoProviderSingleton
{
private static readonly IModelInfoProvider _providerInstance = new ModelInfoProviderCore();
/// <summary>Dummy static constructor to make sure threadsafe initialization is performed.</summary>
static ModelInfoProviderSingleton() { }
/// <summary>Gets the singleton instance of the ModelInfoProviderCore</summary>
/// <returns>Instance of the FieldInfoProvider.</returns>
public static IModelInfoProvider GetInstance()
{
return _providerInstance;
}
}
/// <summary>Actual implementation of the ModelInfoProvider.</summary>
internal class ModelInfoProviderCore : ModelInfoProviderBase
{
/// <summary>Initializes a new instance of the <see cref="ModelInfoProviderCore"/> class.</summary>
internal ModelInfoProviderCore()
{
Init();
}
/// <summary>Method which initializes the internal datastores.</summary>
private void Init()
{
this.InitClass();
InitTblFieldEntityInfo();
InitTblQuestionEntityInfo();
InitTblQuizEntityInfo();
InitTblQuizQuestionEntityInfo();
InitTblQuizTemplateEntityInfo();
InitTblQuizTemplateDetailEntityInfo();
InitTblSubjectEntityInfo();
InitTblTrainingTypeEntityInfo();
this.BuildInternalStructures();
}
/// <summary>Inits TblFieldEntity's info objects</summary>
private void InitTblFieldEntityInfo()
{
this.AddFieldIndexEnumForElementName(typeof(TblFieldFieldIndex), "TblFieldEntity");
this.AddElementFieldInfo("TblFieldEntity", "Description", typeof(System.String), false, false, false, true, (int)TblFieldFieldIndex.Description, 536870911, 0, 0);
this.AddElementFieldInfo("TblFieldEntity", "FieldId", typeof(System.String), false, false, false, true, (int)TblFieldFieldIndex.FieldId, 1, 0, 0);
this.AddElementFieldInfo("TblFieldEntity", "FieldName", typeof(System.String), false, false, false, true, (int)TblFieldFieldIndex.FieldName, 50, 0, 0);
this.AddElementFieldInfo("TblFieldEntity", "Prefix", typeof(System.String), false, false, false, true, (int)TblFieldFieldIndex.Prefix, 255, 0, 0);
this.AddElementFieldInfo("TblFieldEntity", "SubjectId", typeof(System.String), false, true, false, true, (int)TblFieldFieldIndex.SubjectId, 2, 0, 0);
this.AddElementFieldInfo("TblFieldEntity", "UniqueId", typeof(System.String), true, false, false, false, (int)TblFieldFieldIndex.UniqueId, 32, 0, 0);
}
/// <summary>Inits TblQuestionEntity's info objects</summary>
private void InitTblQuestionEntityInfo()
{
this.AddFieldIndexEnumForElementName(typeof(TblQuestionFieldIndex), "TblQuestionEntity");
this.AddElementFieldInfo("TblQuestionEntity", "Answer", typeof(System.String), false, false, false, true, (int)TblQuestionFieldIndex.Answer, 536870911, 0, 0);
this.AddElementFieldInfo("TblQuestionEntity", "Content", typeof(System.String), false, false, false, true, (int)TblQuestionFieldIndex.Content, 536870911, 0, 0);
this.AddElementFieldInfo("TblQuestionEntity", "CreateDate", typeof(Nullable<System.DateTime>), false, false, false, true, (int)TblQuestionFieldIndex.CreateDate, 0, 0, 0);
this.AddElementFieldInfo("TblQuestionEntity", "Difficulty", typeof(System.String), false, false, false, true, (int)TblQuestionFieldIndex.Difficulty, 1, 0, 0);
this.AddElementFieldInfo("TblQuestionEntity", "Exclusive", typeof(System.Boolean), false, false, false, false, (int)TblQuestionFieldIndex.Exclusive, 2, 0, 0);
this.AddElementFieldInfo("TblQuestionEntity", "Explaination", typeof(System.String), false, false, false, true, (int)TblQuestionFieldIndex.Explaination, 536870911, 0, 0);
this.AddElementFieldInfo("TblQuestionEntity", "FieldId", typeof(System.String), false, false, false, true, (int)TblQuestionFieldIndex.FieldId, 1, 0, 0);
this.AddElementFieldInfo("TblQuestionEntity", "Level", typeof(System.String), false, false, false, true, (int)TblQuestionFieldIndex.Level, 1, 0, 0);
this.AddElementFieldInfo("TblQuestionEntity", "QuestionCode", typeof(System.String), false, false, false, true, (int)TblQuestionFieldIndex.QuestionCode, 10, 0, 0);
this.AddElementFieldInfo("TblQuestionEntity", "QuestionId", typeof(System.String), true, false, false, false, (int)TblQuestionFieldIndex.QuestionId, 32, 0, 0);
this.AddElementFieldInfo("TblQuestionEntity", "SubjectId", typeof(System.String), false, true, false, true, (int)TblQuestionFieldIndex.SubjectId, 2, 0, 0);
this.AddElementFieldInfo("TblQuestionEntity", "Summary", typeof(System.String), false, false, false, true, (int)TblQuestionFieldIndex.Summary, 536870911, 0, 0);
}
/// <summary>Inits TblQuizEntity's info objects</summary>
private void InitTblQuizEntityInfo()
{
this.AddFieldIndexEnumForElementName(typeof(TblQuizFieldIndex), "TblQuizEntity");
this.AddElementFieldInfo("TblQuizEntity", "QuizCode", typeof(System.String), false, false, false, true, (int)TblQuizFieldIndex.QuizCode, 255, 0, 0);
this.AddElementFieldInfo("TblQuizEntity", "QuizId", typeof(System.String), true, false, false, false, (int)TblQuizFieldIndex.QuizId, 32, 0, 0);
this.AddElementFieldInfo("TblQuizEntity", "QuizName", typeof(System.String), false, false, false, true, (int)TblQuizFieldIndex.QuizName, 255, 0, 0);
this.AddElementFieldInfo("TblQuizEntity", "QuizTemplateId", typeof(System.String), false, true, false, true, (int)TblQuizFieldIndex.QuizTemplateId, 32, 0, 0);
this.AddElementFieldInfo("TblQuizEntity", "QuizTime", typeof(Nullable<System.Int32>), false, false, false, true, (int)TblQuizFieldIndex.QuizTime, 0, 0, 10);
this.AddElementFieldInfo("TblQuizEntity", "QuizYear", typeof(Nullable<System.Int32>), false, false, false, true, (int)TblQuizFieldIndex.QuizYear, 0, 0, 10);
}
/// <summary>Inits TblQuizQuestionEntity's info objects</summary>
private void InitTblQuizQuestionEntityInfo()
{
this.AddFieldIndexEnumForElementName(typeof(TblQuizQuestionFieldIndex), "TblQuizQuestionEntity");
this.AddElementFieldInfo("TblQuizQuestionEntity", "QuestionId", typeof(System.String), false, true, false, true, (int)TblQuizQuestionFieldIndex.QuestionId, 32, 0, 0);
this.AddElementFieldInfo("TblQuizQuestionEntity", "QuizId", typeof(System.String), false, true, false, false, (int)TblQuizQuestionFieldIndex.QuizId, 32, 0, 0);
this.AddElementFieldInfo("TblQuizQuestionEntity", "QuizTemplateId", typeof(System.String), false, false, false, false, (int)TblQuizQuestionFieldIndex.QuizTemplateId, 32, 0, 0);
this.AddElementFieldInfo("TblQuizQuestionEntity", "TrainingTypeId", typeof(System.String), false, false, false, false, (int)TblQuizQuestionFieldIndex.TrainingTypeId, 2, 0, 0);
this.AddElementFieldInfo("TblQuizQuestionEntity", "UniqueId", typeof(System.String), true, false, false, false, (int)TblQuizQuestionFieldIndex.UniqueId, 32, 0, 0);
}
/// <summary>Inits TblQuizTemplateEntity's info objects</summary>
private void InitTblQuizTemplateEntityInfo()
{
this.AddFieldIndexEnumForElementName(typeof(TblQuizTemplateFieldIndex), "TblQuizTemplateEntity");
this.AddElementFieldInfo("TblQuizTemplateEntity", "FooterDes", typeof(System.String), false, false, false, true, (int)TblQuizTemplateFieldIndex.FooterDes, 536870911, 0, 0);
this.AddElementFieldInfo("TblQuizTemplateEntity", "HeaderDes", typeof(System.String), false, false, false, true, (int)TblQuizTemplateFieldIndex.HeaderDes, 536870911, 0, 0);
this.AddElementFieldInfo("TblQuizTemplateEntity", "QuizTemplateCode", typeof(System.String), false, false, false, true, (int)TblQuizTemplateFieldIndex.QuizTemplateCode, 255, 0, 0);
this.AddElementFieldInfo("TblQuizTemplateEntity", "QuizTemplateId", typeof(System.String), true, false, false, false, (int)TblQuizTemplateFieldIndex.QuizTemplateId, 32, 0, 0);
this.AddElementFieldInfo("TblQuizTemplateEntity", "Renumering", typeof(System.Boolean), false, false, false, false, (int)TblQuizTemplateFieldIndex.Renumering, 2, 0, 0);
this.AddElementFieldInfo("TblQuizTemplateEntity", "TemplateQuizName", typeof(System.String), false, false, false, true, (int)TblQuizTemplateFieldIndex.TemplateQuizName, 255, 0, 0);
this.AddElementFieldInfo("TblQuizTemplateEntity", "TrainingTypeId", typeof(System.String), false, true, false, false, (int)TblQuizTemplateFieldIndex.TrainingTypeId, 2, 0, 0);
}
/// <summary>Inits TblQuizTemplateDetailEntity's info objects</summary>
private void InitTblQuizTemplateDetailEntityInfo()
{
this.AddFieldIndexEnumForElementName(typeof(TblQuizTemplateDetailFieldIndex), "TblQuizTemplateDetailEntity");
this.AddElementFieldInfo("TblQuizTemplateDetailEntity", "Difficulty", typeof(System.String), false, false, false, true, (int)TblQuizTemplateDetailFieldIndex.Difficulty, 1, 0, 0);
this.AddElementFieldInfo("TblQuizTemplateDetailEntity", "FieldId", typeof(System.String), false, false, false, true, (int)TblQuizTemplateDetailFieldIndex.FieldId, 1, 0, 0);
this.AddElementFieldInfo("TblQuizTemplateDetailEntity", "Level", typeof(System.String), false, false, false, true, (int)TblQuizTemplateDetailFieldIndex.Level, 1, 0, 0);
this.AddElementFieldInfo("TblQuizTemplateDetailEntity", "QuestionNum", typeof(Nullable<System.Int16>), false, false, false, true, (int)TblQuizTemplateDetailFieldIndex.QuestionNum, 0, 0, 5);
this.AddElementFieldInfo("TblQuizTemplateDetailEntity", "QuizTemplateId", typeof(System.String), false, true, false, true, (int)TblQuizTemplateDetailFieldIndex.QuizTemplateId, 32, 0, 0);
this.AddElementFieldInfo("TblQuizTemplateDetailEntity", "SubjectId", typeof(System.String), false, false, false, true, (int)TblQuizTemplateDetailFieldIndex.SubjectId, 2, 0, 0);
this.AddElementFieldInfo("TblQuizTemplateDetailEntity", "UniqueId", typeof(System.String), true, false, false, false, (int)TblQuizTemplateDetailFieldIndex.UniqueId, 32, 0, 0);
}
/// <summary>Inits TblSubjectEntity's info objects</summary>
private void InitTblSubjectEntityInfo()
{
this.AddFieldIndexEnumForElementName(typeof(TblSubjectFieldIndex), "TblSubjectEntity");
this.AddElementFieldInfo("TblSubjectEntity", "SubjectDes", typeof(System.String), false, false, false, true, (int)TblSubjectFieldIndex.SubjectDes, 536870911, 0, 0);
this.AddElementFieldInfo("TblSubjectEntity", "SubjectId", typeof(System.String), true, false, false, false, (int)TblSubjectFieldIndex.SubjectId, 2, 0, 0);
this.AddElementFieldInfo("TblSubjectEntity", "SubjectName", typeof(System.String), false, false, false, true, (int)TblSubjectFieldIndex.SubjectName, 50, 0, 0);
}
/// <summary>Inits TblTrainingTypeEntity's info objects</summary>
private void InitTblTrainingTypeEntityInfo()
{
this.AddFieldIndexEnumForElementName(typeof(TblTrainingTypeFieldIndex), "TblTrainingTypeEntity");
this.AddElementFieldInfo("TblTrainingTypeEntity", "TrainingTypeId", typeof(System.String), true, false, false, false, (int)TblTrainingTypeFieldIndex.TrainingTypeId, 2, 0, 0);
this.AddElementFieldInfo("TblTrainingTypeEntity", "TrainingTypeName", typeof(System.String), false, false, false, true, (int)TblTrainingTypeFieldIndex.TrainingTypeName, 255, 0, 0);
}
}
}

View File

@@ -0,0 +1,30 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.Runtime.Serialization;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.HelperClasses
{
/// <summary>Helper class which will eases the creation of custom made resultsets. Usable in typed lists and dynamic lists created using the dynamic query engine.</summary>
[Serializable]
public partial class ResultsetFields : EntityFields2
{
/// <summary>CTor</summary>
public ResultsetFields(int amountFields) : base(amountFields, ModelInfoProviderSingleton.GetInstance(), null) { }
/// <summary>Deserialization constructor</summary>
/// <param name="info">Info.</param>
/// <param name="context">Context.</param>
protected ResultsetFields(SerializationInfo info, StreamingContext context) : base(info.GetInt32("_amountFields"), ModelInfoProviderSingleton.GetInstance(), null)
{
PerformDeserializationInitialization(info);
}
}
}

View File

@@ -0,0 +1,100 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.HelperClasses
{
/// <summary>Class for the returning of a default value when a type is given. These Default values are used for EntityFields which have a NULL value in the database.</summary>
[Serializable]
public partial class TypeDefaultValue : ITypeDefaultValue
{
/// <summary>Returns a default value for the type specified</summary>
/// <param name="defaultValueType">The type which default value should be returned.</param>
/// <returns>The default value for the type specified.</returns>
public object DefaultValue(System.Type defaultValueType) { return TypeDefaultValue.GetDefaultValue(defaultValueType); }
/// <summary>Returns a default value for the type specified</summary>
/// <param name="defaultValueType">The type which default value should be returned.</param>
/// <returns>The default value for the type specified.</returns>
public static object GetDefaultValue(System.Type defaultValueType)
{
object valueToReturn=null;
switch(Type.GetTypeCode(defaultValueType))
{
case TypeCode.String:
valueToReturn=string.Empty;
break;
case TypeCode.Boolean:
valueToReturn = false;
break;
case TypeCode.Byte:
valueToReturn = (byte)0;
break;
case TypeCode.DateTime:
valueToReturn = DateTime.MinValue;
break;
case TypeCode.Decimal:
valueToReturn = 0.0M;
break;
case TypeCode.Double:
valueToReturn = 0.0;
break;
case TypeCode.Int16:
valueToReturn = (short)0;
break;
case TypeCode.Int32:
valueToReturn = (int)0;
break;
case TypeCode.Int64:
valueToReturn = (long)0;
break;
case TypeCode.Object:
switch(defaultValueType.UnderlyingSystemType.FullName)
{
case "System.Guid":
valueToReturn = Guid.Empty;
break;
case "System.Byte[]":
valueToReturn = new byte[0];
break;
case "System.DateTimeOffset":
valueToReturn = DateTimeOffset.MinValue;
break;
case "System.TimeSpan":
valueToReturn = TimeSpan.MinValue;
break;
}
break;
case TypeCode.Single:
valueToReturn = 0.0f;
break;
case TypeCode.UInt16:
valueToReturn = (ushort)0;
break;
case TypeCode.UInt32:
valueToReturn = (uint)0;
break;
case TypeCode.UInt64:
valueToReturn = (ulong)0;
break;
case TypeCode.SByte:
valueToReturn = (SByte)0;
break;
default:
// do nothing, return null.
break;
}
return valueToReturn;
}
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]

View File

@@ -0,0 +1 @@
950de1610004ce63dc1f649d4025f98f65a9b46e

View File

@@ -0,0 +1,27 @@
I:\projects\OmegaPro\Datalib\DatabaseGeneric\bin\Release\Datalib.dll
I:\projects\OmegaPro\Datalib\DatabaseGeneric\bin\Release\Datalib.pdb
I:\projects\OmegaPro\Datalib\DatabaseGeneric\bin\Release\SD.LLBLGen.Pro.ORMSupportClasses.dll
I:\projects\OmegaPro\Datalib\DatabaseGeneric\bin\Release\SD.LLBLGen.Pro.ORMSupportClasses.pdb
I:\projects\OmegaPro\Datalib\DatabaseGeneric\bin\Release\SD.LLBLGen.Pro.ORMSupportClasses.xml
I:\projects\OmegaPro\Datalib\DatabaseGeneric\obj\Release\Datalib.csproj.CoreCompileInputs.cache
I:\projects\OmegaPro\Datalib\DatabaseGeneric\obj\Release\Datalib.csproj.CopyComplete
I:\projects\OmegaPro\Datalib\DatabaseGeneric\obj\Release\Datalib.dll
I:\projects\OmegaPro\Datalib\DatabaseGeneric\obj\Release\Datalib.pdb
H:\projects\OmegaPro\Datalib\DatabaseGeneric\bin\Release\Datalib.dll
H:\projects\OmegaPro\Datalib\DatabaseGeneric\bin\Release\Datalib.pdb
H:\projects\OmegaPro\Datalib\DatabaseGeneric\bin\Release\SD.LLBLGen.Pro.ORMSupportClasses.pdb
H:\projects\OmegaPro\Datalib\DatabaseGeneric\bin\Release\SD.LLBLGen.Pro.ORMSupportClasses.xml
H:\projects\OmegaPro\Datalib\DatabaseGeneric\obj\Release\Datalib.csproj.AssemblyReference.cache
H:\projects\OmegaPro\Datalib\DatabaseGeneric\obj\Release\Datalib.csproj.CoreCompileInputs.cache
H:\projects\OmegaPro\Datalib\DatabaseGeneric\obj\Release\Datalib.csproj.CopyComplete
H:\projects\OmegaPro\Datalib\DatabaseGeneric\obj\Release\Datalib.dll
H:\projects\OmegaPro\Datalib\DatabaseGeneric\obj\Release\Datalib.pdb
J:\projects\OmegaPro\Datalib\DatabaseGeneric\bin\Release\Datalib.dll
J:\projects\OmegaPro\Datalib\DatabaseGeneric\bin\Release\Datalib.pdb
J:\projects\OmegaPro\Datalib\DatabaseGeneric\bin\Release\SD.LLBLGen.Pro.ORMSupportClasses.pdb
J:\projects\OmegaPro\Datalib\DatabaseGeneric\bin\Release\SD.LLBLGen.Pro.ORMSupportClasses.xml
J:\projects\OmegaPro\Datalib\DatabaseGeneric\obj\Release\Datalib.csproj.AssemblyReference.cache
J:\projects\OmegaPro\Datalib\DatabaseGeneric\obj\Release\Datalib.csproj.CoreCompileInputs.cache
J:\projects\OmegaPro\Datalib\DatabaseGeneric\obj\Release\Datalib.csproj.CopyComplete
J:\projects\OmegaPro\Datalib\DatabaseGeneric\obj\Release\Datalib.dll
J:\projects\OmegaPro\Datalib\DatabaseGeneric\obj\Release\Datalib.pdb

View File

@@ -0,0 +1 @@
obj\Release\\_IsIncrementalBuild

View File

@@ -0,0 +1,23 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.Data;
using System.Threading;
using System.Threading.Tasks;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.DatabaseSpecific
{
/// <summary>Class which contains the static logic to execute action stored procedures in the database.</summary>
public static partial class ActionProcedures
{
}
}

View File

@@ -0,0 +1,7 @@
<?xml version="1.0"?>
<configuration>
<connectionStrings>
<!-- please adjust the connection string embedded in the element below to target the proper catalog / server using the proper user / password combination -->
<add name="ConnectionString.MS Access (OleDb)" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=I:\projects\OmegaPro\Database\Data.mdb;User Id=;Password=;Jet OLEDB:System Database=;Jet OLEDB:Database password="/>
</connectionStrings>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup></configuration>

View File

@@ -0,0 +1,59 @@
using System.Reflection;
using System.Runtime.CompilerServices;
//
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
//
[assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: System.CLSCompliant(true)]
//
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.*")]
//
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing.
//
// Notes:
// (*) If no key is specified, the assembly is not signed.
// (*) KeyName refers to a key that has been installed in the Crypto Service
// Provider (CSP) on your machine. KeyFile refers to a file which contains
// a key.
// (*) If the KeyFile and the KeyName values are both specified, the
// following processing occurs:
// (1) If the KeyName can be found in the CSP, that key is used.
// (2) If the KeyName does not exist and the KeyFile does exist, the key
// in the KeyFile is installed into the CSP and used.
// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
// When specifying the KeyFile, the location of the KeyFile should be
// relative to the project output directory which is
// %Project Directory%\obj\<configuration>. For example, if your KeyFile is
// located in the project directory, you would specify the AssemblyKeyFile
// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")]
// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
// documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]
[assembly: AssemblyKeyName("")]

View File

@@ -0,0 +1,107 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.Collections.Generic;
using System.Data.Common;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using SD.LLBLGen.Pro.ORMSupportClasses;
using SD.LLBLGen.Pro.DQE.Access;
namespace Datalib.DatabaseSpecific
{
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalNamespaces
// __LLBLGENPRO_USER_CODE_REGION_END
/// <summary>Data access adapter class, which controls the complete database interaction with the database for all objects.</summary>
/// <remarks>Use a DataAccessAdapter object solely per thread, and per connection. A DataAccessAdapter object contains 1 active connection
/// and no thread-access scheduling code. This means that you need to create a new DataAccessAdapter object if you want to utilize
/// in another thread a new connection and a new transaction or want to open a new connection.</remarks>
public partial class DataAccessAdapter : DataAccessAdapterBase
{
/// <summary>The name of the key in the *.config file of the executing application which contains the connection string.</summary>
/// <remarks>Default: the value set in the LLBLGen Pro project properties</remarks>
public static string ConnectionStringKeyName="ConnectionString.MS Access (OleDb)";
/// <summary>CTor</summary>
public DataAccessAdapter() : this(ReadConnectionStringFromConfig(), false, null, null) { }
/// <summary>CTor</summary>
/// <param name="keepConnectionOpen">when true, the DataAccessAdapter will not close an opened connection. Use this for multi action usage.</param>
public DataAccessAdapter(bool keepConnectionOpen) : this(ReadConnectionStringFromConfig(), keepConnectionOpen, null, null) { }
/// <summary>CTor</summary>
/// <param name="connectionString">The connection string to use when connecting to the database.</param>
public DataAccessAdapter(string connectionString) : this(connectionString, false, null, null) { }
/// <summary>CTor</summary>
/// <param name="connectionString">The connection string to use when connecting to the database.</param>
/// <param name="keepConnectionOpen">when true, the DataAccessAdapter will not close an opened connection. Use this for multi action usage.</param>
public DataAccessAdapter(string connectionString, bool keepConnectionOpen) : this(connectionString, keepConnectionOpen, null, null) { }
/// <summary>CTor.</summary>
/// <param name="connectionString">The connection string to use when connecting to the database.</param>
/// <param name="keepConnectionOpen">when true, the DataAccessAdapter will not close an opened connection. Use this for multi action usage.</param>
/// <param name="catalogNameUsageSetting"> Configures this data access adapter object how to threat catalog names in persistence information.</param>
/// <param name="catalogNameToUse"> The name to use if catalogNameUsageSetting is set to ForceName. Ignored otherwise.</param>
/// <remarks>For backwards compatibility.</remarks>
public DataAccessAdapter(string connectionString, bool keepConnectionOpen, CatalogNameUsage catalogNameUsageSetting, string catalogNameToUse)
: base(PersistenceInfoProviderSingleton.GetInstance())
{
InitClassPhase2(connectionString, keepConnectionOpen, catalogNameUsageSetting, SchemaNameUsage.Default, catalogNameToUse, string.Empty, null, null);
}
/// <summary>CTor</summary>
/// <param name="connectionString">The connection string to use when connecting to the database.</param>
/// <param name="keepConnectionOpen">when true, the DataAccessAdapter will not close an opened connection. Use this for multi action usage.</param>
/// <param name="schemaNameUsageSetting">Configures this data access adapter object how to threat schema names in persistence information.</param>
/// <param name="schemaNameToUse">Oracle specific. The name to use if schemaNameUsageSetting is set to ForceName. Ignored otherwise.</param>
public DataAccessAdapter(string connectionString, bool keepConnectionOpen, SchemaNameUsage schemaNameUsageSetting, string schemaNameToUse)
: base(PersistenceInfoProviderSingleton.GetInstance())
{
InitClassPhase2(connectionString, keepConnectionOpen, CatalogNameUsage.Default, schemaNameUsageSetting, string.Empty, schemaNameToUse, null, null);
}
/// <summary>CTor.</summary>
/// <param name="connectionString">The connection string to use when connecting to the database.</param>
/// <param name="keepConnectionOpen">when true, the DataAccessAdapter will not close an opened connection. Use this for multi action usage.</param>
/// <param name="catalogNameOverwrites"> The from-to name value pairs and setting for the overwriting of catalog names. Can be null.</param>
/// <param name="schemaNameOverwrites"> The from-to name value pairs and setting for the overwriting of schema names. Can be null.</param>
public DataAccessAdapter(string connectionString, bool keepConnectionOpen, CatalogNameOverwriteHashtable catalogNameOverwrites, SchemaNameOverwriteHashtable schemaNameOverwrites)
: base(PersistenceInfoProviderSingleton.GetInstance())
{
InitClassPhase2(connectionString, keepConnectionOpen, CatalogNameUsage.Default, SchemaNameUsage.Default, string.Empty, string.Empty, catalogNameOverwrites, schemaNameOverwrites);
}
/// <summary>Creates a new Dynamic Query engine object and passes in the defined catalog/schema overwrite hashtables.</summary>
protected override DynamicQueryEngineBase CreateDynamicQueryEngine()
{
return this.PostProcessNewDynamicQueryEngine(new DynamicQueryEngine());
}
/// <summary>Reads the value of the setting with the key ConnectionStringKeyName from the *.config file and stores that value as the active connection string to use for this object.</summary>
/// <returns>connection string read</returns>
private static string ReadConnectionStringFromConfig()
{
#if NETSTANDARD || NETCOREAPP
return RuntimeConfiguration.GetConnectionString(ConnectionStringKeyName);
#else
return ConfigFileHelper.ReadConnectionStringFromConfig(ConnectionStringKeyName);
#endif
}
// __LLBLGENPRO_USER_CODE_REGION_START CustomDataAccessAdapterCode
// __LLBLGENPRO_USER_CODE_REGION_END
}
}

View File

@@ -0,0 +1,78 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>9.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{45BDB333-1CB0-4B86-A94A-8DDB80037848}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Datalib.DatabaseSpecific</RootNamespace>
<AssemblyName>DatalibDBSpecific</AssemblyName>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="SD.LLBLGen.Pro.ORMSupportClasses, Version=5.7.0.0, Culture=neutral, PublicKeyToken=ca73b74ba4e3ff27, processorArchitecture=MSIL">
<SpecificVersion>True</SpecificVersion>
<HintPath>C:\Program Files (x86)\Solutions Design\LLBLGen Pro v5.7\Frameworks\LLBLGen Pro\RuntimeLibraries\CompiledRuntimeLibraries\SD.LLBLGen.Pro.ORMSupportClasses.dll</HintPath>
</Reference>
<Reference Include="SD.LLBLGen.Pro.DQE.Access, Version=5.7.0.0, Culture=neutral, PublicKeyToken=ca73b74ba4e3ff27, processorArchitecture=MSIL">
<SpecificVersion>True</SpecificVersion>
<HintPath>C:\Program Files (x86)\Solutions Design\LLBLGen Pro v5.7\Frameworks\LLBLGen Pro\RuntimeLibraries\CompiledRuntimeLibraries\</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="Microsoft.CSharp" />
</ItemGroup>
<ItemGroup>
<Compile Include="AssemblyInfo.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="PersistenceInfoProvider.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<None Include="App.config">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</None>
<Compile Include="ActionProcedures.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="RetrievalProcedures.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
<Compile Include="DataAccessAdapter.cs">
<GeneratedBy>LLBLGen Pro</GeneratedBy>
</Compile>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,146 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro v5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Datalib.DatabaseSpecific
{
/// <summary>Singleton implementation of the PersistenceInfoProvider. This class is the singleton wrapper through which the actual instance is retrieved.</summary>
internal static class PersistenceInfoProviderSingleton
{
private static readonly IPersistenceInfoProvider _providerInstance = new PersistenceInfoProviderCore();
/// <summary>Dummy static constructor to make sure threadsafe initialization is performed.</summary>
static PersistenceInfoProviderSingleton() { }
/// <summary>Gets the singleton instance of the PersistenceInfoProviderCore</summary>
/// <returns>Instance of the PersistenceInfoProvider.</returns>
public static IPersistenceInfoProvider GetInstance() { return _providerInstance; }
}
/// <summary>Actual implementation of the PersistenceInfoProvider. Used by singleton wrapper.</summary>
internal class PersistenceInfoProviderCore : PersistenceInfoProviderBase
{
/// <summary>Initializes a new instance of the <see cref="PersistenceInfoProviderCore"/> class.</summary>
internal PersistenceInfoProviderCore()
{
Init();
}
/// <summary>Method which initializes the internal datastores with the structure of hierarchical types.</summary>
private void Init()
{
this.InitClass();
InitTblFieldEntityMappings();
InitTblQuestionEntityMappings();
InitTblQuizEntityMappings();
InitTblQuizQuestionEntityMappings();
InitTblQuizTemplateEntityMappings();
InitTblQuizTemplateDetailEntityMappings();
InitTblSubjectEntityMappings();
InitTblTrainingTypeEntityMappings();
}
/// <summary>Inits TblFieldEntity's mappings</summary>
private void InitTblFieldEntityMappings()
{
this.AddElementMapping("TblFieldEntity", @"Data", @"Default", "tblFields", 6, 0);
this.AddElementFieldMapping("TblFieldEntity", "Description", "Description", true, "LongVarWChar", 536870911, 0, 0, false, "", null, typeof(System.String), 0);
this.AddElementFieldMapping("TblFieldEntity", "FieldId", "FieldID", true, "VarWChar", 1, 0, 0, false, "", null, typeof(System.String), 1);
this.AddElementFieldMapping("TblFieldEntity", "FieldName", "FieldName", true, "VarWChar", 50, 0, 0, false, "", null, typeof(System.String), 2);
this.AddElementFieldMapping("TblFieldEntity", "Prefix", "Prefix", true, "VarWChar", 255, 0, 0, false, "", null, typeof(System.String), 3);
this.AddElementFieldMapping("TblFieldEntity", "SubjectId", "SubjectID", true, "VarWChar", 2, 0, 0, false, "", null, typeof(System.String), 4);
this.AddElementFieldMapping("TblFieldEntity", "UniqueId", "UniqueID", false, "VarWChar", 32, 0, 0, false, "", null, typeof(System.String), 5);
}
/// <summary>Inits TblQuestionEntity's mappings</summary>
private void InitTblQuestionEntityMappings()
{
this.AddElementMapping("TblQuestionEntity", @"Data", @"Default", "tblQuestions", 12, 0);
this.AddElementFieldMapping("TblQuestionEntity", "Answer", "Answer", true, "LongVarWChar", 536870911, 0, 0, false, "", null, typeof(System.String), 0);
this.AddElementFieldMapping("TblQuestionEntity", "Content", "Content", true, "LongVarWChar", 536870911, 0, 0, false, "", null, typeof(System.String), 1);
this.AddElementFieldMapping("TblQuestionEntity", "CreateDate", "CreateDate", true, "Date", 0, 0, 0, false, "", null, typeof(System.DateTime), 2);
this.AddElementFieldMapping("TblQuestionEntity", "Difficulty", "Difficulty", true, "VarWChar", 1, 0, 0, false, "", null, typeof(System.String), 3);
this.AddElementFieldMapping("TblQuestionEntity", "Exclusive", "Exclusive", false, "Boolean", 2, 0, 0, false, "", null, typeof(System.Boolean), 4);
this.AddElementFieldMapping("TblQuestionEntity", "Explaination", "Explaination", true, "LongVarWChar", 536870911, 0, 0, false, "", null, typeof(System.String), 5);
this.AddElementFieldMapping("TblQuestionEntity", "FieldId", "FieldID", true, "VarWChar", 1, 0, 0, false, "", null, typeof(System.String), 6);
this.AddElementFieldMapping("TblQuestionEntity", "Level", "Level", true, "VarWChar", 1, 0, 0, false, "", null, typeof(System.String), 7);
this.AddElementFieldMapping("TblQuestionEntity", "QuestionCode", "QuestionCode", true, "VarWChar", 10, 0, 0, false, "", null, typeof(System.String), 8);
this.AddElementFieldMapping("TblQuestionEntity", "QuestionId", "QuestionID", false, "VarWChar", 32, 0, 0, false, "", null, typeof(System.String), 9);
this.AddElementFieldMapping("TblQuestionEntity", "SubjectId", "SubjectID", true, "VarWChar", 2, 0, 0, false, "", null, typeof(System.String), 10);
this.AddElementFieldMapping("TblQuestionEntity", "Summary", "Summary", true, "LongVarWChar", 536870911, 0, 0, false, "", null, typeof(System.String), 11);
}
/// <summary>Inits TblQuizEntity's mappings</summary>
private void InitTblQuizEntityMappings()
{
this.AddElementMapping("TblQuizEntity", @"Data", @"Default", "tblQuizs", 6, 0);
this.AddElementFieldMapping("TblQuizEntity", "QuizCode", "QuizCode", true, "VarWChar", 255, 0, 0, false, "", null, typeof(System.String), 0);
this.AddElementFieldMapping("TblQuizEntity", "QuizId", "QuizID", false, "VarWChar", 32, 0, 0, false, "", null, typeof(System.String), 1);
this.AddElementFieldMapping("TblQuizEntity", "QuizName", "QuizName", true, "VarWChar", 255, 0, 0, false, "", null, typeof(System.String), 2);
this.AddElementFieldMapping("TblQuizEntity", "QuizTemplateId", "QuizTemplateID", true, "VarWChar", 32, 0, 0, false, "", null, typeof(System.String), 3);
this.AddElementFieldMapping("TblQuizEntity", "QuizTime", "QuizTime", true, "Integer", 0, 10, 0, false, "", null, typeof(System.Int32), 4);
this.AddElementFieldMapping("TblQuizEntity", "QuizYear", "QuizYear", true, "Integer", 0, 10, 0, false, "", null, typeof(System.Int32), 5);
}
/// <summary>Inits TblQuizQuestionEntity's mappings</summary>
private void InitTblQuizQuestionEntityMappings()
{
this.AddElementMapping("TblQuizQuestionEntity", @"Data", @"Default", "tblQuizQuestions", 5, 0);
this.AddElementFieldMapping("TblQuizQuestionEntity", "QuestionId", "QuestionID", true, "VarWChar", 32, 0, 0, false, "", null, typeof(System.String), 0);
this.AddElementFieldMapping("TblQuizQuestionEntity", "QuizId", "QuizID", false, "VarWChar", 32, 0, 0, false, "", null, typeof(System.String), 1);
this.AddElementFieldMapping("TblQuizQuestionEntity", "QuizTemplateId", "QuizTemplateID", false, "VarWChar", 32, 0, 0, false, "", null, typeof(System.String), 2);
this.AddElementFieldMapping("TblQuizQuestionEntity", "TrainingTypeId", "TrainingTypeID", false, "VarWChar", 2, 0, 0, false, "", null, typeof(System.String), 3);
this.AddElementFieldMapping("TblQuizQuestionEntity", "UniqueId", "UniqueID", false, "VarWChar", 32, 0, 0, false, "", null, typeof(System.String), 4);
}
/// <summary>Inits TblQuizTemplateEntity's mappings</summary>
private void InitTblQuizTemplateEntityMappings()
{
this.AddElementMapping("TblQuizTemplateEntity", @"Data", @"Default", "tblQuizTemplate", 7, 0);
this.AddElementFieldMapping("TblQuizTemplateEntity", "FooterDes", "FooterDes", true, "LongVarWChar", 536870911, 0, 0, false, "", null, typeof(System.String), 0);
this.AddElementFieldMapping("TblQuizTemplateEntity", "HeaderDes", "HeaderDes", true, "LongVarWChar", 536870911, 0, 0, false, "", null, typeof(System.String), 1);
this.AddElementFieldMapping("TblQuizTemplateEntity", "QuizTemplateCode", "QuizTemplateCode", true, "VarWChar", 255, 0, 0, false, "", null, typeof(System.String), 2);
this.AddElementFieldMapping("TblQuizTemplateEntity", "QuizTemplateId", "QuizTemplateID", false, "VarWChar", 32, 0, 0, false, "", null, typeof(System.String), 3);
this.AddElementFieldMapping("TblQuizTemplateEntity", "Renumering", "Renumering", false, "Boolean", 2, 0, 0, false, "", null, typeof(System.Boolean), 4);
this.AddElementFieldMapping("TblQuizTemplateEntity", "TemplateQuizName", "TemplateQuizName", true, "VarWChar", 255, 0, 0, false, "", null, typeof(System.String), 5);
this.AddElementFieldMapping("TblQuizTemplateEntity", "TrainingTypeId", "TrainingTypeID", false, "VarWChar", 2, 0, 0, false, "", null, typeof(System.String), 6);
}
/// <summary>Inits TblQuizTemplateDetailEntity's mappings</summary>
private void InitTblQuizTemplateDetailEntityMappings()
{
this.AddElementMapping("TblQuizTemplateDetailEntity", @"Data", @"Default", "tblQuizTemplateDetail", 7, 0);
this.AddElementFieldMapping("TblQuizTemplateDetailEntity", "Difficulty", "Difficulty", true, "VarWChar", 1, 0, 0, false, "", null, typeof(System.String), 0);
this.AddElementFieldMapping("TblQuizTemplateDetailEntity", "FieldId", "FieldID", true, "VarWChar", 1, 0, 0, false, "", null, typeof(System.String), 1);
this.AddElementFieldMapping("TblQuizTemplateDetailEntity", "Level", "Level", true, "VarWChar", 1, 0, 0, false, "", null, typeof(System.String), 2);
this.AddElementFieldMapping("TblQuizTemplateDetailEntity", "QuestionNum", "QuestionNum", true, "SmallInt", 0, 5, 0, false, "", null, typeof(System.Int16), 3);
this.AddElementFieldMapping("TblQuizTemplateDetailEntity", "QuizTemplateId", "QuizTemplateID", true, "VarWChar", 32, 0, 0, false, "", null, typeof(System.String), 4);
this.AddElementFieldMapping("TblQuizTemplateDetailEntity", "SubjectId", "SubjectID", true, "VarWChar", 2, 0, 0, false, "", null, typeof(System.String), 5);
this.AddElementFieldMapping("TblQuizTemplateDetailEntity", "UniqueId", "UniqueID", false, "VarWChar", 32, 0, 0, false, "", null, typeof(System.String), 6);
}
/// <summary>Inits TblSubjectEntity's mappings</summary>
private void InitTblSubjectEntityMappings()
{
this.AddElementMapping("TblSubjectEntity", @"Data", @"Default", "tblSubjects", 3, 0);
this.AddElementFieldMapping("TblSubjectEntity", "SubjectDes", "SubjectDes", true, "LongVarWChar", 536870911, 0, 0, false, "", null, typeof(System.String), 0);
this.AddElementFieldMapping("TblSubjectEntity", "SubjectId", "SubjectID", false, "VarWChar", 2, 0, 0, false, "", null, typeof(System.String), 1);
this.AddElementFieldMapping("TblSubjectEntity", "SubjectName", "SubjectName", true, "VarWChar", 50, 0, 0, false, "", null, typeof(System.String), 2);
}
/// <summary>Inits TblTrainingTypeEntity's mappings</summary>
private void InitTblTrainingTypeEntityMappings()
{
this.AddElementMapping("TblTrainingTypeEntity", @"Data", @"Default", "tblTrainingTypes", 2, 0);
this.AddElementFieldMapping("TblTrainingTypeEntity", "TrainingTypeId", "TrainingTypeID", false, "VarWChar", 2, 0, 0, false, "", null, typeof(System.String), 0);
this.AddElementFieldMapping("TblTrainingTypeEntity", "TrainingTypeName", "TrainingTypeName", true, "VarWChar", 255, 0, 0, false, "", null, typeof(System.String), 1);
}
}
}

View File

@@ -0,0 +1,25 @@
//////////////////////////////////////////////////////////////
// <auto-generated>This code was generated by LLBLGen Pro 5.7.</auto-generated>
//////////////////////////////////////////////////////////////
// Code is generated on:
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
//////////////////////////////////////////////////////////////
using System;
using System.Data;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using SD.LLBLGen.Pro.ORMSupportClasses;
using SD.LLBLGen.Pro.QuerySpec.Adapter;
namespace Datalib.DatabaseSpecific
{
/// <summary>Class which contains the static logic to execute retrieval stored procedures in the database.</summary>
public static partial class RetrievalProcedures
{
}
}

View File

@@ -0,0 +1,7 @@
<?xml version="1.0"?>
<configuration>
<connectionStrings>
<!-- please adjust the connection string embedded in the element below to target the proper catalog / server using the proper user / password combination -->
<add name="ConnectionString.MS Access (OleDb)" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=I:\projects\OmegaPro\Database\Data.mdb;User Id=;Password=;Jet OLEDB:System Database=;Jet OLEDB:Database password="/>
</connectionStrings>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup></configuration>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]

View File

@@ -0,0 +1 @@
9d49d9fc7859c9bfecf3f0155ad59fd4efdc85ce

View File

@@ -0,0 +1,35 @@
I:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\DatalibDBSpecific.dll.config
I:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\DatalibDBSpecific.dll
I:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\DatalibDBSpecific.pdb
I:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\SD.LLBLGen.Pro.DQE.Access.dll
I:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\SD.LLBLGen.Pro.ORMSupportClasses.dll
I:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\SD.LLBLGen.Pro.ORMSupportClasses.pdb
I:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\SD.LLBLGen.Pro.ORMSupportClasses.xml
I:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\SD.LLBLGen.Pro.DQE.Access.pdb
I:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.csproj.CoreCompileInputs.cache
I:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.csproj.CopyComplete
I:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.dll
I:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.pdb
I:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.csprojAssemblyReference.cache
H:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\DatalibDBSpecific.dll.config
H:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\DatalibDBSpecific.dll
H:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\DatalibDBSpecific.pdb
H:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\SD.LLBLGen.Pro.ORMSupportClasses.pdb
H:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\SD.LLBLGen.Pro.ORMSupportClasses.xml
H:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\SD.LLBLGen.Pro.DQE.Access.pdb
H:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.csproj.AssemblyReference.cache
H:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.csproj.CoreCompileInputs.cache
H:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.csproj.CopyComplete
H:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.dll
H:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.pdb
J:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\DatalibDBSpecific.dll.config
J:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\DatalibDBSpecific.dll
J:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\DatalibDBSpecific.pdb
J:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\SD.LLBLGen.Pro.ORMSupportClasses.pdb
J:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\SD.LLBLGen.Pro.ORMSupportClasses.xml
J:\projects\OmegaPro\Datalib\DatabaseSpecific\bin\Release\SD.LLBLGen.Pro.DQE.Access.pdb
J:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.csproj.AssemblyReference.cache
J:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.csproj.CoreCompileInputs.cache
J:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.csproj.CopyComplete
J:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.dll
J:\projects\OmegaPro\Datalib\DatabaseSpecific\obj\Release\DatalibDBSpecific.pdb

View File

@@ -0,0 +1 @@
obj\Release\\_IsIncrementalBuild

15
omegapro/Omega/App.config Normal file
View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/>
</startup>
<appSettings>
<add key="ConnectionString.MS Access (OleDb)" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\14072014\Data.mdb;User Id=admin;Password=;Jet OLEDB:System Database=;Jet OLEDB:Database password="/>
<add key="BackupFolder" value="E:\OmegaBackup"/>
<add key="OutputFolder" value="E:\OmegaOutput"/>
<add key="Exclusive" value="3"/>
<add key="RegisterNo" value="A7CC890C773912C190DAE33BFC28A6BE"/>
<add key="QuestionNum" value="10"/>
</appSettings>
</configuration>

View File

@@ -0,0 +1,75 @@
using System;
using System.Collections.Generic;
using System.Linq;
using Datalib.EntityClasses;
using Datalib.DatabaseSpecific;
using System.Windows.Forms;
namespace Omega.usrControls
{
public partial class usrCommon : DevExpress.XtraEditors.XtraUserControl
{
private Boolean _readonly;
public DataAccessAdapter adapter = new DataAccessAdapter();
public Boolean ControlEnabled
{
get { return _readonly; }
set
{
_readonly = value;
foreach (Control c in this.Controls)
{
c.Enabled = _readonly;
}
}
}
public usrCommon()
{
InitializeComponent();
}
public virtual void SaveRecord()
{
ShowSaveInfo();
}
public virtual void DeleteRecord()
{
}
public virtual void BindingData()
{
}
public virtual void NewRecord()
{
}
public virtual void LoadData()
{
}
public virtual void Cancel()
{
}
public virtual void ShowSaveInfo()
{
var frm = new Forms.frmShowSaveInfo();
frm.Show ();
}
public virtual void ClearBinding()
{
}
public virtual void LoadLibrary()
{
}
public virtual void Print()
{
}
}
}

View File

@@ -0,0 +1,45 @@
namespace Omega.usrControls
{
partial class usrCommon
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(usrCommon));
this.SuspendLayout();
//
// usrCommon
//
resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Name = "usrCommon";
this.ResumeLayout(false);
}
#endregion
}
}

View File

@@ -0,0 +1,136 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>vi-VN</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 13</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>usrCommon</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.XtraUserControl, DevExpress.Utils.v22.1, Version=22.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
</root>

View File

@@ -0,0 +1,136 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>vi-VN</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 13</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>usrCommon</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.XtraUserControl, DevExpress.Utils.v20.1, Version=20.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
</root>

View File

@@ -0,0 +1,42 @@
using System;
using System.Collections.Generic;
using System.Linq;
using Datalib.DatabaseSpecific;
using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Validation;
using OpenXmlPowerTools;
namespace Omega.BasicForms
{
public partial class frmCommon : DevExpress.XtraEditors.XtraForm
{
public DataAccessAdapter adapter = new DataAccessAdapter();
public frmCommon()
{
InitializeComponent();
}
public virtual void SaveRecord()
{
}
public virtual void DeleteRecord()
{
}
public virtual void BindingData()
{
}
public virtual void ReBinding()
{
}
public virtual void NewRecord()
{
}
public virtual void LoadData()
{
}
}
}

View File

@@ -0,0 +1,46 @@
namespace Omega.BasicForms
{
partial class frmCommon
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmCommon));
this.SuspendLayout();
//
// frmCommon
//
resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Name = "frmCommon";
this.ResumeLayout(false);
}
#endregion
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,124 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
<value>CenterScreen</value>
</data>
</root>

View File

@@ -0,0 +1,165 @@
using System;
using System.Management;
using System.Security.Cryptography;
using System.Security;
using System.Collections;
using System.Text;
namespace Omega
{
/// <summary>
/// Generates a 16 byte Unique Identification code of a computer
/// Example: 4876-8DB5-EE85-69D3-FE52-8CF7-395D-2EA9
/// </summary>
public class FingerPrint
{
private static string fingerPrint = string.Empty;
public static string Value()
{
if (string.IsNullOrEmpty(fingerPrint))
{
fingerPrint = GetHash("CPU >> " + cpuId() + "\nBIOS >> " + biosId() + "\nBASE >> " + baseId()
//+"\nDISK >> "+ diskId() + "\nVIDEO >> " + videoId() +"\nMAC >> "+ macId()
);
}
return fingerPrint;
}
private static string GetHash(string s)
{
MD5 sec = new MD5CryptoServiceProvider();
ASCIIEncoding enc = new ASCIIEncoding();
byte[] bt = enc.GetBytes(s);
return GetHexString(sec.ComputeHash(bt));
}
private static string GetHexString(byte[] bt)
{
string s = string.Empty;
for (int i = 0; i < bt.Length; i++)
{
byte b = bt[i];
int n, n1, n2;
n = (int)b;
n1 = n & 15;
n2 = (n >> 4) & 15;
if (n2 > 9)
s += ((char)(n2 - 10 + (int)'A')).ToString();
else
s += n2.ToString();
if (n1 > 9)
s += ((char)(n1 - 10 + (int)'A')).ToString();
else
s += n1.ToString();
if ((i + 1) != bt.Length && (i + 1) % 2 == 0) s += "-";
}
return s;
}
#region Original Device ID Getting Code
//Return a hardware identifier
private static string identifier(string wmiClass, string wmiProperty, string wmiMustBeTrue)
{
string result = "";
System.Management.ManagementClass mc = new System.Management.ManagementClass(wmiClass);
System.Management.ManagementObjectCollection moc = mc.GetInstances();
foreach (System.Management.ManagementObject mo in moc)
{
if (mo[wmiMustBeTrue].ToString() == "True")
{
//Only get the first one
if (result == "")
{
try
{
result = mo[wmiProperty].ToString();
break;
}
catch
{
}
}
}
}
return result;
}
//Return a hardware identifier
private static string identifier(string wmiClass, string wmiProperty)
{
string result = "";
System.Management.ManagementClass mc = new System.Management.ManagementClass(wmiClass);
System.Management.ManagementObjectCollection moc = mc.GetInstances();
foreach (System.Management.ManagementObject mo in moc)
{
//Only get the first one
if (result == "")
{
try
{
result = mo[wmiProperty].ToString();
break;
}
catch
{
}
}
}
return result;
}
private static string cpuId()
{
//Uses first CPU identifier available in order of preference
//Don't get all identifiers, as very time consuming
string retVal = identifier("Win32_Processor", "UniqueId");
if (retVal == "") //If no UniqueID, use ProcessorID
{
retVal = identifier("Win32_Processor", "ProcessorId");
if (retVal == "") //If no ProcessorId, use Name
{
retVal = identifier("Win32_Processor", "Name");
if (retVal == "") //If no Name, use Manufacturer
{
retVal = identifier("Win32_Processor", "Manufacturer");
}
//Add clock speed for extra security
retVal += identifier("Win32_Processor", "MaxClockSpeed");
}
}
return retVal;
}
//BIOS Identifier
private static string biosId()
{
return identifier("Win32_BIOS", "Manufacturer")
+ identifier("Win32_BIOS", "SMBIOSBIOSVersion")
+ identifier("Win32_BIOS", "IdentificationCode")
+ identifier("Win32_BIOS", "SerialNumber")
+ identifier("Win32_BIOS", "ReleaseDate")
+ identifier("Win32_BIOS", "Version");
}
//Main physical hard drive ID
private static string diskId()
{
return identifier("Win32_DiskDrive", "Model")
+ identifier("Win32_DiskDrive", "Manufacturer")
+ identifier("Win32_DiskDrive", "Signature")
+ identifier("Win32_DiskDrive", "TotalHeads");
}
//Motherboard ID
private static string baseId()
{
return identifier("Win32_BaseBoard", "Model")
+ identifier("Win32_BaseBoard", "Manufacturer")
+ identifier("Win32_BaseBoard", "Name")
+ identifier("Win32_BaseBoard", "SerialNumber");
}
//Primary video controller ID
private static string videoId()
{
return identifier("Win32_VideoController", "DriverVersion")
+ identifier("Win32_VideoController", "Name");
}
//First enabled network card ID
private static string macId()
{
return identifier("Win32_NetworkAdapterConfiguration", "MACAddress", "IPEnabled");
}
#endregion
}
}

View File

@@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Omega
{
class Quiz
{
public string QuestionId { get; set; }
public int Order { get; set; }
}
}

View File

@@ -0,0 +1,209 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Word = Microsoft.Office.Interop.Word;
using Microsoft.Office.Interop.Word;
using Datalib.EntityClasses;
using Datalib.FactoryClasses;
using Datalib.HelperClasses;
using Datalib.Linq;
using Datalib.DatabaseSpecific;
using SD.LLBLGen.Pro.ORMSupportClasses;
using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Packaging;
using Power= OpenXmlPowerTools;
using Sys=System.Windows.Forms;
using System.Xml.Linq;
using System.Xml;
using System.IO;
namespace Omega
{
class Utilities
{
public static void ConverttoPdf(string input, string output)
{
// Create an instance of Word.exe
Word._Application oWord = new Word.Application();
// Make this instance of word invisible (Can still see it in the taskmgr).
oWord.Visible = false;
// Interop requires objects.
object oMissing = System.Reflection.Missing.Value;
object isVisible = true;
object readOnly = false;
object oInput = input;
object oOutput = output;
object oFormat = WdSaveFormat.wdFormatPDF;
// Load a document into our instance of word.exe
Word._Document oDoc = oWord.Documents.Open(ref oInput, ref oMissing, ref readOnly, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref isVisible, ref oMissing, ref oMissing, ref oMissing, ref oMissing);
// Make this document the active document.
oDoc.Activate();
// Save this document in Word 2003 format.
oDoc.SaveAs(ref oOutput, ref oFormat, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing);
// Always close Word.exe.
oWord.Quit(ref oMissing, ref oMissing, ref oMissing);
}
public static void PrintQuiz(TblQuizEntity CurrQuiz)
{
List <Power.Source> sources = new List<Power.Source>();
string SubjectId = "xxxx";
string FieldId = "xxxx";
int QuestionNum = 1;
Boolean Renumering = false;
string prefix = "";
LinqMetaData meta = new LinqMetaData(new DataAccessAdapter());
byte[] header = Convert.FromBase64String(meta.TblQuizTemplate.Where(m => m.QuizTemplateId == CurrQuiz.QuizTemplateId).FirstOrDefault().HeaderDes);
Power.WmlDocument headercon = new Power.WmlDocument(Guid.NewGuid().ToString("N"), header);
Power.OpenXmlMemoryStreamDocument modifystream = new Power.OpenXmlMemoryStreamDocument(headercon);
WordprocessingDocument modifywDoc =modifystream.GetWordprocessingDocument();
Power.TextReplacer.SearchAndReplace(modifywDoc, "{year}", CurrQuiz.QuizYear.ToString(), false);
Power.TextReplacer.SearchAndReplace(modifywDoc, "{QuizCode}", CurrQuiz.QuizCode, false);
Power.TextReplacer.SearchAndReplace(modifywDoc, "{QuizTime}", CurrQuiz.QuizTime.ToString(), false);
sources.Add(new Power.Source(modifystream.GetModifiedWmlDocument(), false));
byte[] footer = Convert.FromBase64String(meta.TblQuizTemplate.Where(m => m.QuizTemplateId == CurrQuiz.QuizTemplateId).FirstOrDefault().FooterDes);
Renumering = meta.TblQuizTemplate.Where(m => m.QuizTemplateId == CurrQuiz.QuizTemplateId).FirstOrDefault().Renumering;
var result = (from q in meta.TblQuestion join m in meta.TblQuizQuestion.Where(m => m.QuizId == CurrQuiz.QuizId) on q.QuestionId equals m.QuestionId select new { SubjectId = q.SubjectId, FieldID = q.FieldId, con = q.Content }).ToList().OrderBy(m => m.SubjectId).ThenBy(m => m.FieldID).ToList();
foreach (var q in result)
{
if(q.SubjectId!=SubjectId)
{
SubjectId = q.SubjectId;
QuestionNum = 1;
byte[] SubjectDes = Convert.FromBase64String(meta.TblSubject.Where(m => m.SubjectId == q.SubjectId).FirstOrDefault().SubjectDes);
sources.Add(new Power.Source(new Power.WmlDocument(Guid.NewGuid().ToString("N"), SubjectDes), false));
}
if (q.FieldID != FieldId)
{
try
{
FieldId = q.FieldID;
if (Renumering) QuestionNum = 1;
prefix = meta.TblField.Where(m => m.SubjectId == q.SubjectId).Where(m => m.FieldId == FieldId).FirstOrDefault().Prefix;
byte[] FieldDes = Convert.FromBase64String(meta.TblField.Where(m => m.SubjectId == q.SubjectId).Where(m => m.FieldId == q.FieldID).FirstOrDefault().Description);
sources.Add(new Power.Source(new Power.WmlDocument(Guid.NewGuid().ToString("N"), FieldDes), false));
}
catch (Exception err)
{
Sys.MessageBox.Show(q.SubjectId + " " + q.FieldID);
}
}
byte[] buf = Convert.FromBase64String(q.con);
Power.WmlDocument con = new Power.WmlDocument(Guid.NewGuid().ToString("N"), buf);
modifystream = new Power.OpenXmlMemoryStreamDocument(con);
modifywDoc = modifystream.GetWordprocessingDocument();
Power.TextReplacer.SearchAndReplace(modifywDoc, "{$}", prefix + (QuestionNum++).ToString() , false);
sources.Add(new Power.Source(modifystream.GetModifiedWmlDocument(), false));
}
sources.Add(new Power.Source(new Power.WmlDocument(CurrQuiz.QuizTemplateId, footer), false));
Power.WmlDocument FinalDoc = Power.DocumentBuilder.BuildDocument(sources);
string OutDocFile = SettingInfo.OutputFolder + @"\"+ CurrQuiz.QuizCode.ToString() + ".docx";
string OutPdfFile = SettingInfo.OutputFolder + @"\"+ CurrQuiz.QuizCode.ToString() + ".pdf";
FinalDoc.SaveAs(OutDocFile);
Utilities.ConverttoPdf(OutDocFile, OutPdfFile);
Forms.frmPDFViewer frm = new Forms.frmPDFViewer();
frm.pdffile = OutPdfFile;
frm.LoadData();
frm.Show();
}
public static void PrintQuizAnswer(TblQuizEntity CurrQuiz)
{
List<Power.Source> sources = new List<Power.Source>();
string SubjectId = "xxxx";
string FieldId = "xxxx";
int QuestionNum = 1;
Boolean Renumering = false;
string prefix = "";
LinqMetaData meta = new LinqMetaData(new DataAccessAdapter());
byte[] header = Convert.FromBase64String(meta.TblQuizTemplate.Where(m => m.QuizTemplateId == CurrQuiz.QuizTemplateId).FirstOrDefault().HeaderDes);
Power.WmlDocument headercon = new Power.WmlDocument(Guid.NewGuid().ToString("N"), header);
Power.OpenXmlMemoryStreamDocument modifystream = new Power.OpenXmlMemoryStreamDocument(headercon);
WordprocessingDocument modifywDoc = modifystream.GetWordprocessingDocument();
Power.TextReplacer.SearchAndReplace(modifywDoc, "{year}", CurrQuiz.QuizYear.ToString(), false);
Power.TextReplacer.SearchAndReplace(modifywDoc, "{QuizCode}", CurrQuiz.QuizCode, false);
Power.TextReplacer.SearchAndReplace(modifywDoc, "{QuizTime}", CurrQuiz.QuizTime.ToString(), false);
sources.Add(new Power.Source(modifystream.GetModifiedWmlDocument(), false));
byte[] footer = Convert.FromBase64String(meta.TblQuizTemplate.Where(m => m.QuizTemplateId == CurrQuiz.QuizTemplateId).FirstOrDefault().FooterDes);
Renumering = meta.TblQuizTemplate.Where(m => m.QuizTemplateId == CurrQuiz.QuizTemplateId).FirstOrDefault().Renumering;
var result = (from q in meta.TblQuestion join m in meta.TblQuizQuestion.Where(m => m.QuizId == CurrQuiz.QuizId) on q.QuestionId equals m.QuestionId select new { SubjectId = q.SubjectId, FieldID = q.FieldId, con = q.Answer}).ToList().OrderBy(m => m.SubjectId).ThenBy(m => m.FieldID).ToList();
foreach (var q in result)
{
if (q.SubjectId != SubjectId)
{
SubjectId = q.SubjectId;
QuestionNum = 1;
byte[] SubjectDes = Convert.FromBase64String(meta.TblSubject.Where(m => m.SubjectId == q.SubjectId).FirstOrDefault().SubjectDes);
sources.Add(new Power.Source(new Power.WmlDocument(Guid.NewGuid().ToString("N"), SubjectDes), false));
}
if (q.FieldID != FieldId)
{
FieldId = q.FieldID;
if (Renumering) QuestionNum = 1;
prefix = meta.TblField.Where(m => m.SubjectId == q.SubjectId).Where(m => m.FieldId == FieldId).FirstOrDefault().Prefix;
byte[] FieldDes = Convert.FromBase64String(meta.TblField.Where(m => m.SubjectId == q.SubjectId).Where(m => m.FieldId == q.FieldID).FirstOrDefault().Description);
sources.Add(new Power.Source(new Power.WmlDocument(Guid.NewGuid().ToString("N"), FieldDes), false));
}
string prefixTemplate = Sys.Application.StartupPath + @"/templates/prefix.docx";
Power.WmlDocument con = new Power.WmlDocument(prefixTemplate);
modifystream = new Power.OpenXmlMemoryStreamDocument(con);
modifywDoc = modifystream.GetWordprocessingDocument();
Power.TextReplacer.SearchAndReplace(modifywDoc, "question", prefix + (QuestionNum++).ToString(), false);
sources.Add(new Power.Source(modifystream.GetModifiedWmlDocument(), false));
byte[] buf = Convert.FromBase64String(q.con);
Power.WmlDocument ans = new Power.WmlDocument(Guid.NewGuid().ToString("N"), buf);
sources.Add(new Power.Source(ans, false));
}
//sources.Add(new Power.Source(new Power.WmlDocument(CurrQuiz.QuizTemplateId, footer), false));
Power.WmlDocument FinalDoc = Power.DocumentBuilder.BuildDocument(sources);
string OutDocFile = SettingInfo.OutputFolder + @"\A" + CurrQuiz.QuizCode.ToString() + ".docx";
string OutPdfFile = SettingInfo.OutputFolder + @"\A" + CurrQuiz.QuizCode.ToString() + ".pdf";
FinalDoc.SaveAs(OutDocFile);
Utilities.ConverttoPdf(OutDocFile, OutPdfFile);
Forms.frmPDFViewer frm = new Forms.frmPDFViewer();
frm.pdffile = OutPdfFile;
frm.LoadData();
frm.Show();
}
}
}

View File

@@ -0,0 +1,44 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Security.Cryptography;
namespace Omega
{
internal static class common
{
public static DateTime testdate { get; set; }
public static DateTime visitdate { get; set; }
public static DateTime MaxDate(DateTime a, DateTime b)
{
return a > b ? a : b;
}
public static DateTime MinDate(DateTime a, DateTime b)
{
return a > b ? b : a;
}
public static string MD5Hash(string text)
{
MD5 md5 = new MD5CryptoServiceProvider();
//compute hash from the bytes of text
md5.ComputeHash(ASCIIEncoding.ASCII.GetBytes(text));
//get hash result after compute it
byte[] result = md5.Hash;
StringBuilder strBuilder = new StringBuilder();
for (int i = 0; i < result.Length; i++)
{
//change it into 2 hexadecimal digits
//for each byte
strBuilder.Append(result[i].ToString("x2"));
}
return strBuilder.ToString();
}
}
}

View File

@@ -0,0 +1,59 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.Windows.Forms;
using System.Configuration;
using System.Collections;
namespace Omega
{
public class SettingInfo
{
private static XmlDocument doc = new XmlDocument();
public static string OutputFolder { get; set; }
public static string BackupFolder { get; set; }
public static string Password { get; set; }
public static string DatabaseFile { get; set; }
public static string UserName { get; set; }
public static string Exclusive {get;set;}
public static string InstallId { get; set; }
public static string RegisterNo {get;set;}
public static Boolean Registered { get; set; }
public static int MinQuestionNum { get; set; }
public static void InitInfo()
{
getValues();
}
public static void getValues()
{
try
{
var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
string value = config.AppSettings.Settings["ConnectionString.MS Access (OleDb)"].Value;
string[] values = value.Split(new char[] { ';' });
string DataSource = values[1];
DatabaseFile = DataSource.Split(new char[] { '=' })[1];
OutputFolder = config.AppSettings.Settings["OutputFolder"].Value;
BackupFolder = config.AppSettings.Settings["BackupFolder"].Value;
Exclusive = config.AppSettings.Settings["Exclusive"].Value;
InstallId = Omega.FingerPrint.Value().Trim();
RegisterNo = config.AppSettings.Settings["RegisterNo"].Value;
Registered = (common.MD5Hash(InstallId.Trim().ToString()).ToUpper() == RegisterNo);
MinQuestionNum = Convert.ToInt32(config.AppSettings.Settings["MinQuestionNum"].Value);
}
catch
{
}
}
}
}

View File

@@ -0,0 +1,57 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Xml;
using System.Linq;
using System.Xml.Linq;
namespace Omega.Forms
{
public partial class frmChangePass : Omega.BasicForms.frmCommon
{
public frmChangePass()
{
InitializeComponent();
}
private void Cancel_Click(object sender, EventArgs e)
{
this.Close();
}
private void OK_Click(object sender, EventArgs e)
{
if ((this.Password.Text != this.RePassword.Text) || (this.Password.Text.Length==0) || (this.RePassword.Text.Length==0))
{
MessageBox.Show("The input values are not the same or empty","Đổi mật khẩu",MessageBoxButtons.OK);
}else
{
string fileToLoad = "Settings.xml";
XElement root = XElement.Load(fileToLoad);
var selected = (from cli in root.Descendants("user")
where cli.Element("username").Value == this.UserName.EditValue.ToString()
select cli).FirstOrDefault();
selected.Element("Password").Value = common.MD5Hash(Password.Text);
root.Save("Settings.xml");
(new frmShowSaveInfo()).Show();
this.Close();
}
}
private void frmChangePass_Load(object sender, EventArgs e)
{
this.UserName.EditValue = SettingInfo.UserName;
this.UserName.Enabled = (SettingInfo.UserName == "Admin");
}
}
}

View File

@@ -0,0 +1,146 @@
namespace Omega.Forms
{
partial class frmChangePass
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmChangePass));
this.labelControl2 = new DevExpress.XtraEditors.LabelControl();
this.Password = new DevExpress.XtraEditors.TextEdit();
this.labelControl1 = new DevExpress.XtraEditors.LabelControl();
this.RePassword = new DevExpress.XtraEditors.TextEdit();
this.OK = new System.Windows.Forms.Button();
this.Cancel = new System.Windows.Forms.Button();
this.imageList = new System.Windows.Forms.ImageList(this.components);
this.UserName = new DevExpress.XtraEditors.ImageComboBoxEdit();
this.labelControl3 = new DevExpress.XtraEditors.LabelControl();
((System.ComponentModel.ISupportInitialize)(this.Password.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.RePassword.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.UserName.Properties)).BeginInit();
this.SuspendLayout();
//
// labelControl2
//
resources.ApplyResources(this.labelControl2, "labelControl2");
this.labelControl2.Name = "labelControl2";
//
// Password
//
this.Password.EnterMoveNextControl = true;
resources.ApplyResources(this.Password, "Password");
this.Password.Name = "Password";
this.Password.Properties.PasswordChar = '*';
//
// labelControl1
//
resources.ApplyResources(this.labelControl1, "labelControl1");
this.labelControl1.Name = "labelControl1";
//
// RePassword
//
this.RePassword.EnterMoveNextControl = true;
resources.ApplyResources(this.RePassword, "RePassword");
this.RePassword.Name = "RePassword";
this.RePassword.Properties.PasswordChar = '*';
//
// OK
//
resources.ApplyResources(this.OK, "OK");
this.OK.Name = "OK";
this.OK.UseVisualStyleBackColor = true;
this.OK.Click += new System.EventHandler(this.OK_Click);
//
// Cancel
//
resources.ApplyResources(this.Cancel, "Cancel");
this.Cancel.Name = "Cancel";
this.Cancel.UseVisualStyleBackColor = true;
this.Cancel.Click += new System.EventHandler(this.Cancel_Click);
//
// imageList
//
this.imageList.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList.ImageStream")));
this.imageList.TransparentColor = System.Drawing.Color.Transparent;
this.imageList.Images.SetKeyName(0, "admin.jpg");
this.imageList.Images.SetKeyName(1, "Super.jpg");
this.imageList.Images.SetKeyName(2, "User.jpg");
//
// UserName
//
resources.ApplyResources(this.UserName, "UserName");
this.UserName.Name = "UserName";
this.UserName.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton(((DevExpress.XtraEditors.Controls.ButtonPredefines)(resources.GetObject("UserName.Properties.Buttons"))))});
this.UserName.Properties.DropDownRows = 3;
this.UserName.Properties.Items.AddRange(new DevExpress.XtraEditors.Controls.ImageComboBoxItem[] {
new DevExpress.XtraEditors.Controls.ImageComboBoxItem(resources.GetString("UserName.Properties.Items"), resources.GetString("UserName.Properties.Items1"), ((int)(resources.GetObject("UserName.Properties.Items2")))),
new DevExpress.XtraEditors.Controls.ImageComboBoxItem(resources.GetString("UserName.Properties.Items3"), resources.GetString("UserName.Properties.Items4"), ((int)(resources.GetObject("UserName.Properties.Items5")))),
new DevExpress.XtraEditors.Controls.ImageComboBoxItem(resources.GetString("UserName.Properties.Items6"), resources.GetString("UserName.Properties.Items7"), ((int)(resources.GetObject("UserName.Properties.Items8"))))});
this.UserName.Properties.LargeImages = this.imageList;
this.UserName.Properties.SmallImages = this.imageList;
//
// labelControl3
//
resources.ApplyResources(this.labelControl3, "labelControl3");
this.labelControl3.Name = "labelControl3";
//
// frmChangePass
//
resources.ApplyResources(this, "$this");
this.Controls.Add(this.labelControl3);
this.Controls.Add(this.UserName);
this.Controls.Add(this.Cancel);
this.Controls.Add(this.OK);
this.Controls.Add(this.labelControl1);
this.Controls.Add(this.RePassword);
this.Controls.Add(this.labelControl2);
this.Controls.Add(this.Password);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.Name = "frmChangePass";
this.Load += new System.EventHandler(this.frmChangePass_Load);
((System.ComponentModel.ISupportInitialize)(this.Password.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.RePassword.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.UserName.Properties)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private DevExpress.XtraEditors.LabelControl labelControl2;
private DevExpress.XtraEditors.TextEdit Password;
private DevExpress.XtraEditors.LabelControl labelControl1;
private DevExpress.XtraEditors.TextEdit RePassword;
private System.Windows.Forms.Button OK;
private System.Windows.Forms.Button Cancel;
private System.Windows.Forms.ImageList imageList;
private DevExpress.XtraEditors.ImageComboBoxEdit UserName;
private DevExpress.XtraEditors.LabelControl labelControl3;
}
}

View File

@@ -0,0 +1,440 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="labelControl2.Location" type="System.Drawing.Point, System.Drawing">
<value>27, 78</value>
</data>
<data name="labelControl2.Size" type="System.Drawing.Size, System.Drawing">
<value>95, 13</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="labelControl2.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
</data>
<data name="labelControl2.Text" xml:space="preserve">
<value>Nhập mật khẩu mới:</value>
</data>
<data name="&gt;&gt;labelControl2.Name" xml:space="preserve">
<value>labelControl2</value>
</data>
<data name="&gt;&gt;labelControl2.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v22.1, Version=22.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;labelControl2.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;labelControl2.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="Password.Location" type="System.Drawing.Point, System.Drawing">
<value>132, 76</value>
</data>
<data name="Password.Size" type="System.Drawing.Size, System.Drawing">
<value>196, 20</value>
</data>
<data name="Password.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="&gt;&gt;Password.Name" xml:space="preserve">
<value>Password</value>
</data>
<data name="&gt;&gt;Password.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v22.1, Version=22.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;Password.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;Password.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="labelControl1.Location" type="System.Drawing.Point, System.Drawing">
<value>34, 113</value>
</data>
<data name="labelControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>89, 13</value>
</data>
<data name="labelControl1.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
</data>
<data name="labelControl1.Text" xml:space="preserve">
<value>Nhập lại mật khẩu:</value>
</data>
<data name="&gt;&gt;labelControl1.Name" xml:space="preserve">
<value>labelControl1</value>
</data>
<data name="&gt;&gt;labelControl1.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v22.1, Version=22.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;labelControl1.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;labelControl1.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="RePassword.Location" type="System.Drawing.Point, System.Drawing">
<value>132, 111</value>
</data>
<data name="RePassword.Size" type="System.Drawing.Size, System.Drawing">
<value>196, 20</value>
</data>
<data name="RePassword.TabIndex" type="System.Int32, mscorlib">
<value>6</value>
</data>
<data name="&gt;&gt;RePassword.Name" xml:space="preserve">
<value>RePassword</value>
</data>
<data name="&gt;&gt;RePassword.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v22.1, Version=22.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;RePassword.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;RePassword.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="OK.Location" type="System.Drawing.Point, System.Drawing">
<value>106, 158</value>
</data>
<data name="OK.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 23</value>
</data>
<data name="OK.TabIndex" type="System.Int32, mscorlib">
<value>8</value>
</data>
<data name="OK.Text" xml:space="preserve">
<value>OK</value>
</data>
<data name="&gt;&gt;OK.Name" xml:space="preserve">
<value>OK</value>
</data>
<data name="&gt;&gt;OK.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;OK.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;OK.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="Cancel.Location" type="System.Drawing.Point, System.Drawing">
<value>212, 158</value>
</data>
<data name="Cancel.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 23</value>
</data>
<data name="Cancel.TabIndex" type="System.Int32, mscorlib">
<value>9</value>
</data>
<data name="Cancel.Text" xml:space="preserve">
<value>Cancel</value>
</data>
<data name="&gt;&gt;Cancel.Name" xml:space="preserve">
<value>Cancel</value>
</data>
<data name="&gt;&gt;Cancel.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;Cancel.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;Cancel.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<metadata name="imageList.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<data name="imageList.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABI
DwAAAk1TRnQBSQFMAgEBAwEAASgBAAEoAQABIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABgAMAASADAAEBAQABCAYAARAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wEAA/8B8wHxAfABvAcH
AbwC8ALyAvQB9iv/AQABDgoAAQ8Emi4AAf8B8A7xAfIB8QG8A0UBkgHvAQcB8AHxAfMO/wG8Ad0I/wH2
Af8B9gH/AvYD/wH0AfYB/wHsDA4BHASaDg4gAAH/AfIB8AHxAfAB8QzyAfABRQJGAfEE8gHzAu8B8AH0
CP8B9gHrAQcBcwf/AfYB/wH2B/8B9gL/AfQBDwsOBZoNDgEPIAAC/wHxAvAC8QvyAfEDRgEbCPIG/wFt
ARQBDgEQAagBzwGvAa4B8wL/AbkBuAGuAqgBzwGoA6cExAGnAagB/wEOARAJDwEQBZoBdAsPARAB8SAA
A/8D8AHxAfIK8wEbA0YJ8wb/ARMBEQFDARQDrwG1AfQC/wHrAtkCrAGmCcQBpwH/Ae8KEQEQBpoLEQFD
Af8gAAT/A/AB8QHyCPMB8gEHA0YB9AjzBv8B7AFDARABQwHtAdABbQL/AewBgQFlAa8BqAHEAdkBZQrE
Av8BEQlDAQAGmgEQCkMB9AH/IAAF/wHxA/AB8gH0AfMC9AHzAbwB8wH0Af8CRQH/AfMI9Ab/AewBQwES
AW8BEgX/AbkB2QGyAqwB2QGKAYwBdAEMB8QD/wFDBBUCFAIVAUsGmgFEARQIFQEPAv8gAAf/A/AB8QL0
AfEB8wP0Af8B8wL/CfQG/wFDAhQBRQIOAfAG/wHyArIBrAG4AWUBpgH0Cv8B7QEQBhMImgcTAQ4B8wH0
Av8gAAj/AfMC8AHxAQcB8ALzA/QBvAP/AfQF/wH0B/8BFQEQAUMBDwHxAf8C9gX/AWwBZQFLASIBuAGs
AWUBCwFAAUcL/wFLAQ4BEgETARIFmgEaApoCEgHqARUBFAf/IAAK/wHwAe8CvAHxAfIBDwIOAQ8BEwL0
AfMN/wFtAuwBDwHxAfIB/wHzA/8BFQGZAUsBRAEiAUQB2QKsAYoCHwn/ARsEIwFEAQsImgEiAUsCKgH2
B/8gAAv/A7wBEAEAAQ4BAAMOAf8C9Az/AfMBQwESAv8BDgG8Bf8BWAG5AawCigEOAbgBrAKKAgEB6Qj/
AXMBRAMjAikBegKaAXQBegOaAXQEKgf/IAAL/wEHAbwCDgIPAQ4BAAIOAREB8wH0DP8B8wEPAbwB8wH/
AQAB7QH0A/8BbQG4AbIBrAKKAf4BsgKsAYoBAQHpAQsI/wEcAUsDIwIpAnQGmgFSBCoB9gb/IAAM/wHs
Aw4BDwEQAQ4BAAEOARAB8w3/AfQB7AL/AfQBvAHsA/8B9gK4AbIDigH+AawBigGsAaYBAQEfAfAG/wH2
BSMCKQEjBZoBdAFSAUsFKgFLBv8gAAz/Ag4BAAEOAg8BEQIOARABAAEOAfEP/wHwAbwB9wT/Af4CsgOK
AWsBsgKKAawBDwHpAQcG/wFEBSMBKQEjCZoBeQUqBv8gAAv/Aw4BAAIOAQ8BEAERAQABEAEAAQ4BEBb/
AfMBRwFBAYoBpgKKAbgEigIBBf8B9gEcASMBSgIjAikBegqaAXQEKgb/IAAK/wERAQAFDgIPARABEQEP
AQABFRD/AfMB/wHvBP8B8wH+AUEBAAGyAooB2QGsA4oBHwELBf8B9gGZAyMCKQEqB5oCGgOaBCoB9gX/
IAAJ/wHyAREBDgERBQ4BDwIQAQ8BDgHyAfMX/wESAREBkQKsAYoB2QGsAooBDwLpCP8B9gFKASMBKQEq
BpoDGgOaBCoG/yAACf8B6gETAhABDgEPAw4CDwEQAw4Z/wG9AUcBZgKsAbIBrAGKAawBHwEBAR8J/wH2
ASkCKgaaBBoCmgQqBv8gAAn/AewB6gEUAQ8CEwEUAQ8CDgEPARABDgEQAQ4BEQETAfQW/wG4BawCigFl
AgEBQAr/ASkCKgWaAxoBwwEaApoEKgb/IAAH/wH3Ae8BkgHrAg4B6wFtAeoBFQIOAg8EDgEUAfQW/wHD
AYoDrAFlAYoBZQEBAekBHwv/ASkCKgWaAhoCwwEaApoEKgb/IAAH/wEOAkMBAAIOAewBkgHrAW0BEAIO
AQ8CDgEQAQ4B9BX/AfQB8wEaAZoBAAELAekCRwHpAkYBaAv/ASkBKgFLBZoCGgLDARoCmgMqAUsG/yAA
B/8CDgIRAQACDgFtARADDgFDAQ8CDgEPAfQQ/wH0Af8B8AL/AfIBRgSaAXQBkwFLAUQBRgFHAQEM/wFz
ASoBSwOaAUsCmgQaApoDKgGZBv8gAAb/AfACDgEPAREBEAEOAg8BDgIPBA4BEAEOEv8B6wHvAf8B6wEA
AUcBRgJEAZoBcwGaAXQBdQEfARwN/wEbBCoBSwEqAXoBmgQaApoDKgH2Bv8gAAb/AfECDgEPAUMBEQEO
ARABEQMQAQ4CDwIOAe8T/wEAAUMBGwEAAXQBRgEgAW4BegGaAZkBbhD/AfYHKgGaAxoCmgFLAyoH/yAA
B/8CDwEQAkMBEQEQAQ8CEQEQAQ8BEAEPARABDhT/AfcCAAKaAQ4BHgHpAW0BQwEQAfMR/wcqAUsBmgIa
ApoEKgf/IAAH/wEPAhABEQJDAREDQwIRAhABDwFtFf8DAAF0AQ4CAAEfAgAS/wFLByoBegOaBCoBGwf/
IAAH/wFtARACEQIVAUMBFQFDARECQwERAhAX/wEOAQABEQQAAQsBHgFFAfQQ/wEbCCoBmgF0BSoI/yAA
CP8CEQFDAxUBFAMVAkMBEQH0GP8BvAEAARABEQEAAQ4BRxT/DioBwwj/IAAJ/wFDAhUFFAMVAewa/wHt
Af8B9gL/AfQU/wHDDCoBSwn/IAAK/wIVARQDEwIUARUB7Db/AXQKKgFRCv8gAAz/ARIBEwISARMBFDn/
AcMIKgH2C/8gAEz/AfYBwwF5AUsBdAHDAv8B9gv/IAABQgFNAT4HAAE+AwABKAMAAYADAAEgAwABAQEA
AQEGAAECFgAD//8A/wADAAs=
</value>
</data>
<data name="UserName.Location" type="System.Drawing.Point, System.Drawing">
<value>132, 23</value>
</data>
<assembly alias="DevExpress.Utils.v22.1" name="DevExpress.Utils.v22.1, Version=22.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="UserName.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v22.1">
<value>Combo</value>
</data>
<data name="UserName.Properties.Items" xml:space="preserve">
<value>Admin</value>
</data>
<data name="UserName.Properties.Items1" xml:space="preserve">
<value>Admin</value>
</data>
<data name="UserName.Properties.Items2" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="UserName.Properties.Items3" xml:space="preserve">
<value>SuperUser</value>
</data>
<data name="UserName.Properties.Items4" xml:space="preserve">
<value>SuperUser</value>
</data>
<data name="UserName.Properties.Items5" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="UserName.Properties.Items6" xml:space="preserve">
<value>User</value>
</data>
<data name="UserName.Properties.Items7" xml:space="preserve">
<value>User</value>
</data>
<data name="UserName.Properties.Items8" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="UserName.Size" type="System.Drawing.Size, System.Drawing">
<value>196, 34</value>
</data>
<data name="UserName.TabIndex" type="System.Int32, mscorlib">
<value>10</value>
</data>
<data name="&gt;&gt;UserName.Name" xml:space="preserve">
<value>UserName</value>
</data>
<data name="&gt;&gt;UserName.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.ImageComboBoxEdit, DevExpress.XtraEditors.v22.1, Version=22.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;UserName.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;UserName.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="labelControl3.Location" type="System.Drawing.Point, System.Drawing">
<value>70, 33</value>
</data>
<data name="labelControl3.Size" type="System.Drawing.Size, System.Drawing">
<value>52, 13</value>
</data>
<data name="labelControl3.TabIndex" type="System.Int32, mscorlib">
<value>11</value>
</data>
<data name="labelControl3.Text" xml:space="preserve">
<value>User Name</value>
</data>
<data name="&gt;&gt;labelControl3.Name" xml:space="preserve">
<value>labelControl3</value>
</data>
<data name="&gt;&gt;labelControl3.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v22.1, Version=22.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;labelControl3.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;labelControl3.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 13</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>382, 209</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
<value>CenterScreen</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>Đôi mật khẩu</value>
</data>
<data name="&gt;&gt;imageList.Name" xml:space="preserve">
<value>imageList</value>
</data>
<data name="&gt;&gt;imageList.Type" xml:space="preserve">
<value>System.Windows.Forms.ImageList, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>frmChangePass</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>Omega.BasicForms.frmCommon, Omega, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
</root>

View File

@@ -0,0 +1,440 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="labelControl2.Location" type="System.Drawing.Point, System.Drawing">
<value>27, 78</value>
</data>
<data name="labelControl2.Size" type="System.Drawing.Size, System.Drawing">
<value>95, 13</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="labelControl2.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
</data>
<data name="labelControl2.Text" xml:space="preserve">
<value>Nhập mật khẩu mới:</value>
</data>
<data name="&gt;&gt;labelControl2.Name" xml:space="preserve">
<value>labelControl2</value>
</data>
<data name="&gt;&gt;labelControl2.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v20.1, Version=20.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;labelControl2.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;labelControl2.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="Password.Location" type="System.Drawing.Point, System.Drawing">
<value>132, 76</value>
</data>
<data name="Password.Size" type="System.Drawing.Size, System.Drawing">
<value>196, 20</value>
</data>
<data name="Password.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="&gt;&gt;Password.Name" xml:space="preserve">
<value>Password</value>
</data>
<data name="&gt;&gt;Password.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v20.1, Version=20.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;Password.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;Password.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="labelControl1.Location" type="System.Drawing.Point, System.Drawing">
<value>34, 113</value>
</data>
<data name="labelControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>89, 13</value>
</data>
<data name="labelControl1.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
</data>
<data name="labelControl1.Text" xml:space="preserve">
<value>Nhập lại mật khẩu:</value>
</data>
<data name="&gt;&gt;labelControl1.Name" xml:space="preserve">
<value>labelControl1</value>
</data>
<data name="&gt;&gt;labelControl1.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v20.1, Version=20.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;labelControl1.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;labelControl1.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="RePassword.Location" type="System.Drawing.Point, System.Drawing">
<value>132, 111</value>
</data>
<data name="RePassword.Size" type="System.Drawing.Size, System.Drawing">
<value>196, 20</value>
</data>
<data name="RePassword.TabIndex" type="System.Int32, mscorlib">
<value>6</value>
</data>
<data name="&gt;&gt;RePassword.Name" xml:space="preserve">
<value>RePassword</value>
</data>
<data name="&gt;&gt;RePassword.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v20.1, Version=20.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;RePassword.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;RePassword.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="OK.Location" type="System.Drawing.Point, System.Drawing">
<value>106, 158</value>
</data>
<data name="OK.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 23</value>
</data>
<data name="OK.TabIndex" type="System.Int32, mscorlib">
<value>8</value>
</data>
<data name="OK.Text" xml:space="preserve">
<value>OK</value>
</data>
<data name="&gt;&gt;OK.Name" xml:space="preserve">
<value>OK</value>
</data>
<data name="&gt;&gt;OK.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;OK.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;OK.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="Cancel.Location" type="System.Drawing.Point, System.Drawing">
<value>212, 158</value>
</data>
<data name="Cancel.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 23</value>
</data>
<data name="Cancel.TabIndex" type="System.Int32, mscorlib">
<value>9</value>
</data>
<data name="Cancel.Text" xml:space="preserve">
<value>Cancel</value>
</data>
<data name="&gt;&gt;Cancel.Name" xml:space="preserve">
<value>Cancel</value>
</data>
<data name="&gt;&gt;Cancel.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;Cancel.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;Cancel.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<metadata name="imageList.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<data name="imageList.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABI
DwAAAk1TRnQBSQFMAgEBAwEAASgBAAEoAQABIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABgAMAASADAAEBAQABCAYAARAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wEAA/8B8wHxAfABvAcH
AbwC8ALyAvQB9iv/AQABDgoAAQ8Emi4AAf8B8A7xAfIB8QG8A0UBkgHvAQcB8AHxAfMO/wG8Ad0I/wH2
Af8B9gH/AvYD/wH0AfYB/wHsDA4BHASaDg4gAAH/AfIB8AHxAfAB8QzyAfABRQJGAfEE8gHzAu8B8AH0
CP8B9gHrAQcBcwf/AfYB/wH2B/8B9gL/AfQBDwsOBZoNDgEPIAAC/wHxAvAC8QvyAfEDRgEbCPIG/wFt
ARQBDgEQAagBzwGvAa4B8wL/AbkBuAGuAqgBzwGoA6cExAGnAagB/wEOARAJDwEQBZoBdAsPARAB8SAA
A/8D8AHxAfIK8wEbA0YJ8wb/ARMBEQFDARQDrwG1AfQC/wHrAtkCrAGmCcQBpwH/Ae8KEQEQBpoLEQFD
Af8gAAT/A/AB8QHyCPMB8gEHA0YB9AjzBv8B7AFDARABQwHtAdABbQL/AewBgQFlAa8BqAHEAdkBZQrE
Av8BEQlDAQAGmgEQCkMB9AH/IAAF/wHxA/AB8gH0AfMC9AHzAbwB8wH0Af8CRQH/AfMI9Ab/AewBQwES
AW8BEgX/AbkB2QGyAqwB2QGKAYwBdAEMB8QD/wFDBBUCFAIVAUsGmgFEARQIFQEPAv8gAAf/A/AB8QL0
AfEB8wP0Af8B8wL/CfQG/wFDAhQBRQIOAfAG/wHyArIBrAG4AWUBpgH0Cv8B7QEQBhMImgcTAQ4B8wH0
Av8gAAj/AfMC8AHxAQcB8ALzA/QBvAP/AfQF/wH0B/8BFQEQAUMBDwHxAf8C9gX/AWwBZQFLASIBuAGs
AWUBCwFAAUcL/wFLAQ4BEgETARIFmgEaApoCEgHqARUBFAf/IAAK/wHwAe8CvAHxAfIBDwIOAQ8BEwL0
AfMN/wFtAuwBDwHxAfIB/wHzA/8BFQGZAUsBRAEiAUQB2QKsAYoCHwn/ARsEIwFEAQsImgEiAUsCKgH2
B/8gAAv/A7wBEAEAAQ4BAAMOAf8C9Az/AfMBQwESAv8BDgG8Bf8BWAG5AawCigEOAbgBrAKKAgEB6Qj/
AXMBRAMjAikBegKaAXQBegOaAXQEKgf/IAAL/wEHAbwCDgIPAQ4BAAIOAREB8wH0DP8B8wEPAbwB8wH/
AQAB7QH0A/8BbQG4AbIBrAKKAf4BsgKsAYoBAQHpAQsI/wEcAUsDIwIpAnQGmgFSBCoB9gb/IAAM/wHs
Aw4BDwEQAQ4BAAEOARAB8w3/AfQB7AL/AfQBvAHsA/8B9gK4AbIDigH+AawBigGsAaYBAQEfAfAG/wH2
BSMCKQEjBZoBdAFSAUsFKgFLBv8gAAz/Ag4BAAEOAg8BEQIOARABAAEOAfEP/wHwAbwB9wT/Af4CsgOK
AWsBsgKKAawBDwHpAQcG/wFEBSMBKQEjCZoBeQUqBv8gAAv/Aw4BAAIOAQ8BEAERAQABEAEAAQ4BEBb/
AfMBRwFBAYoBpgKKAbgEigIBBf8B9gEcASMBSgIjAikBegqaAXQEKgb/IAAK/wERAQAFDgIPARABEQEP
AQABFRD/AfMB/wHvBP8B8wH+AUEBAAGyAooB2QGsA4oBHwELBf8B9gGZAyMCKQEqB5oCGgOaBCoB9gX/
IAAJ/wHyAREBDgERBQ4BDwIQAQ8BDgHyAfMX/wESAREBkQKsAYoB2QGsAooBDwLpCP8B9gFKASMBKQEq
BpoDGgOaBCoG/yAACf8B6gETAhABDgEPAw4CDwEQAw4Z/wG9AUcBZgKsAbIBrAGKAawBHwEBAR8J/wH2
ASkCKgaaBBoCmgQqBv8gAAn/AewB6gEUAQ8CEwEUAQ8CDgEPARABDgEQAQ4BEQETAfQW/wG4BawCigFl
AgEBQAr/ASkCKgWaAxoBwwEaApoEKgb/IAAH/wH3Ae8BkgHrAg4B6wFtAeoBFQIOAg8EDgEUAfQW/wHD
AYoDrAFlAYoBZQEBAekBHwv/ASkCKgWaAhoCwwEaApoEKgb/IAAH/wEOAkMBAAIOAewBkgHrAW0BEAIO
AQ8CDgEQAQ4B9BX/AfQB8wEaAZoBAAELAekCRwHpAkYBaAv/ASkBKgFLBZoCGgLDARoCmgMqAUsG/yAA
B/8CDgIRAQACDgFtARADDgFDAQ8CDgEPAfQQ/wH0Af8B8AL/AfIBRgSaAXQBkwFLAUQBRgFHAQEM/wFz
ASoBSwOaAUsCmgQaApoDKgGZBv8gAAb/AfACDgEPAREBEAEOAg8BDgIPBA4BEAEOEv8B6wHvAf8B6wEA
AUcBRgJEAZoBcwGaAXQBdQEfARwN/wEbBCoBSwEqAXoBmgQaApoDKgH2Bv8gAAb/AfECDgEPAUMBEQEO
ARABEQMQAQ4CDwIOAe8T/wEAAUMBGwEAAXQBRgEgAW4BegGaAZkBbhD/AfYHKgGaAxoCmgFLAyoH/yAA
B/8CDwEQAkMBEQEQAQ8CEQEQAQ8BEAEPARABDhT/AfcCAAKaAQ4BHgHpAW0BQwEQAfMR/wcqAUsBmgIa
ApoEKgf/IAAH/wEPAhABEQJDAREDQwIRAhABDwFtFf8DAAF0AQ4CAAEfAgAS/wFLByoBegOaBCoBGwf/
IAAH/wFtARACEQIVAUMBFQFDARECQwERAhAX/wEOAQABEQQAAQsBHgFFAfQQ/wEbCCoBmgF0BSoI/yAA
CP8CEQFDAxUBFAMVAkMBEQH0GP8BvAEAARABEQEAAQ4BRxT/DioBwwj/IAAJ/wFDAhUFFAMVAewa/wHt
Af8B9gL/AfQU/wHDDCoBSwn/IAAK/wIVARQDEwIUARUB7Db/AXQKKgFRCv8gAAz/ARIBEwISARMBFDn/
AcMIKgH2C/8gAEz/AfYBwwF5AUsBdAHDAv8B9gv/IAABQgFNAT4HAAE+AwABKAMAAYADAAEgAwABAQEA
AQEGAAECFgAD//8A/wADAAs=
</value>
</data>
<data name="UserName.Location" type="System.Drawing.Point, System.Drawing">
<value>132, 23</value>
</data>
<assembly alias="DevExpress.Utils.v20.1" name="DevExpress.Utils.v20.1, Version=20.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="UserName.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v20.1">
<value>Combo</value>
</data>
<data name="UserName.Properties.Items" xml:space="preserve">
<value>Admin</value>
</data>
<data name="UserName.Properties.Items1" xml:space="preserve">
<value>Admin</value>
</data>
<data name="UserName.Properties.Items2" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="UserName.Properties.Items3" xml:space="preserve">
<value>SuperUser</value>
</data>
<data name="UserName.Properties.Items4" xml:space="preserve">
<value>SuperUser</value>
</data>
<data name="UserName.Properties.Items5" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="UserName.Properties.Items6" xml:space="preserve">
<value>User</value>
</data>
<data name="UserName.Properties.Items7" xml:space="preserve">
<value>User</value>
</data>
<data name="UserName.Properties.Items8" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="UserName.Size" type="System.Drawing.Size, System.Drawing">
<value>196, 34</value>
</data>
<data name="UserName.TabIndex" type="System.Int32, mscorlib">
<value>10</value>
</data>
<data name="&gt;&gt;UserName.Name" xml:space="preserve">
<value>UserName</value>
</data>
<data name="&gt;&gt;UserName.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.ImageComboBoxEdit, DevExpress.XtraEditors.v20.1, Version=20.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;UserName.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;UserName.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="labelControl3.Location" type="System.Drawing.Point, System.Drawing">
<value>70, 33</value>
</data>
<data name="labelControl3.Size" type="System.Drawing.Size, System.Drawing">
<value>52, 13</value>
</data>
<data name="labelControl3.TabIndex" type="System.Int32, mscorlib">
<value>11</value>
</data>
<data name="labelControl3.Text" xml:space="preserve">
<value>User Name</value>
</data>
<data name="&gt;&gt;labelControl3.Name" xml:space="preserve">
<value>labelControl3</value>
</data>
<data name="&gt;&gt;labelControl3.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v20.1, Version=20.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;labelControl3.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;labelControl3.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 13</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>382, 209</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
<value>CenterScreen</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>Đôi mật khẩu</value>
</data>
<data name="&gt;&gt;imageList.Name" xml:space="preserve">
<value>imageList</value>
</data>
<data name="&gt;&gt;imageList.Type" xml:space="preserve">
<value>System.Windows.Forms.ImageList, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>frmChangePass</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>Omega.BasicForms.frmCommon, Omega, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
</root>

View File

@@ -0,0 +1,146 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="labelControl2.Size" type="System.Drawing.Size, System.Drawing">
<value>91, 13</value>
</data>
<data name="labelControl2.Text" xml:space="preserve">
<value>Nhập mật khẩu mới</value>
</data>
<data name="labelControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>85, 13</value>
</data>
<data name="labelControl1.Text" xml:space="preserve">
<value>Nhập lại mật khẩu</value>
</data>
<data name="OK.Text" xml:space="preserve">
<value>Chọn</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="Cancel.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="Cancel.Text" xml:space="preserve">
<value>Hủy</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>Đổi mật khẩu</value>
</data>
</root>

View File

@@ -0,0 +1,481 @@
namespace Omega.Forms
{
partial class frmCreateQuiz
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmCreateQuiz));
this.groupQuizInfo = new System.Windows.Forms.GroupBox();
this.progressPanel = new DevExpress.XtraWaitForm.ProgressPanel();
this.labelControl5 = new DevExpress.XtraEditors.LabelControl();
this.QuizCode = new DevExpress.XtraEditors.TextEdit();
this.labelControl4 = new DevExpress.XtraEditors.LabelControl();
this.QuizTemplate = new DevExpress.XtraEditors.LookUpEdit();
this.tblQuizTemplateEntityBindingSource = new System.Windows.Forms.BindingSource(this.components);
this.labelControl3 = new DevExpress.XtraEditors.LabelControl();
this.QuizTime = new DevExpress.XtraEditors.TextEdit();
this.labelControl2 = new DevExpress.XtraEditors.LabelControl();
this.QuizYear = new DevExpress.XtraEditors.TextEdit();
this.labelControl1 = new DevExpress.XtraEditors.LabelControl();
this.QuizName = new DevExpress.XtraEditors.TextEdit();
this.barManager = new DevExpress.XtraBars.BarManager(this.components);
this.bar1 = new DevExpress.XtraBars.Bar();
this.Create = new DevExpress.XtraBars.BarButtonItem();
this.CloseForm = new DevExpress.XtraBars.BarButtonItem();
this.barSubPrint = new DevExpress.XtraBars.BarSubItem();
this.Print = new DevExpress.XtraBars.BarButtonItem();
this.PrintAnswer = new DevExpress.XtraBars.BarButtonItem();
this.barDockControlTop = new DevExpress.XtraBars.BarDockControl();
this.barDockControlBottom = new DevExpress.XtraBars.BarDockControl();
this.barDockControlLeft = new DevExpress.XtraBars.BarDockControl();
this.barDockControlRight = new DevExpress.XtraBars.BarDockControl();
this.grdQuiz = new DevExpress.XtraGrid.GridControl();
this.tblQuizzesBindingSource = new System.Windows.Forms.BindingSource(this.components);
this.persistentRepository = new DevExpress.XtraEditors.Repository.PersistentRepository(this.components);
this.repoQuizTemplate = new DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit();
this.gridView1 = new DevExpress.XtraGrid.Views.Grid.GridView();
this.colQuizId = new DevExpress.XtraGrid.Columns.GridColumn();
this.colQuizName = new DevExpress.XtraGrid.Columns.GridColumn();
this.colQuizTemplateId = new DevExpress.XtraGrid.Columns.GridColumn();
this.colQuizTime = new DevExpress.XtraGrid.Columns.GridColumn();
this.colQuizYear = new DevExpress.XtraGrid.Columns.GridColumn();
this.colQuizCode = new DevExpress.XtraGrid.Columns.GridColumn();
this.groupQuizInfo.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.QuizCode.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.QuizTemplate.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.tblQuizTemplateEntityBindingSource)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.QuizTime.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.QuizYear.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.QuizName.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.barManager)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.grdQuiz)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.tblQuizzesBindingSource)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.repoQuizTemplate)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.gridView1)).BeginInit();
this.SuspendLayout();
//
// groupQuizInfo
//
this.groupQuizInfo.Controls.Add(this.progressPanel);
this.groupQuizInfo.Controls.Add(this.labelControl5);
this.groupQuizInfo.Controls.Add(this.QuizCode);
this.groupQuizInfo.Controls.Add(this.labelControl4);
this.groupQuizInfo.Controls.Add(this.QuizTemplate);
this.groupQuizInfo.Controls.Add(this.labelControl3);
this.groupQuizInfo.Controls.Add(this.QuizTime);
this.groupQuizInfo.Controls.Add(this.labelControl2);
this.groupQuizInfo.Controls.Add(this.QuizYear);
this.groupQuizInfo.Controls.Add(this.labelControl1);
this.groupQuizInfo.Controls.Add(this.QuizName);
this.groupQuizInfo.FlatStyle = System.Windows.Forms.FlatStyle.System;
this.groupQuizInfo.Location = new System.Drawing.Point(12, 53);
this.groupQuizInfo.Name = "groupQuizInfo";
this.groupQuizInfo.Size = new System.Drawing.Size(689, 189);
this.groupQuizInfo.TabIndex = 0;
this.groupQuizInfo.TabStop = false;
this.groupQuizInfo.Text = "Thông tin đề thi";
//
// progressPanel
//
this.progressPanel.Appearance.BackColor = System.Drawing.Color.Transparent;
this.progressPanel.Appearance.Options.UseBackColor = true;
this.progressPanel.AppearanceCaption.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F);
this.progressPanel.AppearanceCaption.Options.UseFont = true;
this.progressPanel.AppearanceDescription.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F);
this.progressPanel.AppearanceDescription.Options.UseFont = true;
this.progressPanel.Description = "Calculating...";
this.progressPanel.Location = new System.Drawing.Point(238, 20);
this.progressPanel.Name = "progressPanel";
this.progressPanel.Size = new System.Drawing.Size(299, 66);
this.progressPanel.TabIndex = 12;
this.progressPanel.Visible = false;
//
// labelControl5
//
this.labelControl5.Location = new System.Drawing.Point(13, 147);
this.labelControl5.Name = "labelControl5";
this.labelControl5.Size = new System.Drawing.Size(44, 13);
this.labelControl5.TabIndex = 9;
this.labelControl5.Text = "Mã đề thi";
//
// QuizCode
//
this.QuizCode.Location = new System.Drawing.Point(98, 144);
this.QuizCode.Name = "QuizCode";
this.QuizCode.Size = new System.Drawing.Size(109, 20);
this.QuizCode.TabIndex = 8;
//
// labelControl4
//
this.labelControl4.Location = new System.Drawing.Point(13, 113);
this.labelControl4.Name = "labelControl4";
this.labelControl4.Size = new System.Drawing.Size(20, 13);
this.labelControl4.TabIndex = 7;
this.labelControl4.Text = "Mẫu";
//
// QuizTemplate
//
this.QuizTemplate.Location = new System.Drawing.Point(98, 108);
this.QuizTemplate.Name = "QuizTemplate";
this.QuizTemplate.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
this.QuizTemplate.Properties.Columns.AddRange(new DevExpress.XtraEditors.Controls.LookUpColumnInfo[] {
new DevExpress.XtraEditors.Controls.LookUpColumnInfo("QuizTemplateId", "Quiz Template Id", 91, DevExpress.Utils.FormatType.None, "", false, DevExpress.Utils.HorzAlignment.Near, DevExpress.Data.ColumnSortOrder.None, DevExpress.Utils.DefaultBoolean.Default),
new DevExpress.XtraEditors.Controls.LookUpColumnInfo("TemplateQuizName", "Mẫu đề", 108, DevExpress.Utils.FormatType.None, "", true, DevExpress.Utils.HorzAlignment.Near, DevExpress.Data.ColumnSortOrder.None, DevExpress.Utils.DefaultBoolean.Default)});
this.QuizTemplate.Properties.DataSource = this.tblQuizTemplateEntityBindingSource;
this.QuizTemplate.Properties.DisplayMember = "TemplateQuizName";
this.QuizTemplate.Properties.NullText = "";
this.QuizTemplate.Properties.ValueMember = "QuizTemplateId";
this.QuizTemplate.Size = new System.Drawing.Size(531, 20);
this.QuizTemplate.TabIndex = 6;
this.QuizTemplate.EditValueChanged += new System.EventHandler(this.QuizTemplate_EditValueChanged);
//
// tblQuizTemplateEntityBindingSource
//
this.tblQuizTemplateEntityBindingSource.DataSource = typeof(Datalib.EntityClasses.TblQuizTemplateEntity);
//
// labelControl3
//
this.labelControl3.Location = new System.Drawing.Point(13, 85);
this.labelControl3.Name = "labelControl3";
this.labelControl3.Size = new System.Drawing.Size(58, 13);
this.labelControl3.TabIndex = 5;
this.labelControl3.Text = "Thời gian thi";
//
// QuizTime
//
this.QuizTime.Location = new System.Drawing.Point(98, 82);
this.QuizTime.Name = "QuizTime";
this.QuizTime.Size = new System.Drawing.Size(58, 20);
this.QuizTime.TabIndex = 4;
//
// labelControl2
//
this.labelControl2.Location = new System.Drawing.Point(13, 59);
this.labelControl2.Name = "labelControl2";
this.labelControl2.Size = new System.Drawing.Size(36, 13);
this.labelControl2.TabIndex = 3;
this.labelControl2.Text = "Năm thi";
//
// QuizYear
//
this.QuizYear.Location = new System.Drawing.Point(98, 56);
this.QuizYear.Name = "QuizYear";
this.QuizYear.Size = new System.Drawing.Size(58, 20);
this.QuizYear.TabIndex = 2;
//
// labelControl1
//
this.labelControl1.Location = new System.Drawing.Point(13, 33);
this.labelControl1.Name = "labelControl1";
this.labelControl1.Size = new System.Drawing.Size(48, 13);
this.labelControl1.TabIndex = 1;
this.labelControl1.Text = "Tên đề thi";
//
// QuizName
//
this.QuizName.Location = new System.Drawing.Point(98, 30);
this.QuizName.Name = "QuizName";
this.QuizName.Size = new System.Drawing.Size(531, 20);
this.QuizName.TabIndex = 0;
//
// barManager
//
this.barManager.Bars.AddRange(new DevExpress.XtraBars.Bar[] {
this.bar1});
this.barManager.DockControls.Add(this.barDockControlTop);
this.barManager.DockControls.Add(this.barDockControlBottom);
this.barManager.DockControls.Add(this.barDockControlLeft);
this.barManager.DockControls.Add(this.barDockControlRight);
this.barManager.Form = this;
this.barManager.Items.AddRange(new DevExpress.XtraBars.BarItem[] {
this.Create,
this.CloseForm,
this.Print,
this.barSubPrint,
this.PrintAnswer});
this.barManager.MaxItemId = 7;
//
// bar1
//
this.bar1.BarName = "Tools";
this.bar1.DockCol = 0;
this.bar1.DockRow = 0;
this.bar1.DockStyle = DevExpress.XtraBars.BarDockStyle.Top;
this.bar1.LinksPersistInfo.AddRange(new DevExpress.XtraBars.LinkPersistInfo[] {
new DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, this.Create, DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph),
new DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, this.CloseForm, DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph),
new DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, this.barSubPrint, "", true, true, true, 0, null, DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph)});
this.bar1.Text = "Tools";
//
// Create
//
this.Create.Caption = "Tạo đề";
this.Create.Id = 0;
this.Create.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("Create.ImageOptions.Image")));
this.Create.Name = "Create";
this.Create.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.Create_ItemClick);
//
// CloseForm
//
this.CloseForm.Caption = "Đóng";
this.CloseForm.Id = 3;
this.CloseForm.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("CloseForm.ImageOptions.Image")));
this.CloseForm.Name = "CloseForm";
this.CloseForm.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.CloseForm_ItemClick);
//
// barSubPrint
//
this.barSubPrint.Caption = "Print";
this.barSubPrint.Id = 5;
this.barSubPrint.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("barSubPrint.ImageOptions.Image")));
this.barSubPrint.LinksPersistInfo.AddRange(new DevExpress.XtraBars.LinkPersistInfo[] {
new DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, this.Print, DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph),
new DevExpress.XtraBars.LinkPersistInfo(this.PrintAnswer)});
this.barSubPrint.Name = "barSubPrint";
//
// Print
//
this.Print.Caption = "In đề";
this.Print.Id = 4;
this.Print.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("Print.ImageOptions.Image")));
this.Print.Name = "Print";
this.Print.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.Print_ItemClick);
//
// PrintAnswer
//
this.PrintAnswer.Caption = "In đáp án";
this.PrintAnswer.Id = 6;
this.PrintAnswer.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("PrintAnswer.ImageOptions.Image")));
this.PrintAnswer.Name = "PrintAnswer";
this.PrintAnswer.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.PrintAnswer_ItemClick);
//
// barDockControlTop
//
this.barDockControlTop.CausesValidation = false;
this.barDockControlTop.Dock = System.Windows.Forms.DockStyle.Top;
this.barDockControlTop.Location = new System.Drawing.Point(0, 0);
this.barDockControlTop.Manager = this.barManager;
this.barDockControlTop.Size = new System.Drawing.Size(717, 40);
//
// barDockControlBottom
//
this.barDockControlBottom.CausesValidation = false;
this.barDockControlBottom.Dock = System.Windows.Forms.DockStyle.Bottom;
this.barDockControlBottom.Location = new System.Drawing.Point(0, 440);
this.barDockControlBottom.Manager = this.barManager;
this.barDockControlBottom.Size = new System.Drawing.Size(717, 0);
//
// barDockControlLeft
//
this.barDockControlLeft.CausesValidation = false;
this.barDockControlLeft.Dock = System.Windows.Forms.DockStyle.Left;
this.barDockControlLeft.Location = new System.Drawing.Point(0, 40);
this.barDockControlLeft.Manager = this.barManager;
this.barDockControlLeft.Size = new System.Drawing.Size(0, 400);
//
// barDockControlRight
//
this.barDockControlRight.CausesValidation = false;
this.barDockControlRight.Dock = System.Windows.Forms.DockStyle.Right;
this.barDockControlRight.Location = new System.Drawing.Point(717, 40);
this.barDockControlRight.Manager = this.barManager;
this.barDockControlRight.Size = new System.Drawing.Size(0, 400);
//
// grdQuiz
//
this.grdQuiz.DataSource = this.tblQuizzesBindingSource;
this.grdQuiz.ExternalRepository = this.persistentRepository;
this.grdQuiz.Location = new System.Drawing.Point(12, 248);
this.grdQuiz.MainView = this.gridView1;
this.grdQuiz.MenuManager = this.barManager;
this.grdQuiz.Name = "grdQuiz";
this.grdQuiz.Size = new System.Drawing.Size(689, 173);
this.grdQuiz.TabIndex = 5;
this.grdQuiz.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.gridView1});
//
// tblQuizzesBindingSource
//
this.tblQuizzesBindingSource.DataMember = "TblQuizzes";
this.tblQuizzesBindingSource.DataSource = this.tblQuizTemplateEntityBindingSource;
//
// persistentRepository
//
this.persistentRepository.Items.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
this.repoQuizTemplate});
//
// repoQuizTemplate
//
this.repoQuizTemplate.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
this.repoQuizTemplate.Columns.AddRange(new DevExpress.XtraEditors.Controls.LookUpColumnInfo[] {
new DevExpress.XtraEditors.Controls.LookUpColumnInfo("QuizTemplateId", "Quiz Template Id", 91, DevExpress.Utils.FormatType.None, "", false, DevExpress.Utils.HorzAlignment.Near, DevExpress.Data.ColumnSortOrder.None, DevExpress.Utils.DefaultBoolean.Default),
new DevExpress.XtraEditors.Controls.LookUpColumnInfo("TemplateQuizName", "Mẫu đề", 150, DevExpress.Utils.FormatType.None, "", true, DevExpress.Utils.HorzAlignment.Near, DevExpress.Data.ColumnSortOrder.None, DevExpress.Utils.DefaultBoolean.Default)});
this.repoQuizTemplate.DataSource = this.tblQuizTemplateEntityBindingSource;
this.repoQuizTemplate.DisplayMember = "TemplateQuizName";
this.repoQuizTemplate.Name = "repoQuizTemplate";
this.repoQuizTemplate.ValueMember = "QuizTemplateId";
//
// gridView1
//
this.gridView1.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.colQuizId,
this.colQuizName,
this.colQuizTemplateId,
this.colQuizTime,
this.colQuizYear,
this.colQuizCode});
this.gridView1.GridControl = this.grdQuiz;
this.gridView1.Name = "gridView1";
this.gridView1.OptionsView.ShowDetailButtons = false;
this.gridView1.OptionsView.ShowGroupExpandCollapseButtons = false;
this.gridView1.OptionsView.ShowGroupPanel = false;
this.gridView1.OptionsView.ShowViewCaption = true;
this.gridView1.ViewCaption = "Danh sách đề thi";
//
// colQuizId
//
this.colQuizId.FieldName = "QuizId";
this.colQuizId.Name = "colQuizId";
//
// colQuizName
//
this.colQuizName.Caption = "Tên đề thi";
this.colQuizName.FieldName = "QuizName";
this.colQuizName.Name = "colQuizName";
this.colQuizName.Visible = true;
this.colQuizName.VisibleIndex = 1;
//
// colQuizTemplateId
//
this.colQuizTemplateId.Caption = "Mẫu đề thi";
this.colQuizTemplateId.ColumnEdit = this.repoQuizTemplate;
this.colQuizTemplateId.FieldName = "QuizTemplateId";
this.colQuizTemplateId.Name = "colQuizTemplateId";
this.colQuizTemplateId.Visible = true;
this.colQuizTemplateId.VisibleIndex = 2;
//
// colQuizTime
//
this.colQuizTime.Caption = "Thời gian thi";
this.colQuizTime.FieldName = "QuizTime";
this.colQuizTime.Name = "colQuizTime";
this.colQuizTime.Visible = true;
this.colQuizTime.VisibleIndex = 3;
//
// colQuizYear
//
this.colQuizYear.Caption = "Năm thi";
this.colQuizYear.FieldName = "QuizYear";
this.colQuizYear.Name = "colQuizYear";
this.colQuizYear.Visible = true;
this.colQuizYear.VisibleIndex = 4;
//
// colQuizCode
//
this.colQuizCode.Caption = "Mã đề thi";
this.colQuizCode.FieldName = "QuizCode";
this.colQuizCode.Name = "colQuizCode";
this.colQuizCode.Visible = true;
this.colQuizCode.VisibleIndex = 0;
//
// frmCreateQuiz
//
this.Appearance.BackColor = System.Drawing.Color.White;
this.Appearance.Options.UseBackColor = true;
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.ClientSize = new System.Drawing.Size(717, 440);
this.Controls.Add(this.grdQuiz);
this.Controls.Add(this.groupQuizInfo);
this.Controls.Add(this.barDockControlLeft);
this.Controls.Add(this.barDockControlRight);
this.Controls.Add(this.barDockControlBottom);
this.Controls.Add(this.barDockControlTop);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.IconOptions.Icon = ((System.Drawing.Icon)(resources.GetObject("frmCreateQuiz.IconOptions.Icon")));
this.Name = "frmCreateQuiz";
this.Text = "Ra đề thi";
this.Load += new System.EventHandler(this.frmCreateQuiz_Load);
this.groupQuizInfo.ResumeLayout(false);
this.groupQuizInfo.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.QuizCode.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.QuizTemplate.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.tblQuizTemplateEntityBindingSource)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.QuizTime.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.QuizYear.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.QuizName.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.barManager)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.grdQuiz)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.tblQuizzesBindingSource)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.repoQuizTemplate)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.gridView1)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.GroupBox groupQuizInfo;
private DevExpress.XtraEditors.TextEdit QuizName;
private DevExpress.XtraEditors.LabelControl labelControl3;
private DevExpress.XtraEditors.TextEdit QuizTime;
private DevExpress.XtraEditors.LabelControl labelControl2;
private DevExpress.XtraEditors.TextEdit QuizYear;
private DevExpress.XtraEditors.LabelControl labelControl1;
private DevExpress.XtraEditors.LabelControl labelControl4;
private DevExpress.XtraEditors.LookUpEdit QuizTemplate;
private System.Windows.Forms.BindingSource tblQuizTemplateEntityBindingSource;
private DevExpress.XtraBars.BarManager barManager;
private DevExpress.XtraBars.Bar bar1;
private DevExpress.XtraBars.BarButtonItem Create;
private DevExpress.XtraBars.BarButtonItem CloseForm;
private DevExpress.XtraBars.BarButtonItem Print;
private DevExpress.XtraBars.BarDockControl barDockControlTop;
private DevExpress.XtraBars.BarDockControl barDockControlBottom;
private DevExpress.XtraBars.BarDockControl barDockControlLeft;
private DevExpress.XtraBars.BarDockControl barDockControlRight;
private DevExpress.XtraGrid.GridControl grdQuiz;
private System.Windows.Forms.BindingSource tblQuizzesBindingSource;
private DevExpress.XtraGrid.Views.Grid.GridView gridView1;
private DevExpress.XtraGrid.Columns.GridColumn colQuizId;
private DevExpress.XtraGrid.Columns.GridColumn colQuizName;
private DevExpress.XtraGrid.Columns.GridColumn colQuizTemplateId;
private DevExpress.XtraGrid.Columns.GridColumn colQuizTime;
private DevExpress.XtraGrid.Columns.GridColumn colQuizYear;
private DevExpress.XtraEditors.Repository.PersistentRepository persistentRepository;
private DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit repoQuizTemplate;
private DevExpress.XtraWaitForm.ProgressPanel progressPanel;
private DevExpress.XtraEditors.LabelControl labelControl5;
private DevExpress.XtraEditors.TextEdit QuizCode;
private DevExpress.XtraGrid.Columns.GridColumn colQuizCode;
private DevExpress.XtraBars.BarSubItem barSubPrint;
private DevExpress.XtraBars.BarButtonItem PrintAnswer;
}
}

View File

@@ -0,0 +1,206 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Linq;
using Datalib.Linq;
using Datalib.EntityClasses;
using Datalib.FactoryClasses;
using Datalib.HelperClasses;
using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Validation;
using OpenXmlPowerTools;
namespace Omega.Forms
{
public partial class frmCreateQuiz : Omega.BasicForms.frmCommon
{
public List<TblQuizEntity> QuizList = new List<TblQuizEntity>();
public frmCreateQuiz()
{
InitializeComponent();
}
private void frmCreateQuiz_Load(object sender, EventArgs e)
{
LinqMetaData meta = new LinqMetaData(adapter);
var temps = meta.TblQuizTemplate.OrderBy(m => m.TrainingTypeId);
this.QuizTemplate.Properties.DataSource = temps;
LinqMetaData Meta = new LinqMetaData(adapter);
this.repoQuizTemplate.DataSource = Meta.TblQuizTemplate;
}
private void Create_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
// Get Template
string QuizTemplateID = this.QuizTemplate.EditValue.ToString();
string QuizCode = this.QuizCode.Text;
LinqMetaData meta = new LinqMetaData(adapter);
var CurQuizTempate = meta.TblQuizTemplate.Where(m => m.QuizTemplateId == QuizTemplateID).FirstOrDefault();
var CurQuizTemplateDetail = meta.TblQuizTemplateDetail.Where(m => m.QuizTemplateId == QuizTemplateID).ToList<TblQuizTemplateDetailEntity>();
TblQuizEntity CurrQuiz = new TblQuizEntity(Guid.NewGuid().ToString("N"));
CurrQuiz.QuizName = this.QuizName.Text;
CurrQuiz.QuizTime = Convert.ToInt16(this.QuizTime.EditValue);
CurrQuiz.QuizYear = Convert.ToInt16(this.QuizYear.EditValue);
CurrQuiz.QuizTemplateId = QuizTemplateID;
CurrQuiz.QuizCode = QuizCode;
EntityCollection<TblQuizQuestionEntity> QuizQuestions = CurrQuiz.TblQuizQuestions;
List<string> ExclusiveQuestions = new List<string>();
switch(SettingInfo.Exclusive)
{
case "1":
ExclusiveQuestions = (from q in meta.TblQuizQuestion where (q.TrainingTypeId == CurQuizTempate.TrainingTypeId) select q.QuestionId).ToList<string>();
break;
case "2":
ExclusiveQuestions = (from q in meta.TblQuizQuestion where (q.QuizTemplateId == CurQuizTempate.QuizTemplateId) select q.QuestionId).ToList<string>();
break;
case "3":
ExclusiveQuestions = (from q in meta.TblQuizQuestion select q.QuestionId).ToList<string>();
break;
}
foreach (var QuizDetail in CurQuizTemplateDetail)
{
int QuestionNum = (int)QuizDetail.QuestionNum;
string SubjectID = QuizDetail.SubjectId;
string Level = QuizDetail.Level;
string Difficulty = QuizDetail.Difficulty;
string FieldID = QuizDetail.FieldId;
List<Quiz> Questions;
if (QuizDetail.Difficulty == "A")
{
if(QuizDetail.Level=="A")
{
Questions = (from q in meta.TblQuestion
where (q.Exclusive != true && q.SubjectId == SubjectID && q.FieldId == FieldID && !(from o in ExclusiveQuestions select o).Contains(q.QuestionId))
select new Quiz { QuestionId = q.QuestionId, Order = 0 }).ToList();
}
else
{
Questions = (from q in meta.TblQuestion
where (q.Exclusive != true && q.SubjectId == SubjectID && q.FieldId == FieldID && q.Level == Level && !(from o in ExclusiveQuestions select o).Contains(q.QuestionId))
select new Quiz { QuestionId = q.QuestionId, Order = 0 }).ToList();
}
}
else
{
if (QuizDetail.Level == "A")
{
Questions = (from q in meta.TblQuestion
where (q.Exclusive != true && q.SubjectId == SubjectID && q.FieldId == FieldID && q.Difficulty == Difficulty && !(from o in ExclusiveQuestions select o).Contains(q.QuestionId))
select new Quiz { QuestionId = q.QuestionId, Order = 0 }).ToList();
} else
{
Questions = (from q in meta.TblQuestion
where (q.Exclusive != true && q.SubjectId == SubjectID && q.FieldId == FieldID && q.Difficulty == Difficulty && q.Level == Level && !(from o in ExclusiveQuestions select o).Contains(q.QuestionId))
select new Quiz { QuestionId = q.QuestionId, Order = 0 }).ToList();
}
}
if (Questions.Count < QuestionNum + SettingInfo.MinQuestionNum -1)
{
frmWarning frm = new frmWarning();
frm.RestQuestionNum.Text = Questions.Count.ToString();
frm.QuizTemplateDetai = QuizDetail;
frm.LoadData();
frm.ShowDialog();
}
Random rnd = new Random();
foreach (var q in Questions)
{
q.Order = rnd.Next(1, 1000);
}
foreach (var m in Questions.OrderBy(m => m.Order).Take(QuestionNum))
{
TblQuizQuestionEntity QuizQuestion = QuizQuestions.AddNew();
QuizQuestion.UniqueId = Guid.NewGuid().ToString("N");
QuizQuestion.QuestionId = m.QuestionId;
QuizQuestion.QuizTemplateId = QuizTemplateID;
QuizQuestion.TrainingTypeId = CurQuizTempate.TrainingTypeId;
}
}
adapter.SaveEntity(CurrQuiz, true, true);
QuizList.Add(CurrQuiz);
grdQuiz.DataSource = null;
grdQuiz.DataSource = QuizList;
}
private void Print_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
this.progressPanel.Visible = true;
List<Source> sources = new List<Source>();
LinqMetaData meta = new LinqMetaData(adapter);
this.progressPanel.Visible = false;
if (QuizList.Count > 0)
{
TblQuizEntity CurrQuiz = (TblQuizEntity)QuizList[this.BindingContext[QuizList].Position];
Utilities.PrintQuiz(CurrQuiz);
}
this.progressPanel.Visible = false;
}
private void QuizTemplate_EditValueChanged(object sender, EventArgs e)
{
LinqMetaData meta = new LinqMetaData(adapter);
string QuizTemplateId = this.QuizTemplate.EditValue.ToString();
string QuizTemplateCode = meta.TblQuizTemplate.Where(m => m.QuizTemplateId == QuizTemplateId).FirstOrDefault().QuizTemplateCode;
this.QuizCode.Text = QuizTemplateCode + "-" + this.QuizYear.Text;
}
private void CloseForm_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
this.Close();
}
private void PrintAnswer_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
this.progressPanel.Visible = true;
List<Source> sources = new List<Source>();
LinqMetaData meta = new LinqMetaData(adapter);
this.progressPanel.Visible = false;
if (QuizList.Count > 0)
{
TblQuizEntity CurrQuiz = (TblQuizEntity)QuizList[this.BindingContext[QuizList].Position];
Utilities.PrintQuizAnswer(CurrQuiz);
}
this.progressPanel.Visible = false;
}
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,511 @@
namespace Omega.Forms
{
partial class frmDirectories
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmDirectories));
this.Directories = new DevExpress.XtraTab.XtraTabControl();
this.Subjects = new DevExpress.XtraTab.XtraTabPage();
this.grdSubjects = new DevExpress.XtraGrid.GridControl();
this.tblSubjectEntityBindingSource = new System.Windows.Forms.BindingSource(this.components);
this.SubjectView = new DevExpress.XtraGrid.Views.Grid.GridView();
this.colSubjectDes = new DevExpress.XtraGrid.Columns.GridColumn();
this.btnSubjectDesView = new DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit();
this.colSubjectId1 = new DevExpress.XtraGrid.Columns.GridColumn();
this.colSubjectName = new DevExpress.XtraGrid.Columns.GridColumn();
this.TrainingType = new DevExpress.XtraTab.XtraTabPage();
this.grdTrainingType = new DevExpress.XtraGrid.GridControl();
this.tblTrainingTypeEntityBindingSource = new System.Windows.Forms.BindingSource(this.components);
this.TrainingTypeView = new DevExpress.XtraGrid.Views.Grid.GridView();
this.colTrainingTypeId = new DevExpress.XtraGrid.Columns.GridColumn();
this.colTrainingTypeName = new DevExpress.XtraGrid.Columns.GridColumn();
this.Field = new DevExpress.XtraTab.XtraTabPage();
this.gridField = new DevExpress.XtraGrid.GridControl();
this.tblFieldEntityBindingSource = new System.Windows.Forms.BindingSource(this.components);
this.persistentRepository = new DevExpress.XtraEditors.Repository.PersistentRepository(this.components);
this.repoSubject = new DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit();
this.FieldDesView = new DevExpress.XtraGrid.Views.Grid.GridView();
this.colPrefix = new DevExpress.XtraGrid.Columns.GridColumn();
this.colDescription = new DevExpress.XtraGrid.Columns.GridColumn();
this.tbnFieldDesView = new DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit();
this.colFieldId = new DevExpress.XtraGrid.Columns.GridColumn();
this.colFieldName = new DevExpress.XtraGrid.Columns.GridColumn();
this.colSubjectId = new DevExpress.XtraGrid.Columns.GridColumn();
this.colUniqueId = new DevExpress.XtraGrid.Columns.GridColumn();
this.barManager = new DevExpress.XtraBars.BarManager(this.components);
this.bar2 = new DevExpress.XtraBars.Bar();
this.Save = new DevExpress.XtraBars.BarButtonItem();
this.barDelete = new DevExpress.XtraBars.BarButtonItem();
this.barClose = new DevExpress.XtraBars.BarButtonItem();
this.barDockControlTop = new DevExpress.XtraBars.BarDockControl();
this.barDockControlBottom = new DevExpress.XtraBars.BarDockControl();
this.barDockControlLeft = new DevExpress.XtraBars.BarDockControl();
this.barDockControlRight = new DevExpress.XtraBars.BarDockControl();
((System.ComponentModel.ISupportInitialize)(this.Directories)).BeginInit();
this.Directories.SuspendLayout();
this.Subjects.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.grdSubjects)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.tblSubjectEntityBindingSource)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.SubjectView)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.btnSubjectDesView)).BeginInit();
this.TrainingType.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.grdTrainingType)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.tblTrainingTypeEntityBindingSource)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.TrainingTypeView)).BeginInit();
this.Field.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.gridField)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.tblFieldEntityBindingSource)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.repoSubject)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.FieldDesView)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.tbnFieldDesView)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.barManager)).BeginInit();
this.SuspendLayout();
//
// Directories
//
this.Directories.Dock = System.Windows.Forms.DockStyle.Fill;
this.Directories.HeaderLocation = DevExpress.XtraTab.TabHeaderLocation.Bottom;
this.Directories.Location = new System.Drawing.Point(0, 24);
this.Directories.Name = "Directories";
this.Directories.SelectedTabPage = this.Subjects;
this.Directories.Size = new System.Drawing.Size(736, 424);
this.Directories.TabIndex = 0;
this.Directories.TabPages.AddRange(new DevExpress.XtraTab.XtraTabPage[] {
this.Subjects,
this.TrainingType,
this.Field});
//
// Subjects
//
this.Subjects.Controls.Add(this.grdSubjects);
this.Subjects.Image = ((System.Drawing.Image)(resources.GetObject("Subjects.Image")));
this.Subjects.Name = "Subjects";
this.Subjects.Size = new System.Drawing.Size(730, 393);
this.Subjects.Text = "Môn học";
//
// grdSubjects
//
this.grdSubjects.DataSource = this.tblSubjectEntityBindingSource;
this.grdSubjects.Dock = System.Windows.Forms.DockStyle.Fill;
this.grdSubjects.Location = new System.Drawing.Point(0, 0);
this.grdSubjects.MainView = this.SubjectView;
this.grdSubjects.Name = "grdSubjects";
this.grdSubjects.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
this.btnSubjectDesView});
this.grdSubjects.Size = new System.Drawing.Size(730, 393);
this.grdSubjects.TabIndex = 1;
this.grdSubjects.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.SubjectView});
//
// tblSubjectEntityBindingSource
//
this.tblSubjectEntityBindingSource.DataSource = typeof(Datalib.EntityClasses.TblSubjectEntity);
//
// SubjectView
//
this.SubjectView.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.colSubjectDes,
this.colSubjectId1,
this.colSubjectName});
this.SubjectView.GridControl = this.grdSubjects;
this.SubjectView.Name = "SubjectView";
this.SubjectView.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.True;
this.SubjectView.OptionsView.NewItemRowPosition = DevExpress.XtraGrid.Views.Grid.NewItemRowPosition.Bottom;
this.SubjectView.OptionsView.ShowGroupPanel = false;
//
// colSubjectDes
//
this.colSubjectDes.Caption = "Mô tả";
this.colSubjectDes.ColumnEdit = this.btnSubjectDesView;
this.colSubjectDes.FieldName = "SubjectDes";
this.colSubjectDes.Name = "colSubjectDes";
this.colSubjectDes.Visible = true;
this.colSubjectDes.VisibleIndex = 2;
this.colSubjectDes.Width = 569;
//
// btnSubjectDesView
//
this.btnSubjectDesView.AutoHeight = false;
this.btnSubjectDesView.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton()});
this.btnSubjectDesView.Name = "btnSubjectDesView";
this.btnSubjectDesView.ButtonClick += new DevExpress.XtraEditors.Controls.ButtonPressedEventHandler(this.btnSubjectDesView_ButtonClick);
//
// colSubjectId1
//
this.colSubjectId1.Caption = "Mã môn học";
this.colSubjectId1.FieldName = "SubjectId";
this.colSubjectId1.Name = "colSubjectId1";
this.colSubjectId1.Visible = true;
this.colSubjectId1.VisibleIndex = 0;
this.colSubjectId1.Width = 68;
//
// colSubjectName
//
this.colSubjectName.Caption = "Tên môn học";
this.colSubjectName.FieldName = "SubjectName";
this.colSubjectName.Name = "colSubjectName";
this.colSubjectName.Visible = true;
this.colSubjectName.VisibleIndex = 1;
this.colSubjectName.Width = 256;
//
// TrainingType
//
this.TrainingType.Controls.Add(this.grdTrainingType);
this.TrainingType.Image = ((System.Drawing.Image)(resources.GetObject("TrainingType.Image")));
this.TrainingType.Name = "TrainingType";
this.TrainingType.Size = new System.Drawing.Size(730, 393);
this.TrainingType.Text = "Loại hình đào tạo";
//
// grdTrainingType
//
this.grdTrainingType.DataSource = this.tblTrainingTypeEntityBindingSource;
this.grdTrainingType.Dock = System.Windows.Forms.DockStyle.Fill;
this.grdTrainingType.Location = new System.Drawing.Point(0, 0);
this.grdTrainingType.MainView = this.TrainingTypeView;
this.grdTrainingType.Name = "grdTrainingType";
this.grdTrainingType.Size = new System.Drawing.Size(730, 393);
this.grdTrainingType.TabIndex = 0;
this.grdTrainingType.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.TrainingTypeView});
//
// tblTrainingTypeEntityBindingSource
//
this.tblTrainingTypeEntityBindingSource.DataSource = typeof(Datalib.EntityClasses.TblTrainingTypeEntity);
//
// TrainingTypeView
//
this.TrainingTypeView.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.colTrainingTypeId,
this.colTrainingTypeName});
this.TrainingTypeView.GridControl = this.grdTrainingType;
this.TrainingTypeView.Name = "TrainingTypeView";
this.TrainingTypeView.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.True;
this.TrainingTypeView.OptionsView.NewItemRowPosition = DevExpress.XtraGrid.Views.Grid.NewItemRowPosition.Bottom;
this.TrainingTypeView.OptionsView.ShowGroupPanel = false;
//
// colTrainingTypeId
//
this.colTrainingTypeId.Caption = "Mã loại hình đào tạo";
this.colTrainingTypeId.FieldName = "TrainingTypeId";
this.colTrainingTypeId.Name = "colTrainingTypeId";
this.colTrainingTypeId.Visible = true;
this.colTrainingTypeId.VisibleIndex = 0;
//
// colTrainingTypeName
//
this.colTrainingTypeName.Caption = "Tên loại hình đào tạo";
this.colTrainingTypeName.FieldName = "TrainingTypeName";
this.colTrainingTypeName.Name = "colTrainingTypeName";
this.colTrainingTypeName.Visible = true;
this.colTrainingTypeName.VisibleIndex = 1;
//
// Field
//
this.Field.Controls.Add(this.gridField);
this.Field.Image = ((System.Drawing.Image)(resources.GetObject("Field.Image")));
this.Field.Name = "Field";
this.Field.Size = new System.Drawing.Size(730, 393);
this.Field.Text = "Lĩnh vực kiến thức";
//
// gridField
//
this.gridField.DataSource = this.tblFieldEntityBindingSource;
this.gridField.Dock = System.Windows.Forms.DockStyle.Fill;
this.gridField.ExternalRepository = this.persistentRepository;
this.gridField.Location = new System.Drawing.Point(0, 0);
this.gridField.MainView = this.FieldDesView;
this.gridField.Name = "gridField";
this.gridField.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
this.tbnFieldDesView});
this.gridField.Size = new System.Drawing.Size(730, 393);
this.gridField.TabIndex = 1;
this.gridField.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.FieldDesView});
//
// tblFieldEntityBindingSource
//
this.tblFieldEntityBindingSource.DataSource = typeof(Datalib.EntityClasses.TblFieldEntity);
//
// persistentRepository
//
this.persistentRepository.Items.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
this.repoSubject});
//
// repoSubject
//
this.repoSubject.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
this.repoSubject.Columns.AddRange(new DevExpress.XtraEditors.Controls.LookUpColumnInfo[] {
new DevExpress.XtraEditors.Controls.LookUpColumnInfo("SubjectId", "Subject Id", 59, DevExpress.Utils.FormatType.None, "", false, DevExpress.Utils.HorzAlignment.Near),
new DevExpress.XtraEditors.Controls.LookUpColumnInfo("SubjectName", "Tên môn học", 76, DevExpress.Utils.FormatType.None, "", true, DevExpress.Utils.HorzAlignment.Near)});
this.repoSubject.DataSource = this.tblSubjectEntityBindingSource;
this.repoSubject.DisplayMember = "SubjectName";
this.repoSubject.Name = "repoSubject";
this.repoSubject.ValueMember = "SubjectId";
//
// FieldDesView
//
this.FieldDesView.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.colPrefix,
this.colDescription,
this.colFieldId,
this.colFieldName,
this.colSubjectId,
this.colUniqueId});
this.FieldDesView.GridControl = this.gridField;
this.FieldDesView.Name = "FieldDesView";
this.FieldDesView.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.True;
this.FieldDesView.OptionsView.NewItemRowPosition = DevExpress.XtraGrid.Views.Grid.NewItemRowPosition.Bottom;
this.FieldDesView.OptionsView.ShowGroupPanel = false;
//
// colPrefix
//
this.colPrefix.Caption = "Prefix";
this.colPrefix.FieldName = "Prefix";
this.colPrefix.Name = "colPrefix";
this.colPrefix.Visible = true;
this.colPrefix.VisibleIndex = 4;
this.colPrefix.Width = 229;
//
// colDescription
//
this.colDescription.Caption = "Mô tả";
this.colDescription.ColumnEdit = this.tbnFieldDesView;
this.colDescription.FieldName = "Description";
this.colDescription.Name = "colDescription";
this.colDescription.Visible = true;
this.colDescription.VisibleIndex = 3;
this.colDescription.Width = 323;
//
// tbnFieldDesView
//
this.tbnFieldDesView.AutoHeight = false;
this.tbnFieldDesView.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton()});
this.tbnFieldDesView.Name = "tbnFieldDesView";
this.tbnFieldDesView.ButtonClick += new DevExpress.XtraEditors.Controls.ButtonPressedEventHandler(this.tbnFieldDesView_ButtonClick);
//
// colFieldId
//
this.colFieldId.Caption = "Lĩnh vực kiến thức";
this.colFieldId.FieldName = "FieldId";
this.colFieldId.Name = "colFieldId";
this.colFieldId.Visible = true;
this.colFieldId.VisibleIndex = 1;
this.colFieldId.Width = 210;
//
// colFieldName
//
this.colFieldName.Caption = "Tên lĩnh vực";
this.colFieldName.FieldName = "FieldName";
this.colFieldName.Name = "colFieldName";
this.colFieldName.Visible = true;
this.colFieldName.VisibleIndex = 2;
this.colFieldName.Width = 147;
//
// colSubjectId
//
this.colSubjectId.Caption = "Môn";
this.colSubjectId.ColumnEdit = this.repoSubject;
this.colSubjectId.FieldName = "SubjectId";
this.colSubjectId.Name = "colSubjectId";
this.colSubjectId.Visible = true;
this.colSubjectId.VisibleIndex = 0;
this.colSubjectId.Width = 169;
//
// colUniqueId
//
this.colUniqueId.Caption = "UniqueKey";
this.colUniqueId.FieldName = "UniqueId";
this.colUniqueId.Name = "colUniqueId";
this.colUniqueId.Width = 118;
//
// barManager
//
this.barManager.Bars.AddRange(new DevExpress.XtraBars.Bar[] {
this.bar2});
this.barManager.DockControls.Add(this.barDockControlTop);
this.barManager.DockControls.Add(this.barDockControlBottom);
this.barManager.DockControls.Add(this.barDockControlLeft);
this.barManager.DockControls.Add(this.barDockControlRight);
this.barManager.Form = this;
this.barManager.Items.AddRange(new DevExpress.XtraBars.BarItem[] {
this.Save,
this.barDelete,
this.barClose});
this.barManager.MainMenu = this.bar2;
this.barManager.MaxItemId = 3;
//
// bar2
//
this.bar2.BarName = "Main menu";
this.bar2.DockCol = 0;
this.bar2.DockRow = 0;
this.bar2.DockStyle = DevExpress.XtraBars.BarDockStyle.Top;
this.bar2.LinksPersistInfo.AddRange(new DevExpress.XtraBars.LinkPersistInfo[] {
new DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, this.Save, DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph),
new DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, this.barDelete, DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph),
new DevExpress.XtraBars.LinkPersistInfo(this.barClose)});
this.bar2.OptionsBar.MultiLine = true;
this.bar2.OptionsBar.UseWholeRow = true;
this.bar2.Text = "Main menu";
//
// Save
//
this.Save.Caption = "Save";
this.Save.Glyph = ((System.Drawing.Image)(resources.GetObject("Save.Glyph")));
this.Save.Id = 0;
this.Save.LargeGlyph = ((System.Drawing.Image)(resources.GetObject("Save.LargeGlyph")));
this.Save.Name = "Save";
this.Save.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.Save_ItemClick);
//
// barDelete
//
this.barDelete.Caption = "Delete";
this.barDelete.Glyph = ((System.Drawing.Image)(resources.GetObject("barDelete.Glyph")));
this.barDelete.Id = 1;
this.barDelete.LargeGlyph = ((System.Drawing.Image)(resources.GetObject("barDelete.LargeGlyph")));
this.barDelete.Name = "barDelete";
this.barDelete.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.barDelete_ItemClick);
//
// barClose
//
this.barClose.Caption = "Close";
this.barClose.Glyph = ((System.Drawing.Image)(resources.GetObject("barClose.Glyph")));
this.barClose.Id = 2;
this.barClose.LargeGlyph = ((System.Drawing.Image)(resources.GetObject("barClose.LargeGlyph")));
this.barClose.Name = "barClose";
//
// barDockControlTop
//
this.barDockControlTop.CausesValidation = false;
this.barDockControlTop.Dock = System.Windows.Forms.DockStyle.Top;
this.barDockControlTop.Location = new System.Drawing.Point(0, 0);
this.barDockControlTop.Size = new System.Drawing.Size(736, 24);
//
// barDockControlBottom
//
this.barDockControlBottom.CausesValidation = false;
this.barDockControlBottom.Dock = System.Windows.Forms.DockStyle.Bottom;
this.barDockControlBottom.Location = new System.Drawing.Point(0, 448);
this.barDockControlBottom.Size = new System.Drawing.Size(736, 0);
//
// barDockControlLeft
//
this.barDockControlLeft.CausesValidation = false;
this.barDockControlLeft.Dock = System.Windows.Forms.DockStyle.Left;
this.barDockControlLeft.Location = new System.Drawing.Point(0, 24);
this.barDockControlLeft.Size = new System.Drawing.Size(0, 424);
//
// barDockControlRight
//
this.barDockControlRight.CausesValidation = false;
this.barDockControlRight.Dock = System.Windows.Forms.DockStyle.Right;
this.barDockControlRight.Location = new System.Drawing.Point(736, 24);
this.barDockControlRight.Size = new System.Drawing.Size(0, 424);
//
// frmDirectories
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.ClientSize = new System.Drawing.Size(736, 448);
this.Controls.Add(this.Directories);
this.Controls.Add(this.barDockControlLeft);
this.Controls.Add(this.barDockControlRight);
this.Controls.Add(this.barDockControlBottom);
this.Controls.Add(this.barDockControlTop);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.Name = "frmDirectories";
this.Text = "Danh mục";
this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
this.Load += new System.EventHandler(this.frmDirectories_Load);
((System.ComponentModel.ISupportInitialize)(this.Directories)).EndInit();
this.Directories.ResumeLayout(false);
this.Subjects.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.grdSubjects)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.tblSubjectEntityBindingSource)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.SubjectView)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.btnSubjectDesView)).EndInit();
this.TrainingType.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.grdTrainingType)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.tblTrainingTypeEntityBindingSource)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.TrainingTypeView)).EndInit();
this.Field.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.gridField)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.tblFieldEntityBindingSource)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.repoSubject)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.FieldDesView)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.tbnFieldDesView)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.barManager)).EndInit();
this.ResumeLayout(false);
}
#endregion
private DevExpress.XtraTab.XtraTabControl Directories;
private DevExpress.XtraTab.XtraTabPage Subjects;
private System.Windows.Forms.BindingSource tblSubjectEntityBindingSource;
private DevExpress.XtraTab.XtraTabPage TrainingType;
private DevExpress.XtraTab.XtraTabPage Field;
private DevExpress.XtraGrid.GridControl grdTrainingType;
private DevExpress.XtraGrid.Views.Grid.GridView TrainingTypeView;
private System.Windows.Forms.BindingSource tblTrainingTypeEntityBindingSource;
private DevExpress.XtraGrid.Columns.GridColumn colTrainingTypeId;
private DevExpress.XtraGrid.Columns.GridColumn colTrainingTypeName;
private DevExpress.XtraBars.BarManager barManager;
private DevExpress.XtraBars.Bar bar2;
private DevExpress.XtraBars.BarButtonItem Save;
private DevExpress.XtraBars.BarDockControl barDockControlTop;
private DevExpress.XtraBars.BarDockControl barDockControlBottom;
private DevExpress.XtraBars.BarDockControl barDockControlLeft;
private DevExpress.XtraBars.BarDockControl barDockControlRight;
private DevExpress.XtraGrid.GridControl gridField;
private System.Windows.Forms.BindingSource tblFieldEntityBindingSource;
private DevExpress.XtraGrid.Views.Grid.GridView FieldDesView;
private DevExpress.XtraGrid.Columns.GridColumn colDescription;
private DevExpress.XtraGrid.Columns.GridColumn colFieldId;
private DevExpress.XtraGrid.Columns.GridColumn colFieldName;
private DevExpress.XtraGrid.Columns.GridColumn colSubjectId;
private DevExpress.XtraGrid.Columns.GridColumn colUniqueId;
private DevExpress.XtraBars.BarButtonItem barDelete;
private DevExpress.XtraBars.BarButtonItem barClose;
private DevExpress.XtraEditors.Repository.PersistentRepository persistentRepository;
private DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit repoSubject;
private DevExpress.XtraGrid.GridControl grdSubjects;
private DevExpress.XtraGrid.Views.Grid.GridView SubjectView;
private DevExpress.XtraGrid.Columns.GridColumn colSubjectDes;
private DevExpress.XtraGrid.Columns.GridColumn colSubjectId1;
private DevExpress.XtraGrid.Columns.GridColumn colSubjectName;
private DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit btnSubjectDesView;
private DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit tbnFieldDesView;
private DevExpress.XtraGrid.Columns.GridColumn colPrefix;
}
}

View File

@@ -0,0 +1,111 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Linq;
using Datalib.Linq;
using Datalib.DatabaseSpecific;
using Datalib.EntityClasses;
using Datalib.HelperClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;
namespace Omega.Forms
{
public partial class frmDirectories : Omega.BasicForms.frmCommon
{
public EntityCollection<TblSubjectEntity> SubjectList { get; set; }
public EntityCollection<TblTrainingTypeEntity> TrainingTypes { get; set; }
public EntityCollection<TblFieldEntity> Fields { get; set; }
public CurrencyManager FieldsMan;
public frmDirectories()
{
InitializeComponent();
}
public override void LoadData()
{
SubjectList = new EntityCollection<TblSubjectEntity>();
TrainingTypes = new EntityCollection<TblTrainingTypeEntity>();
Fields = new EntityCollection<TblFieldEntity>();
adapter.FetchEntityCollection(SubjectList, null);
adapter.FetchEntityCollection(TrainingTypes, null);
adapter.FetchEntityCollection(Fields, null);
this.grdTrainingType.DataSource = TrainingTypes;
this.gridField.DataSource = Fields;
this.repoSubject.DataSource = SubjectList;
this.grdSubjects.DataSource = SubjectList;
FieldsMan = (CurrencyManager)this.BindingContext[Fields];
FieldsMan.PositionChanged += FieldsMan_PositionChanged;
}
void FieldsMan_PositionChanged(object sender, EventArgs e)
{
if (Fields[FieldsMan.Position].IsNew)
{
Fields[FieldsMan.Position].UniqueId = Guid.NewGuid().ToString("N");
}
}
private void frmDirectories_Load(object sender, EventArgs e)
{
}
private void Save_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
adapter.SaveEntityCollection(this.TrainingTypes, true, true);
adapter.SaveEntityCollection(this.SubjectList, true, true);
adapter.SaveEntityCollection(this.Fields, true, true);
}
private void btnSubjectDesView_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
{
frmViewOpenXMLContent frm = new frmViewOpenXMLContent();
frm.View = SubjectView;
frm.Column = colSubjectDes;
frm.LoadData();
frm.Show();
}
private void tbnFieldDesView_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
{
frmViewOpenXMLContent frm = new frmViewOpenXMLContent();
frm.View = FieldDesView;
frm.Column = colDescription;
frm.LoadData();
frm.Show();
}
private void barDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
if (MessageBox.Show("Bạn có muốn xóa bản ghi này?", "Chương trình quản lý đề thi", MessageBoxButtons.OKCancel) == DialogResult.Cancel) return;
int index = Directories.SelectedTabPageIndex;
switch(index)
{
case 0:
TblSubjectEntity sub = (TblSubjectEntity)SubjectList[this.BindingContext[SubjectList].Position];
adapter.DeleteEntity(sub);
SubjectList.Remove(sub);
break;
case 1:
TblTrainingTypeEntity train = (TblTrainingTypeEntity)this.TrainingTypes[this.BindingContext[TrainingTypes].Position];
adapter.DeleteEntity(train);
TrainingTypes.Remove(train);
break;
case 2:
TblFieldEntity field = (TblFieldEntity)this.Fields[this.BindingContext[Fields].Position];
adapter.DeleteEntity(field);
Fields.Remove(field);
break;
}
}
}
}

View File

@@ -0,0 +1,407 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="tblSubjectEntityBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="Subjects.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAsdEVYdFRpdGxlAERvY3VtZW50O01hcDtTY2hlbWU7RGlhZ3JhbTtIaWVyYXI7TmV0Tg8qRAAA
AfNJREFUOE+Vkt1LU3Ecxo9utaWpG/hK/iEWtItgKRFLxVohbUoYKwqHbxet0U7IxDGCgsoaRNQupItS
EHy52qppGawXMOhllldhglQY9CI+fR89yPndnQ58OL/nu+f3OefsHA3ANufTHzU5igSbsEPYaeAwcpG5
T5QQuvNOOpo9+rCQjY0tYZPxLSIPPjylyNwnSugYeUuBc2C0gM8/N/DJYHFtAwOji9LWysx9ogT/1TcU
lAZvLuD16jpml/8i93UdmS9/ELy+QIHb3CdKOJLIU1DuG87j0fs1pF7+wO1X33FLzr5EnoJKc58owas/
p8Dljc1j5MUq4o9XEM+uYEjw6vMUVJv7RAmei3MU7N7XO53zXJiDZHgiOeyPzGJveOIZ5eY+UUJD/xMK
+ArLhZpDx/rSTW09aVnXCW7B3nxSV/Zol6frt2k/k8SJUBL+0wn4u4Zx9NQQ2jrjaO0YREtQh2yGr/0S
2NWn9mixyXpxbn04xYKNm4z1Jq0BPdUciKXMs8PHo+zwLpm5V7OF79VlwvdrcO5uLUKp2qzMHBZndgoc
XTeqsfT7Ggq/kghcqeIVKizOnBSU+Acrkf8WxsxyI1qibv5QZXFWSoGzsduVaep14WBPBQ6cLeOtuS3O
dlHAP6NEcBlwzWezMitW3un/A+0fG5Xnr8dbSyMAAAAASUVORK5CYII=
</value>
</data>
<metadata name="tblTrainingTypeEntityBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>233, 17</value>
</metadata>
<data name="TrainingType.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAYdEVYdFRpdGxlAFRlYW07UGVvcGxlO0dyb3VwO1w56BYAAANdSURBVDhPfZJ7TJNXAMW/KvHZ
slVb0/nAduuCbgoIU4m2Svu1rNVFHnU8nJ2ZFhpiFYSBm7a121gGipRJwZrAKhU0vqjtqtsyCitmI24S
Bw7GhjPVhGh9xCHyGKs7u19NjImGm5x/7jnnl5ubQ1ksFiopKYlSS9WUQqFgyeVylkwmY9E0zUpISJjQ
Cx8GIJVKJ9Vliz84tTW694wuetSpfa3PmiYqIuHJE3lPAQq5YmqtRjjcXCD5r7MqE+37aJSrX0GObPHc
iTymGwbQSTTnC/X88Q6nCe5PNPDuz0OjeWvoRiCQHwwG8zwVBaGeFie+Ls2E/f0YlEi4/6rWrp4TfkGn
SUwplUp25aaVl3q9BzHa58JlRzF8Jnrkx32rB33F8aHT+ZKxiw2fYrjPDX9ZOkpkwnbyJ9ynAJVKNc2a
t6Gg7Us9hq440bw9Hl1fGeCv2IyrTSVo/VyD0rdFeHD5KE7vWIUd9Bs7CWBGGEAOi8/nT1EnLn2zXrd8
5HzVRzj8rhhuYwpcxjSUpS6BXRuPj9dGwVNZjEqNeEQSuzhGIBBMZboMYPrJ3KhtviJx740LRQheacSR
3DU4Z9mMkds/I/iTDTXalTikT8bALw243qyHS7fg90NpPD3pcqiWXcLWnmol7vs+xJA3G0NtRly78Bnc
pgwMB3y4234Ah7VvoctlxuD3hRg8m4pbJ7NwcU8s6tN5fuqHwoWPg+e24JZTjXtOGn8fVyHg3otju5LR
2WiC/0AWrJti0e8xhr07dVIEbIm4XiOFM332Y+rElrk217Z5XS69+I+20pRHl2oMaLXm/HMmPy7kMKyC
XbcMDbmLQr5K3VhHzXZ8Z14/6siK6q9dz71aJo+0h/+AKJKIW6jkxX2zc+GJDmP02F1PBu55M3C7fgUG
bDHw6OaP21N4p7KWzkwkWT7Ry0QzwkMKL4qiIvyFwp6BpnUYb9Ui1LIRY8eWYfTI63hkE+Fh9avoNotg
X8f9k2Sn1yojn/SeAUxpMURhwCHHndo4BCuEGKpagMH9Atw08/DXbi5+NUSCFEGy7Gqa8xwg4vh7AnNT
9hxvYya/26GZ3X80dRbq3uGiOvmla1Y557fyNexvSyXscpKd9iIAM4oIImYgzMpmEnGeEZuIuWf8SU8A
Fup/yVbNvieAbkcAAAAASUVORK5CYII=
</value>
</data>
<metadata name="tblFieldEntityBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 56</value>
</metadata>
<metadata name="persistentRepository.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>508, 54</value>
</metadata>
<data name="Field.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAhdEVYdFRpdGxlAEZpbmQ7Q3VzdG9tZXI7RmluZEN1c3RvbWVyO2BIPkAAAANQSURBVDhPdZIL
MFRhGIZPEpMmukxKpZqhRjHdMF23FJnuMujGki4Sh9hYbe1mybptlx0kU812WRQNNqrVRsNWCpGNQkma
lZamkrRJNW//WZmpmXpnnjnnfOd/35nv+z/qDw0hGBKMCMMIBgRGTH2QvwSAonjHbzDvBj7ByVachHxF
ZFJhf2hc7q2NPgdtQo9cmHZEoizipyi/8U7cLKL5l6aQs0M4CXLGMxDASdR/GNOxuRX3Hr1EU0sHpDkq
BAtzvvFTivsq1W14/qoTpzNLECbKV5GzQ+noq4xnIIDIwNNftOJoajG07z5DVdmMpNQc7I6SgSu+Ds3b
bjS3duH85VLQgmyww08tIh59O4MBxt770zPzFHV4pfkARflT0NxULHOPxqY9KWht/4iOzk+oVrdAXlyF
s9llSsZDGJjRjDnOljsiZX0NL7SobexArqIGvsFiLFp7COv8xNBoe9D0QImKk2yohCtREmkP2U7bWqGr
5XZiH0pt8BNfkhVU4UPPV3z/8RPP27pwKE4KB9cIuGwTkYBuFB5gQS2lUX7MB/VZXNwReSDGxfIrCTCm
3Hal9bVrPyFL/gQedC4u32yAsqwGs51CwHIXout9DzK2zsQ1vhsK+O5I3GSHDPZ8cJdY9JKAEdRqb8n3
Xl0fvDn5CCh4C9/oQjLMbtivCoNX8Bn0ftEhyX895EIf6LRV6KxIwyn2AuyxN2eubzi13DOuVd2ogTS/
Flt4BZAW1eFuZSNsFvq+XsNOftGm6UJxWS3kgi340laKdyox0tkOmGBq5Kifgd1Sv5AwoQyl9xvw+s17
KO48xq5wCSymO/EcnfcFRYkyUaNuRnZcIGoyBSgXb0XUOtt2Yp4c4zSOPCjKzHqeJ8eWFdg0i7UP1g7b
mydYL48k9bEEk5AoyeHopPSOiHgvxIcthnCvAzbT00vmO4+1Iv+ZldffpwnBnDCJMJ4wgsDUDQNP2Am4
Zx11526zIa8OR5rCDfyLi8msrHVrgyxi9dv0P4iMgySz+vOqaVx5GICM0g04nDMXoRk24J1fANe94/r/
aRyEyGibYFqWF29qvXvE5JaNnIlYQ5tjhf+Ylyzv0c8cPUzz/mkchIhpg1lbpqWRhFG/MSOYUhRl8guw
P/05ZIulSwAAAABJRU5ErkJggg==
</value>
</data>
<metadata name="barManager.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>479, 17</value>
</metadata>
<data name="Save.Glyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAALdEVYdFRpdGxlAFNhdmU7+ej5CQAAAvRJREFUOE+Fk11Ik1EYx1emIWIfVpqUkhkDwTRtbbr5
Oufmvpxz0+lsTrfhzK/8yO+VpgZFEXQTBN0GBSGFGEVRQXSZHxdhqRFdqE3nNCuXK2/+nedtFxJBB368
L+85/995znl4BaGxnRHG2PEX4f8gIgTNb2MIwjhNxStOVwGbewC9Q7fRNXAL7edvorn3Bhrar8PdcgWO
hkuodPdDb2mBrKAcWcrS1yxLQkEEp7XCM3gNVlcfAsFNBDb+sB7i+49N+L78gHclALWpAa09l5CtKgXL
RpJgp7SgDN39V2Gp9vBBWry4SgT4kFiqgZjTYmLWB6XBjRJbHSQKMwmiSBBJto7zl2GydfE7UtgbCn+Y
W0MWp4O6yIYFfwByrZMJaiGSF5MgmgRR4nwz2lhZReVtrNxfWFgO4JP3G95+9GOc7copjDCUOjG/vI6c
giqYT9cikzOQYDcJok/JjWjuHIS2pInfdfKDDxMzPowzxhhvppcwx8JzvnVkK2wwVbiRLtWSYC8JdpGt
sa0PKmMd8gtrodDXQK5xIVfjQI7KDqmykgVPIyuvAhK5FcXWGhwXq0mwjwR70qU6nGnxgCswwVjuYjhR
VOaEweJgVKOwtBr6kiroSuzQmSvZnAspIiUJDpAgJlWiRk1TDy/435Ap2X1YXBBm5JEgjgT7U0QqOOo6
WLnF/KLV7z+x+o0IYvVrEH727mfPFYYkT88qciA5jSNBPAliyWZ3t7IzGniBnwUpwLMWxPLaBo+PIZKp
2VGqkJQqJcEhEhw8lp4Lq/MsuyA9+kdncWFkBj0Pp9E5PI22++/RfO8dGu9Oof7OFE7KNNAUVyIxRUKC
BBLEJ6XKYLHXQ5SjxfXXS7j6ahGXX3ox9Pwz+p4uwPN4Ht2jc+hgZGSrWFfMSBCKSJBIgpjDwswxMmZI
1TANvUTRxRfQeZ5B3f0EinOPwDWPILv+AU7VDiNNnA/hCQ5xR45PsizfBfotqZ9kO7KFpC0c3UJy6Fus
QCAI/w0F4v5uZtgcHwAAAABJRU5ErkJggg==
</value>
</data>
<data name="Save.LargeGlyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
CtBCAjUAAAAASUVORK5CYII=
</value>
</data>
<data name="barDelete.Glyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAjdEVYdFRpdGxlAENhbmNlbDtTdG9wO0V4aXQ7QmFycztSaWJib247TJaWsgAAA5pJREFUOE8l
k39Qk3Ucx78IptikutJOYl1gGyIOhmxtoB5jxoTBLPgjLE+9MhNQRsdxeZAkXhRO7jQDLu6IOjARZPyw
hDmdeVlJF8PGgHILBPkhwvZswAbbkd677/PwvXs9977P5/N+P9/vc8+XeEytxHO7g3jvXCV0Bf6We0Rk
KyqoenCi0DJeXPSEhdV/F2prDB8cFNOZIEqAx6QnC8YWQgP0rDGAstqqzSse/fQT/+y3X8Pd3gDP7U54
Ke72RszUV2Hs5Am/+djRUjq7lrKKC6ArQCuX8YaO55nGK8rgudWO+e6LmOuoh6ulBq7mGrjb6jD3UyPo
yzBx9nMMHM/9RRMpfIENYQOCzB8e/ma0vJQaL8FSlI+6cBGMmZlwNp6Ds+EcbmZlcTVL4TEuaOzLMvxx
+P3L1LuWdGZlSq25OU8Y/Xe4V5CDBtU7MHWb0ZxTgm51BgzpGk6bunq5njn/I7iu1MGan/e0PjU1iZgy
NLUjX5zE49oK1PGj8MA+BYdrCfZRBi3a0xz3qZ52ejFsm+JmpqvLMXK6BIa0dD25uUc9bD/6Lka0+3FD
8xb+1J2Hd+k/OOd9sD1kYBtjMDvnw8LiMtczavZiOC8btiPZuKFKe0iuK1TL/2SnYOjtHbAfolvevRs9
uguYcfswQ3fy2E1hfPi94isYlErcP5CGwYwEDGYlwaBIWSZX5UnLltQ3MKCWYWhvIq5JtsN46izd8hIe
ORcx5fBSlnC9VIdr8dsxkC6HdY8U/SoJWC9pEsvHepUrha7YbWj7uAwD/zowOesFs+ADM+/H+IwX/fZZ
6AtOoSsmGpY349CrEKMpVjZFaoXi7007ZLAoxbgULoRz2olJxyJcC370X6jmWAnxwPHIyc38lRSDnxMl
qBbEdpKi0IhdF6Pinpp3bsNdpRy3DhyCn2FwT1cJoyyeIuE0W2N7d5Nl6EuMxg9bxMh/+TU1+yMFV74i
vHwlcissybHoSZaiVRgJkyyOfhc5d2ZWs7UehRQWRQz0kVE4s0nAXp71bMCqrWvWbajcuLmvKUIA8y4R
NSWgP0WCvoQoyhZ65ngMqhPQt1OE5s0CnNkYYRWteZZPvYFkouA9NiQw/hneprLn+C1VG8LRLojAHfHr
6JXSQMqvVHfQWjXtffY8/8fo1cGvUk/QuHYfIeyDEysXg3dw3UuqEl5oa3lI2IQuhA9dSBjK14dNFvNC
2/YHv6ihMyGUwBXfPvI/dZFG19yv1ioAAAAASUVORK5CYII=
</value>
</data>
<data name="barDelete.LargeGlyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="barClose.Glyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAASdEVYdFRpdGxlAEZvcndhcmQ7TmV4dOtv9uEAAAO2SURBVDhPTZJ7TJNXGIc/MWRbbDf+WCJG
2tqWUgFxoJENw7INqhRlDCoMAY1rSSmXwQaOWcetLJtXsiKlgAwJIoyNNrCpRAzboKKMtrOCKLdBC6tN
kHHpisplJr+dr9uSneScNznnfZ73PSeHGl3UUNOuNur35XaKjA3p5fytBQ3+JcWtAbdUuh0TKv0OW0lb
wMDJpoAvM9UCf5Kzkc6zL+upCWctRU066wmsp2GPnCo/ZWFzyIremIV+61n8ttAKq/M7GGfK0WHJgaot
ZC3volAdEOb1Ii2xuZooyvpnIxV+aLNnZoVfi+ZaHCYWrmDcpcXI0ikMLioxtHQSo87TmHJVY2y+EZWd
McitFnaFRr/KoCXuyrLTfkXl7TGYcNbg9qwCt+dkCFcwIfsiEH0OOcwLmRiYU8A4n4vJ5QZorksgPy+o
I6wnFZ/P4WSrdz61zJbjJ3sqehxHYZg9hreyGahp1UKcyUZzfxzuPJa693scx/DgjwvIqw1+fug4J5RK
KuQX195Ixc92KW7OJOBHexJ6HqUgIpeBuUUXbpkGkHh8L05c2k0KJKPbfhi9j9LQYpDjiIrfQATcvh8G
FbhqjcPRsz54h4CRHzMgyt+EZ6vrcD1dxfiUA6XaTxD/KQstFjE6pyW4MfohUlV8G5Wg5NqvjR2Bfnyf
u6pp0Ia796dheTCD5WdreLJCJCTa7PPQ3WxHTI4/ytp2odsmQ0oJ7zkVX8B53Dy0H9+OvI3IPCb+P5xP
Vslcg3N5lXTzF0zDff8K9kD3MBqJn3HXqdg8jklj2IOm+29AfoGPaCUDBwqZOFhE3mBpBQuuNayur6P+
+1NIKNyGtnsS6MfE0PaFQlLAcVDiDLZaeTkItXd3koMD6LImo8uWgndLme4OHHNWZJwR4UTjLlydlODK
cBi+vheM4m+CcTCb3UGFJ3kHJSp565r+QGjN/qj5NZAkvIZYFQPdZh3eL+WhtjcSrSMRuGgJQrU5ANXG
IBwu8sWbyVui6I/kGZXO0qad40NjFKLK5EdEQsR+zkRaBQctQxGos4S45fQ+HdPVfERlsDoI+xIt2MAO
Yr5MrtIrPcfFV3cEqDT6QTcqwuXhvagyb0clkWpMQpw3CPDBGS7EWeyHglAvb8J6UAa7lJZ4bBVu8oqU
+VyKzd+GnDoeyq7zoP7FFxUDvijr5OOjeh7eI2f75KxO/u5XthBmo5ull/8kZL4QJtkcJpL5NEQpWFPR
WRy6GvZnsO2iNB/d6xLvaJJDt+3xDyel/gYZ50RBvCWpjwAAAABJRU5ErkJggg==
</value>
</data>
<data name="barClose.LargeGlyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
</root>

View File

@@ -0,0 +1,62 @@
namespace Omega.Forms
{
partial class frmEditQuestion
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmEditQuestion));
this.richEditControl = new DevExpress.XtraRichEdit.RichEditControl();
this.SuspendLayout();
//
// richEditControl
//
this.richEditControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.richEditControl.Location = new System.Drawing.Point(0, 0);
this.richEditControl.Name = "richEditControl";
this.richEditControl.Options.Fields.UseCurrentCultureDateTimeFormat = false;
this.richEditControl.Options.MailMerge.KeepLastParagraph = false;
this.richEditControl.Size = new System.Drawing.Size(922, 468);
this.richEditControl.TabIndex = 0;
//
// frmEditQuestion
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.ClientSize = new System.Drawing.Size(922, 468);
this.Controls.Add(this.richEditControl);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "frmEditQuestion";
this.Text = "Xem câu hỏi";
this.Load += new System.EventHandler(this.frmEditQuestion_Load);
this.ResumeLayout(false);
}
#endregion
private DevExpress.XtraRichEdit.RichEditControl richEditControl;
}
}

View File

@@ -0,0 +1,55 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Datalib.Linq;
using System.Linq;
using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Validation;
using OpenXmlPowerTools;
using System.Xml.Linq;
using Datalib.EntityClasses;
using Datalib.FactoryClasses;
using Datalib.HelperClasses;
namespace Omega.Forms
{
public partial class frmEditQuestion : Omega.BasicForms.frmCommon
{
public TblQuestionEntity Question { get; set; }
public frmEditQuestion()
{
InitializeComponent();
}
private void frmEditQuestion_Load(object sender, EventArgs e)
{
}
public override void LoadData()
{
List<Source> Sources = new List<Source>();
byte[] Content = Convert.FromBase64String(Question.Content);
Sources.Add(new Source(new WmlDocument(Guid.NewGuid().ToString("N"), Content),false));
WmlDocument des = DocumentBuilder.BuildDocument(Sources);
richEditControl.OpenXmlBytes = des.DocumentByteArray;
}
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,61 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Net;
using System.Text;
using System.Windows.Forms;
using Omega.Properties;
using System.Globalization;
using System.Threading;
using System.Xml;
using System.Xml.Linq;
using System.Linq;
namespace Omega.Forms
{
public partial class frmLogin : Omega.BasicForms.frmCommon
{
public frmLogin()
{
InitializeComponent();
}
private void OK_Click(object sender, EventArgs e)
{
string fileToLoad = Application.StartupPath + @"\Settings.xml";
XElement root = XElement.Load(fileToLoad);
var selected = (from cli in root.Descendants("user")
where cli.Element("username").Value == UserName.EditValue.ToString()
select cli).FirstOrDefault();
if (selected.Element("Password").Value == common.MD5Hash(Password.Text))
{
this.Hide();
SettingInfo.UserName = this.UserName.EditValue.ToString().Trim();
var frm = new frmMain();
frm.ShowDialog();
this.Close();
}
else
{
MessageBox.Show("Bạn nhập sai mật khẩu hoặc tên truy cập", "Cảnh báo", MessageBoxButtons.OK);
}
}
private void Cancel_Click(object sender, EventArgs e)
{
Application.Exit();
}
}
}

130
omegapro/Omega/Forms/frmLogin.designer.cs generated Normal file
View File

@@ -0,0 +1,130 @@
namespace Omega.Forms
{
partial class frmLogin
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmLogin));
this.labelControl1 = new DevExpress.XtraEditors.LabelControl();
this.labelControl2 = new DevExpress.XtraEditors.LabelControl();
this.Password = new DevExpress.XtraEditors.TextEdit();
this.OK = new DevExpress.XtraEditors.SimpleButton();
this.Cancel = new DevExpress.XtraEditors.SimpleButton();
this.UserName = new DevExpress.XtraEditors.ImageComboBoxEdit();
this.imageList = new System.Windows.Forms.ImageList(this.components);
((System.ComponentModel.ISupportInitialize)(this.Password.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.UserName.Properties)).BeginInit();
this.SuspendLayout();
//
// labelControl1
//
resources.ApplyResources(this.labelControl1, "labelControl1");
this.labelControl1.Name = "labelControl1";
//
// labelControl2
//
resources.ApplyResources(this.labelControl2, "labelControl2");
this.labelControl2.Name = "labelControl2";
//
// Password
//
this.Password.EnterMoveNextControl = true;
resources.ApplyResources(this.Password, "Password");
this.Password.Name = "Password";
this.Password.Properties.AutoHeight = ((bool)(resources.GetObject("Password.Properties.AutoHeight")));
this.Password.Properties.PasswordChar = '*';
//
// OK
//
resources.ApplyResources(this.OK, "OK");
this.OK.Name = "OK";
this.OK.Click += new System.EventHandler(this.OK_Click);
//
// Cancel
//
this.Cancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
resources.ApplyResources(this.Cancel, "Cancel");
this.Cancel.Name = "Cancel";
this.Cancel.Click += new System.EventHandler(this.Cancel_Click);
//
// UserName
//
resources.ApplyResources(this.UserName, "UserName");
this.UserName.Name = "UserName";
this.UserName.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton(((DevExpress.XtraEditors.Controls.ButtonPredefines)(resources.GetObject("UserName.Properties.Buttons"))))});
this.UserName.Properties.DropDownRows = 3;
this.UserName.Properties.Items.AddRange(new DevExpress.XtraEditors.Controls.ImageComboBoxItem[] {
new DevExpress.XtraEditors.Controls.ImageComboBoxItem(resources.GetString("UserName.Properties.Items"), resources.GetString("UserName.Properties.Items1"), ((int)(resources.GetObject("UserName.Properties.Items2")))),
new DevExpress.XtraEditors.Controls.ImageComboBoxItem(resources.GetString("UserName.Properties.Items3"), resources.GetString("UserName.Properties.Items4"), ((int)(resources.GetObject("UserName.Properties.Items5")))),
new DevExpress.XtraEditors.Controls.ImageComboBoxItem(resources.GetString("UserName.Properties.Items6"), resources.GetString("UserName.Properties.Items7"), ((int)(resources.GetObject("UserName.Properties.Items8"))))});
this.UserName.Properties.LargeImages = this.imageList;
this.UserName.Properties.SmallImages = this.imageList;
//
// imageList
//
this.imageList.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList.ImageStream")));
this.imageList.TransparentColor = System.Drawing.Color.Transparent;
this.imageList.Images.SetKeyName(0, "admin.jpg");
this.imageList.Images.SetKeyName(1, "Super.jpg");
this.imageList.Images.SetKeyName(2, "User.jpg");
//
// frmLogin
//
this.AcceptButton = this.OK;
this.ActiveGlowColor = System.Drawing.Color.Empty;
resources.ApplyResources(this, "$this");
this.CancelButton = this.Cancel;
this.Controls.Add(this.UserName);
this.Controls.Add(this.Cancel);
this.Controls.Add(this.OK);
this.Controls.Add(this.labelControl2);
this.Controls.Add(this.Password);
this.Controls.Add(this.labelControl1);
this.FormBorderEffect = DevExpress.XtraEditors.FormBorderEffect.Shadow;
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.InactiveGlowColor = System.Drawing.Color.Empty;
this.Name = "frmLogin";
((System.ComponentModel.ISupportInitialize)(this.Password.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.UserName.Properties)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private DevExpress.XtraEditors.LabelControl labelControl1;
private DevExpress.XtraEditors.LabelControl labelControl2;
private DevExpress.XtraEditors.TextEdit Password;
private DevExpress.XtraEditors.SimpleButton OK;
private DevExpress.XtraEditors.SimpleButton Cancel;
private DevExpress.XtraEditors.ImageComboBoxEdit UserName;
private System.Windows.Forms.ImageList imageList;
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,155 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="UserName.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="labelControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>72, 13</value>
</data>
<data name="labelControl1.Text" xml:space="preserve">
<value>Tên đăng nhập</value>
</data>
<data name="labelControl2.Size" type="System.Drawing.Size, System.Drawing">
<value>44, 13</value>
</data>
<data name="labelControl2.Text" xml:space="preserve">
<value>Mật khẩu</value>
</data>
<data name="OK.Text" xml:space="preserve">
<value>Chọn</value>
</data>
<data name="Cancel.Text" xml:space="preserve">
<value>Hủy</value>
</data>
<data name="Language.Properties.Items" xml:space="preserve">
<value>Tiếng Việt</value>
</data>
<data name="Language.Properties.Items1" xml:space="preserve">
<value>Tiếng Anh</value>
</data>
<data name="labelControl3.Text" xml:space="preserve">
<value>Ngôn ngữ</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>Đăng nhập</value>
</data>
</root>

View File

@@ -0,0 +1,353 @@
namespace Omega.Forms
{
partial class frmPDFViewer
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.pdfViewer = new DevExpress.XtraPdfViewer.PdfViewer();
this.barManager = new DevExpress.XtraBars.BarManager(this.components);
this.barDockControlTop = new DevExpress.XtraBars.BarDockControl();
this.barDockControlBottom = new DevExpress.XtraBars.BarDockControl();
this.barDockControlLeft = new DevExpress.XtraBars.BarDockControl();
this.barDockControlRight = new DevExpress.XtraBars.BarDockControl();
this.pdfBarController = new DevExpress.XtraPdfViewer.Bars.PdfBarController();
this.pdfCommandBar1 = new DevExpress.XtraPdfViewer.Bars.PdfCommandBar();
this.pdfFileOpenBarItem1 = new DevExpress.XtraPdfViewer.Bars.PdfFileOpenBarItem();
this.pdfFilePrintBarItem1 = new DevExpress.XtraPdfViewer.Bars.PdfFilePrintBarItem();
this.pdfPreviousPageBarItem1 = new DevExpress.XtraPdfViewer.Bars.PdfPreviousPageBarItem();
this.pdfNextPageBarItem1 = new DevExpress.XtraPdfViewer.Bars.PdfNextPageBarItem();
this.pdfZoomOutBarItem1 = new DevExpress.XtraPdfViewer.Bars.PdfZoomOutBarItem();
this.pdfZoomInBarItem1 = new DevExpress.XtraPdfViewer.Bars.PdfZoomInBarItem();
this.pdfExactZoomListBarSubItem1 = new DevExpress.XtraPdfViewer.Bars.PdfExactZoomListBarSubItem();
this.pdfZoom10CheckItem1 = new DevExpress.XtraPdfViewer.Bars.PdfZoom10CheckItem();
this.pdfZoom25CheckItem1 = new DevExpress.XtraPdfViewer.Bars.PdfZoom25CheckItem();
this.pdfZoom50CheckItem1 = new DevExpress.XtraPdfViewer.Bars.PdfZoom50CheckItem();
this.pdfZoom75CheckItem1 = new DevExpress.XtraPdfViewer.Bars.PdfZoom75CheckItem();
this.pdfZoom100CheckItem1 = new DevExpress.XtraPdfViewer.Bars.PdfZoom100CheckItem();
this.pdfZoom125CheckItem1 = new DevExpress.XtraPdfViewer.Bars.PdfZoom125CheckItem();
this.pdfZoom150CheckItem1 = new DevExpress.XtraPdfViewer.Bars.PdfZoom150CheckItem();
this.pdfZoom200CheckItem1 = new DevExpress.XtraPdfViewer.Bars.PdfZoom200CheckItem();
this.pdfZoom400CheckItem1 = new DevExpress.XtraPdfViewer.Bars.PdfZoom400CheckItem();
this.pdfZoom500CheckItem1 = new DevExpress.XtraPdfViewer.Bars.PdfZoom500CheckItem();
this.pdfSetActualSizeZoomModeCheckItem1 = new DevExpress.XtraPdfViewer.Bars.PdfSetActualSizeZoomModeCheckItem();
this.pdfSetPageLevelZoomModeCheckItem1 = new DevExpress.XtraPdfViewer.Bars.PdfSetPageLevelZoomModeCheckItem();
this.pdfSetFitWidthZoomModeCheckItem1 = new DevExpress.XtraPdfViewer.Bars.PdfSetFitWidthZoomModeCheckItem();
this.pdfSetFitVisibleZoomModeCheckItem1 = new DevExpress.XtraPdfViewer.Bars.PdfSetFitVisibleZoomModeCheckItem();
this.pdfViewer.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.barManager)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pdfBarController)).BeginInit();
this.SuspendLayout();
//
// pdfViewer
//
this.pdfViewer.Controls.Add(this.barDockControlLeft);
this.pdfViewer.Controls.Add(this.barDockControlRight);
this.pdfViewer.Controls.Add(this.barDockControlBottom);
this.pdfViewer.Controls.Add(this.barDockControlTop);
this.pdfViewer.Dock = System.Windows.Forms.DockStyle.Fill;
this.pdfViewer.Location = new System.Drawing.Point(0, 0);
this.pdfViewer.Name = "pdfViewer";
this.pdfViewer.Size = new System.Drawing.Size(474, 262);
this.pdfViewer.TabIndex = 0;
//
// barManager
//
this.barManager.Bars.AddRange(new DevExpress.XtraBars.Bar[] {
this.pdfCommandBar1});
this.barManager.DockControls.Add(this.barDockControlTop);
this.barManager.DockControls.Add(this.barDockControlBottom);
this.barManager.DockControls.Add(this.barDockControlLeft);
this.barManager.DockControls.Add(this.barDockControlRight);
this.barManager.Form = this.pdfViewer;
this.barManager.Items.AddRange(new DevExpress.XtraBars.BarItem[] {
this.pdfFileOpenBarItem1,
this.pdfFilePrintBarItem1,
this.pdfPreviousPageBarItem1,
this.pdfNextPageBarItem1,
this.pdfZoomOutBarItem1,
this.pdfZoomInBarItem1,
this.pdfExactZoomListBarSubItem1,
this.pdfZoom10CheckItem1,
this.pdfZoom25CheckItem1,
this.pdfZoom50CheckItem1,
this.pdfZoom75CheckItem1,
this.pdfZoom100CheckItem1,
this.pdfZoom125CheckItem1,
this.pdfZoom150CheckItem1,
this.pdfZoom200CheckItem1,
this.pdfZoom400CheckItem1,
this.pdfZoom500CheckItem1,
this.pdfSetActualSizeZoomModeCheckItem1,
this.pdfSetPageLevelZoomModeCheckItem1,
this.pdfSetFitWidthZoomModeCheckItem1,
this.pdfSetFitVisibleZoomModeCheckItem1});
this.barManager.MaxItemId = 21;
//
// barDockControlTop
//
this.barDockControlTop.CausesValidation = false;
this.barDockControlTop.Dock = System.Windows.Forms.DockStyle.Top;
this.barDockControlTop.Location = new System.Drawing.Point(0, 0);
this.barDockControlTop.Size = new System.Drawing.Size(474, 31);
//
// barDockControlBottom
//
this.barDockControlBottom.CausesValidation = false;
this.barDockControlBottom.Dock = System.Windows.Forms.DockStyle.Bottom;
this.barDockControlBottom.Location = new System.Drawing.Point(0, 262);
this.barDockControlBottom.Size = new System.Drawing.Size(474, 0);
//
// barDockControlLeft
//
this.barDockControlLeft.CausesValidation = false;
this.barDockControlLeft.Dock = System.Windows.Forms.DockStyle.Left;
this.barDockControlLeft.Location = new System.Drawing.Point(0, 31);
this.barDockControlLeft.Size = new System.Drawing.Size(0, 231);
//
// barDockControlRight
//
this.barDockControlRight.CausesValidation = false;
this.barDockControlRight.Dock = System.Windows.Forms.DockStyle.Right;
this.barDockControlRight.Location = new System.Drawing.Point(474, 31);
this.barDockControlRight.Size = new System.Drawing.Size(0, 231);
//
// pdfBarController
//
this.pdfBarController.BarItems.Add(this.pdfFileOpenBarItem1);
this.pdfBarController.BarItems.Add(this.pdfFilePrintBarItem1);
this.pdfBarController.BarItems.Add(this.pdfPreviousPageBarItem1);
this.pdfBarController.BarItems.Add(this.pdfNextPageBarItem1);
this.pdfBarController.BarItems.Add(this.pdfZoomOutBarItem1);
this.pdfBarController.BarItems.Add(this.pdfZoomInBarItem1);
this.pdfBarController.BarItems.Add(this.pdfExactZoomListBarSubItem1);
this.pdfBarController.BarItems.Add(this.pdfZoom10CheckItem1);
this.pdfBarController.BarItems.Add(this.pdfZoom25CheckItem1);
this.pdfBarController.BarItems.Add(this.pdfZoom50CheckItem1);
this.pdfBarController.BarItems.Add(this.pdfZoom75CheckItem1);
this.pdfBarController.BarItems.Add(this.pdfZoom100CheckItem1);
this.pdfBarController.BarItems.Add(this.pdfZoom125CheckItem1);
this.pdfBarController.BarItems.Add(this.pdfZoom150CheckItem1);
this.pdfBarController.BarItems.Add(this.pdfZoom200CheckItem1);
this.pdfBarController.BarItems.Add(this.pdfZoom400CheckItem1);
this.pdfBarController.BarItems.Add(this.pdfZoom500CheckItem1);
this.pdfBarController.BarItems.Add(this.pdfSetActualSizeZoomModeCheckItem1);
this.pdfBarController.BarItems.Add(this.pdfSetPageLevelZoomModeCheckItem1);
this.pdfBarController.BarItems.Add(this.pdfSetFitWidthZoomModeCheckItem1);
this.pdfBarController.BarItems.Add(this.pdfSetFitVisibleZoomModeCheckItem1);
this.pdfBarController.Control = this.pdfViewer;
//
// pdfCommandBar1
//
this.pdfCommandBar1.Control = this.pdfViewer;
this.pdfCommandBar1.DockCol = 0;
this.pdfCommandBar1.DockRow = 0;
this.pdfCommandBar1.DockStyle = DevExpress.XtraBars.BarDockStyle.Top;
this.pdfCommandBar1.LinksPersistInfo.AddRange(new DevExpress.XtraBars.LinkPersistInfo[] {
new DevExpress.XtraBars.LinkPersistInfo(this.pdfFileOpenBarItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfFilePrintBarItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfPreviousPageBarItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfNextPageBarItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfZoomOutBarItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfZoomInBarItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfExactZoomListBarSubItem1)});
//
// pdfFileOpenBarItem1
//
this.pdfFileOpenBarItem1.Id = 0;
this.pdfFileOpenBarItem1.ItemShortcut = new DevExpress.XtraBars.BarShortcut((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.O));
this.pdfFileOpenBarItem1.Name = "pdfFileOpenBarItem1";
//
// pdfFilePrintBarItem1
//
this.pdfFilePrintBarItem1.Id = 1;
this.pdfFilePrintBarItem1.ItemShortcut = new DevExpress.XtraBars.BarShortcut((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.P));
this.pdfFilePrintBarItem1.Name = "pdfFilePrintBarItem1";
//
// pdfPreviousPageBarItem1
//
this.pdfPreviousPageBarItem1.Id = 2;
this.pdfPreviousPageBarItem1.ItemShortcut = new DevExpress.XtraBars.BarShortcut(System.Windows.Forms.Keys.PageUp);
this.pdfPreviousPageBarItem1.Name = "pdfPreviousPageBarItem1";
//
// pdfNextPageBarItem1
//
this.pdfNextPageBarItem1.Id = 3;
this.pdfNextPageBarItem1.ItemShortcut = new DevExpress.XtraBars.BarShortcut(System.Windows.Forms.Keys.PageDown);
this.pdfNextPageBarItem1.Name = "pdfNextPageBarItem1";
//
// pdfZoomOutBarItem1
//
this.pdfZoomOutBarItem1.Id = 4;
this.pdfZoomOutBarItem1.Name = "pdfZoomOutBarItem1";
//
// pdfZoomInBarItem1
//
this.pdfZoomInBarItem1.Id = 5;
this.pdfZoomInBarItem1.Name = "pdfZoomInBarItem1";
//
// pdfExactZoomListBarSubItem1
//
this.pdfExactZoomListBarSubItem1.Id = 6;
this.pdfExactZoomListBarSubItem1.LinksPersistInfo.AddRange(new DevExpress.XtraBars.LinkPersistInfo[] {
new DevExpress.XtraBars.LinkPersistInfo(this.pdfZoom10CheckItem1, true),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfZoom25CheckItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfZoom50CheckItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfZoom75CheckItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfZoom100CheckItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfZoom125CheckItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfZoom150CheckItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfZoom200CheckItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfZoom400CheckItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfZoom500CheckItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfSetActualSizeZoomModeCheckItem1, true),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfSetPageLevelZoomModeCheckItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfSetFitWidthZoomModeCheckItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.pdfSetFitVisibleZoomModeCheckItem1)});
this.pdfExactZoomListBarSubItem1.Name = "pdfExactZoomListBarSubItem1";
this.pdfExactZoomListBarSubItem1.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionInMenu;
//
// pdfZoom10CheckItem1
//
this.pdfZoom10CheckItem1.Id = 7;
this.pdfZoom10CheckItem1.Name = "pdfZoom10CheckItem1";
//
// pdfZoom25CheckItem1
//
this.pdfZoom25CheckItem1.Id = 8;
this.pdfZoom25CheckItem1.Name = "pdfZoom25CheckItem1";
//
// pdfZoom50CheckItem1
//
this.pdfZoom50CheckItem1.Id = 9;
this.pdfZoom50CheckItem1.Name = "pdfZoom50CheckItem1";
//
// pdfZoom75CheckItem1
//
this.pdfZoom75CheckItem1.Id = 10;
this.pdfZoom75CheckItem1.Name = "pdfZoom75CheckItem1";
//
// pdfZoom100CheckItem1
//
this.pdfZoom100CheckItem1.Id = 11;
this.pdfZoom100CheckItem1.Name = "pdfZoom100CheckItem1";
//
// pdfZoom125CheckItem1
//
this.pdfZoom125CheckItem1.Id = 12;
this.pdfZoom125CheckItem1.Name = "pdfZoom125CheckItem1";
//
// pdfZoom150CheckItem1
//
this.pdfZoom150CheckItem1.Id = 13;
this.pdfZoom150CheckItem1.Name = "pdfZoom150CheckItem1";
//
// pdfZoom200CheckItem1
//
this.pdfZoom200CheckItem1.Id = 14;
this.pdfZoom200CheckItem1.Name = "pdfZoom200CheckItem1";
//
// pdfZoom400CheckItem1
//
this.pdfZoom400CheckItem1.Id = 15;
this.pdfZoom400CheckItem1.Name = "pdfZoom400CheckItem1";
//
// pdfZoom500CheckItem1
//
this.pdfZoom500CheckItem1.Id = 16;
this.pdfZoom500CheckItem1.Name = "pdfZoom500CheckItem1";
//
// pdfSetActualSizeZoomModeCheckItem1
//
this.pdfSetActualSizeZoomModeCheckItem1.Id = 17;
this.pdfSetActualSizeZoomModeCheckItem1.Name = "pdfSetActualSizeZoomModeCheckItem1";
//
// pdfSetPageLevelZoomModeCheckItem1
//
this.pdfSetPageLevelZoomModeCheckItem1.Id = 18;
this.pdfSetPageLevelZoomModeCheckItem1.Name = "pdfSetPageLevelZoomModeCheckItem1";
//
// pdfSetFitWidthZoomModeCheckItem1
//
this.pdfSetFitWidthZoomModeCheckItem1.Id = 19;
this.pdfSetFitWidthZoomModeCheckItem1.Name = "pdfSetFitWidthZoomModeCheckItem1";
//
// pdfSetFitVisibleZoomModeCheckItem1
//
this.pdfSetFitVisibleZoomModeCheckItem1.Id = 20;
this.pdfSetFitVisibleZoomModeCheckItem1.Name = "pdfSetFitVisibleZoomModeCheckItem1";
//
// frmPDFViewer
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.ClientSize = new System.Drawing.Size(474, 262);
this.Controls.Add(this.pdfViewer);
this.Name = "frmPDFViewer";
this.Text = "Xem đề thi";
this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
this.pdfViewer.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.barManager)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pdfBarController)).EndInit();
this.ResumeLayout(false);
}
#endregion
private DevExpress.XtraPdfViewer.PdfViewer pdfViewer;
private DevExpress.XtraBars.BarDockControl barDockControlLeft;
private DevExpress.XtraBars.BarDockControl barDockControlRight;
private DevExpress.XtraBars.BarDockControl barDockControlBottom;
private DevExpress.XtraBars.BarDockControl barDockControlTop;
private DevExpress.XtraBars.BarManager barManager;
private DevExpress.XtraPdfViewer.Bars.PdfCommandBar pdfCommandBar1;
private DevExpress.XtraPdfViewer.Bars.PdfFileOpenBarItem pdfFileOpenBarItem1;
private DevExpress.XtraPdfViewer.Bars.PdfFilePrintBarItem pdfFilePrintBarItem1;
private DevExpress.XtraPdfViewer.Bars.PdfPreviousPageBarItem pdfPreviousPageBarItem1;
private DevExpress.XtraPdfViewer.Bars.PdfNextPageBarItem pdfNextPageBarItem1;
private DevExpress.XtraPdfViewer.Bars.PdfZoomOutBarItem pdfZoomOutBarItem1;
private DevExpress.XtraPdfViewer.Bars.PdfZoomInBarItem pdfZoomInBarItem1;
private DevExpress.XtraPdfViewer.Bars.PdfExactZoomListBarSubItem pdfExactZoomListBarSubItem1;
private DevExpress.XtraPdfViewer.Bars.PdfZoom10CheckItem pdfZoom10CheckItem1;
private DevExpress.XtraPdfViewer.Bars.PdfZoom25CheckItem pdfZoom25CheckItem1;
private DevExpress.XtraPdfViewer.Bars.PdfZoom50CheckItem pdfZoom50CheckItem1;
private DevExpress.XtraPdfViewer.Bars.PdfZoom75CheckItem pdfZoom75CheckItem1;
private DevExpress.XtraPdfViewer.Bars.PdfZoom100CheckItem pdfZoom100CheckItem1;
private DevExpress.XtraPdfViewer.Bars.PdfZoom125CheckItem pdfZoom125CheckItem1;
private DevExpress.XtraPdfViewer.Bars.PdfZoom150CheckItem pdfZoom150CheckItem1;
private DevExpress.XtraPdfViewer.Bars.PdfZoom200CheckItem pdfZoom200CheckItem1;
private DevExpress.XtraPdfViewer.Bars.PdfZoom400CheckItem pdfZoom400CheckItem1;
private DevExpress.XtraPdfViewer.Bars.PdfZoom500CheckItem pdfZoom500CheckItem1;
private DevExpress.XtraPdfViewer.Bars.PdfSetActualSizeZoomModeCheckItem pdfSetActualSizeZoomModeCheckItem1;
private DevExpress.XtraPdfViewer.Bars.PdfSetPageLevelZoomModeCheckItem pdfSetPageLevelZoomModeCheckItem1;
private DevExpress.XtraPdfViewer.Bars.PdfSetFitWidthZoomModeCheckItem pdfSetFitWidthZoomModeCheckItem1;
private DevExpress.XtraPdfViewer.Bars.PdfSetFitVisibleZoomModeCheckItem pdfSetFitVisibleZoomModeCheckItem1;
private DevExpress.XtraPdfViewer.Bars.PdfBarController pdfBarController;
}
}

View File

@@ -0,0 +1,24 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace Omega.Forms
{
public partial class frmPDFViewer : Omega.BasicForms.frmCommon
{
public string pdffile { get; set; }
public frmPDFViewer()
{
InitializeComponent();
}
public override void LoadData()
{
this.pdfViewer.LoadDocument(pdffile);
}
}
}

View File

@@ -0,0 +1,126 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="barManager.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="pdfBarController.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>142, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,396 @@
namespace Omega.Forms
{
partial class frmQuestionBank
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmQuestionBank));
this.grdResult = new DevExpress.XtraGrid.GridControl();
this.contextMenuStrip = new System.Windows.Forms.ContextMenuStrip(this.components);
this.Delete = new System.Windows.Forms.ToolStripMenuItem();
this.View = new System.Windows.Forms.ToolStripMenuItem();
this.tblQuestionEntityBindingSource = new System.Windows.Forms.BindingSource(this.components);
this.persistentRepository = new DevExpress.XtraEditors.Repository.PersistentRepository(this.components);
this.repoSubject = new DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit();
this.tblSubjectEntityBindingSource = new System.Windows.Forms.BindingSource(this.components);
this.gridView = new DevExpress.XtraGrid.Views.Grid.GridView();
this.colQuestionId = new DevExpress.XtraGrid.Columns.GridColumn();
this.colCreateDate = new DevExpress.XtraGrid.Columns.GridColumn();
this.colSubjectId = new DevExpress.XtraGrid.Columns.GridColumn();
this.colFieldId = new DevExpress.XtraGrid.Columns.GridColumn();
this.colDifficulty = new DevExpress.XtraGrid.Columns.GridColumn();
this.colLevel = new DevExpress.XtraGrid.Columns.GridColumn();
this.colContent = new DevExpress.XtraGrid.Columns.GridColumn();
this.Exclusive = new DevExpress.XtraGrid.Columns.GridColumn();
this.colQuestionCode = new DevExpress.XtraGrid.Columns.GridColumn();
this.repositoryItemPopupContainerEdit = new DevExpress.XtraEditors.Repository.RepositoryItemPopupContainerEdit();
this.imageList = new System.Windows.Forms.ImageList(this.components);
this.barManager = new DevExpress.XtraBars.BarManager(this.components);
this.bar2 = new DevExpress.XtraBars.Bar();
this.barSave = new DevExpress.XtraBars.BarButtonItem();
this.barView = new DevExpress.XtraBars.BarButtonItem();
this.barDelete = new DevExpress.XtraBars.BarButtonItem();
this.barDockControlTop = new DevExpress.XtraBars.BarDockControl();
this.barDockControlBottom = new DevExpress.XtraBars.BarDockControl();
this.barDockControlLeft = new DevExpress.XtraBars.BarDockControl();
this.barDockControlRight = new DevExpress.XtraBars.BarDockControl();
((System.ComponentModel.ISupportInitialize)(this.grdResult)).BeginInit();
this.contextMenuStrip.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.tblQuestionEntityBindingSource)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.repoSubject)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.tblSubjectEntityBindingSource)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.gridView)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.repositoryItemPopupContainerEdit)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.barManager)).BeginInit();
this.SuspendLayout();
//
// grdResult
//
this.grdResult.ContextMenuStrip = this.contextMenuStrip;
this.grdResult.DataSource = this.tblQuestionEntityBindingSource;
this.grdResult.Dock = System.Windows.Forms.DockStyle.Fill;
this.grdResult.ExternalRepository = this.persistentRepository;
this.grdResult.Location = new System.Drawing.Point(0, 24);
this.grdResult.MainView = this.gridView;
this.grdResult.Name = "grdResult";
this.grdResult.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
this.repositoryItemPopupContainerEdit});
this.grdResult.Size = new System.Drawing.Size(826, 382);
this.grdResult.TabIndex = 1;
this.grdResult.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.gridView});
//
// contextMenuStrip
//
this.contextMenuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.Delete,
this.View});
this.contextMenuStrip.Name = "contextMenuStrip";
this.contextMenuStrip.Size = new System.Drawing.Size(99, 48);
//
// Delete
//
this.Delete.Name = "Delete";
this.Delete.Size = new System.Drawing.Size(98, 22);
this.Delete.Text = "Xóa";
//
// View
//
this.View.Name = "View";
this.View.Size = new System.Drawing.Size(98, 22);
this.View.Text = "Xem";
this.View.Click += new System.EventHandler(this.View_Click);
//
// tblQuestionEntityBindingSource
//
this.tblQuestionEntityBindingSource.DataSource = typeof(Datalib.EntityClasses.TblQuestionEntity);
//
// persistentRepository
//
this.persistentRepository.Items.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
this.repoSubject});
//
// repoSubject
//
this.repoSubject.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
this.repoSubject.Columns.AddRange(new DevExpress.XtraEditors.Controls.LookUpColumnInfo[] {
new DevExpress.XtraEditors.Controls.LookUpColumnInfo("SubjectId", "Subject Id", 59, DevExpress.Utils.FormatType.None, "", false, DevExpress.Utils.HorzAlignment.Near),
new DevExpress.XtraEditors.Controls.LookUpColumnInfo("SubjectName", "Tên môn học", 76, DevExpress.Utils.FormatType.None, "", true, DevExpress.Utils.HorzAlignment.Near)});
this.repoSubject.DataSource = this.tblSubjectEntityBindingSource;
this.repoSubject.DisplayMember = "SubjectName";
this.repoSubject.Name = "repoSubject";
this.repoSubject.ValueMember = "SubjectId";
//
// tblSubjectEntityBindingSource
//
this.tblSubjectEntityBindingSource.DataSource = typeof(Datalib.EntityClasses.TblSubjectEntity);
//
// gridView
//
this.gridView.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.colQuestionId,
this.colCreateDate,
this.colSubjectId,
this.colFieldId,
this.colDifficulty,
this.colLevel,
this.colContent,
this.Exclusive,
this.colQuestionCode});
this.gridView.GridControl = this.grdResult;
this.gridView.Name = "gridView";
this.gridView.OptionsDetail.EnableMasterViewMode = false;
this.gridView.OptionsSelection.MultiSelect = true;
this.gridView.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CheckBoxRowSelect;
this.gridView.OptionsView.ColumnAutoWidth = false;
this.gridView.OptionsView.ShowGroupPanel = false;
//
// colQuestionId
//
this.colQuestionId.Caption = "Mã câu hỏi";
this.colQuestionId.FieldName = "QuestionId";
this.colQuestionId.Name = "colQuestionId";
this.colQuestionId.OptionsColumn.AllowEdit = false;
this.colQuestionId.Width = 160;
//
// colCreateDate
//
this.colCreateDate.Caption = "Ngày tạo";
this.colCreateDate.FieldName = "CreateDate";
this.colCreateDate.Name = "colCreateDate";
this.colCreateDate.OptionsColumn.AllowEdit = false;
this.colCreateDate.Visible = true;
this.colCreateDate.VisibleIndex = 2;
this.colCreateDate.Width = 96;
//
// colSubjectId
//
this.colSubjectId.Caption = "Môn học";
this.colSubjectId.ColumnEdit = this.repoSubject;
this.colSubjectId.FieldName = "SubjectId";
this.colSubjectId.Name = "colSubjectId";
this.colSubjectId.OptionsColumn.AllowEdit = false;
this.colSubjectId.Visible = true;
this.colSubjectId.VisibleIndex = 3;
this.colSubjectId.Width = 121;
//
// colFieldId
//
this.colFieldId.Caption = "Lĩnh vực kiến thức";
this.colFieldId.FieldName = "FieldId";
this.colFieldId.Name = "colFieldId";
this.colFieldId.OptionsColumn.AllowEdit = false;
this.colFieldId.Visible = true;
this.colFieldId.VisibleIndex = 5;
this.colFieldId.Width = 120;
//
// colDifficulty
//
this.colDifficulty.Caption = "Mức độ khó";
this.colDifficulty.CustomizationCaption = "Loại hình đào tạo";
this.colDifficulty.FieldName = "Difficulty";
this.colDifficulty.Name = "colDifficulty";
this.colDifficulty.OptionsColumn.AllowEdit = false;
this.colDifficulty.Visible = true;
this.colDifficulty.VisibleIndex = 6;
this.colDifficulty.Width = 76;
//
// colLevel
//
this.colLevel.Caption = "Mức độ kiến thức";
this.colLevel.FieldName = "Level";
this.colLevel.Name = "colLevel";
this.colLevel.OptionsColumn.AllowEdit = false;
this.colLevel.Visible = true;
this.colLevel.VisibleIndex = 4;
this.colLevel.Width = 128;
//
// colContent
//
this.colContent.Caption = "Nội dung câu hỏi";
this.colContent.FieldName = "Summary";
this.colContent.Name = "colContent";
this.colContent.OptionsColumn.AllowEdit = false;
this.colContent.UnboundType = DevExpress.Data.UnboundColumnType.String;
this.colContent.Visible = true;
this.colContent.VisibleIndex = 7;
this.colContent.Width = 238;
//
// Exclusive
//
this.Exclusive.Caption = "Loại trừ";
this.Exclusive.FieldName = "Exclusive";
this.Exclusive.Name = "Exclusive";
this.Exclusive.Visible = true;
this.Exclusive.VisibleIndex = 8;
//
// colQuestionCode
//
this.colQuestionCode.Caption = "Mã câu hỏi";
this.colQuestionCode.FieldName = "QuestionCode";
this.colQuestionCode.Name = "colQuestionCode";
this.colQuestionCode.OptionsColumn.AllowEdit = false;
this.colQuestionCode.Visible = true;
this.colQuestionCode.VisibleIndex = 1;
//
// repositoryItemPopupContainerEdit
//
this.repositoryItemPopupContainerEdit.AutoHeight = false;
this.repositoryItemPopupContainerEdit.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
this.repositoryItemPopupContainerEdit.Name = "repositoryItemPopupContainerEdit";
this.repositoryItemPopupContainerEdit.ButtonClick += new DevExpress.XtraEditors.Controls.ButtonPressedEventHandler(this.repositoryItemPopupContainerEdit_ButtonClick);
//
// imageList
//
this.imageList.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
this.imageList.ImageSize = new System.Drawing.Size(16, 16);
this.imageList.TransparentColor = System.Drawing.Color.Transparent;
//
// barManager
//
this.barManager.Bars.AddRange(new DevExpress.XtraBars.Bar[] {
this.bar2});
this.barManager.DockControls.Add(this.barDockControlTop);
this.barManager.DockControls.Add(this.barDockControlBottom);
this.barManager.DockControls.Add(this.barDockControlLeft);
this.barManager.DockControls.Add(this.barDockControlRight);
this.barManager.Form = this;
this.barManager.Items.AddRange(new DevExpress.XtraBars.BarItem[] {
this.barSave,
this.barDelete,
this.barView});
this.barManager.MainMenu = this.bar2;
this.barManager.MaxItemId = 3;
//
// bar2
//
this.bar2.BarName = "Main menu";
this.bar2.DockCol = 0;
this.bar2.DockRow = 0;
this.bar2.DockStyle = DevExpress.XtraBars.BarDockStyle.Top;
this.bar2.LinksPersistInfo.AddRange(new DevExpress.XtraBars.LinkPersistInfo[] {
new DevExpress.XtraBars.LinkPersistInfo(this.barSave),
new DevExpress.XtraBars.LinkPersistInfo(this.barView),
new DevExpress.XtraBars.LinkPersistInfo(this.barDelete)});
this.bar2.OptionsBar.MultiLine = true;
this.bar2.OptionsBar.UseWholeRow = true;
this.bar2.Text = "Main menu";
//
// barSave
//
this.barSave.Caption = "Save";
this.barSave.Glyph = ((System.Drawing.Image)(resources.GetObject("barSave.Glyph")));
this.barSave.Id = 0;
this.barSave.LargeGlyph = ((System.Drawing.Image)(resources.GetObject("barSave.LargeGlyph")));
this.barSave.Name = "barSave";
this.barSave.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.barSave_ItemClick);
//
// barView
//
this.barView.Caption = "View";
this.barView.Glyph = ((System.Drawing.Image)(resources.GetObject("barView.Glyph")));
this.barView.Id = 2;
this.barView.LargeGlyph = ((System.Drawing.Image)(resources.GetObject("barView.LargeGlyph")));
this.barView.Name = "barView";
this.barView.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.barView_ItemClick);
//
// barDelete
//
this.barDelete.Caption = "Delete";
this.barDelete.Glyph = ((System.Drawing.Image)(resources.GetObject("barDelete.Glyph")));
this.barDelete.Id = 1;
this.barDelete.LargeGlyph = ((System.Drawing.Image)(resources.GetObject("barDelete.LargeGlyph")));
this.barDelete.Name = "barDelete";
this.barDelete.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.barDelete_ItemClick);
//
// barDockControlTop
//
this.barDockControlTop.CausesValidation = false;
this.barDockControlTop.Dock = System.Windows.Forms.DockStyle.Top;
this.barDockControlTop.Location = new System.Drawing.Point(0, 0);
this.barDockControlTop.Size = new System.Drawing.Size(826, 24);
//
// barDockControlBottom
//
this.barDockControlBottom.CausesValidation = false;
this.barDockControlBottom.Dock = System.Windows.Forms.DockStyle.Bottom;
this.barDockControlBottom.Location = new System.Drawing.Point(0, 406);
this.barDockControlBottom.Size = new System.Drawing.Size(826, 0);
//
// barDockControlLeft
//
this.barDockControlLeft.CausesValidation = false;
this.barDockControlLeft.Dock = System.Windows.Forms.DockStyle.Left;
this.barDockControlLeft.Location = new System.Drawing.Point(0, 24);
this.barDockControlLeft.Size = new System.Drawing.Size(0, 382);
//
// barDockControlRight
//
this.barDockControlRight.CausesValidation = false;
this.barDockControlRight.Dock = System.Windows.Forms.DockStyle.Right;
this.barDockControlRight.Location = new System.Drawing.Point(826, 24);
this.barDockControlRight.Size = new System.Drawing.Size(0, 382);
//
// frmQuestionBank
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.ClientSize = new System.Drawing.Size(826, 406);
this.Controls.Add(this.grdResult);
this.Controls.Add(this.barDockControlLeft);
this.Controls.Add(this.barDockControlRight);
this.Controls.Add(this.barDockControlBottom);
this.Controls.Add(this.barDockControlTop);
this.Name = "frmQuestionBank";
this.Text = "Quản lý ngân hàng đề";
((System.ComponentModel.ISupportInitialize)(this.grdResult)).EndInit();
this.contextMenuStrip.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.tblQuestionEntityBindingSource)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.repoSubject)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.tblSubjectEntityBindingSource)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.gridView)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.repositoryItemPopupContainerEdit)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.barManager)).EndInit();
this.ResumeLayout(false);
}
#endregion
private DevExpress.XtraGrid.GridControl grdResult;
private System.Windows.Forms.ContextMenuStrip contextMenuStrip;
private System.Windows.Forms.ToolStripMenuItem Delete;
private System.Windows.Forms.ToolStripMenuItem View;
private System.Windows.Forms.BindingSource tblQuestionEntityBindingSource;
private DevExpress.XtraGrid.Views.Grid.GridView gridView;
private DevExpress.XtraGrid.Columns.GridColumn colQuestionId;
private DevExpress.XtraGrid.Columns.GridColumn colCreateDate;
private DevExpress.XtraGrid.Columns.GridColumn colSubjectId;
private DevExpress.XtraGrid.Columns.GridColumn colFieldId;
private DevExpress.XtraGrid.Columns.GridColumn colDifficulty;
private DevExpress.XtraGrid.Columns.GridColumn colLevel;
private System.Windows.Forms.ImageList imageList;
private DevExpress.XtraGrid.Columns.GridColumn colContent;
private DevExpress.XtraEditors.Repository.RepositoryItemPopupContainerEdit repositoryItemPopupContainerEdit;
private DevExpress.XtraGrid.Columns.GridColumn Exclusive;
private DevExpress.XtraEditors.Repository.PersistentRepository persistentRepository;
private DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit repoSubject;
private System.Windows.Forms.BindingSource tblSubjectEntityBindingSource;
private DevExpress.XtraGrid.Columns.GridColumn colQuestionCode;
private DevExpress.XtraBars.BarManager barManager;
private DevExpress.XtraBars.Bar bar2;
private DevExpress.XtraBars.BarButtonItem barSave;
private DevExpress.XtraBars.BarButtonItem barDelete;
private DevExpress.XtraBars.BarButtonItem barView;
private DevExpress.XtraBars.BarDockControl barDockControlTop;
private DevExpress.XtraBars.BarDockControl barDockControlBottom;
private DevExpress.XtraBars.BarDockControl barDockControlLeft;
private DevExpress.XtraBars.BarDockControl barDockControlRight;
}
}

View File

@@ -0,0 +1,112 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Linq;
using Datalib.Linq;
using Datalib.EntityClasses;
using Datalib.FactoryClasses;
using Datalib.HelperClasses;
namespace Omega.Forms
{
public partial class frmQuestionBank : Omega.BasicForms.frmCommon
{
public List<TblQuestionEntity> Questions { get; set; }
public frmQuestionBank()
{
InitializeComponent();
}
public override void LoadData()
{
LinqMetaData Meta = new LinqMetaData(adapter);
Questions = Meta.TblQuestion.ToList<TblQuestionEntity>(); ;
grdResult.DataSource = Questions;
repoSubject.DataSource = Meta.TblSubject;
base.LoadData();
}
private void View_Click(object sender, EventArgs e)
{
string QuestionId = gridView.GetFocusedRowCellValue(colQuestionId).ToString();
LinqMetaData Meta = new LinqMetaData(adapter);
var Question = Meta.TblQuestion.Where(m => m.QuestionId == QuestionId).FirstOrDefault();
frmEditQuestion frm = new frmEditQuestion();
frm.Question = Question;
frm.LoadData();
frm.Show();
}
private void repositoryItemPopupContainerEdit_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
{
string QuestionId = gridView.GetFocusedRowCellValue(colQuestionId).ToString();
LinqMetaData Meta = new LinqMetaData(adapter);
var Question = Meta.TblQuestion.Where(m => m.QuestionId == QuestionId).FirstOrDefault();
}
private void Delete_Click(object sender, EventArgs e)
{
this.DeleteRecord();
}
public override void DeleteRecord()
{
if (gridView.SelectedRowsCount == 0) return;
if (MessageBox.Show("Bạn muốn xóa câu hỏi đã được đánh dấu?","Xóa câu hỏi",MessageBoxButtons.OKCancel)==DialogResult.OK)
{
int[] dels = gridView.GetSelectedRows();
EntityCollection<TblQuestionEntity> deleteds = new EntityCollection<TblQuestionEntity>();
foreach ( int del in dels)
{
string QuestionId = gridView.GetRowCellValue(del, colQuestionId).ToString();
TblQuestionEntity Question = Questions.Where(q => q.QuestionId == QuestionId).Single();
MessageBox.Show(del.ToString() + " " + Question.QuestionCode);
deleteds.Add(Question);
}
adapter.DeleteEntityCollection(deleteds);
LinqMetaData Meta = new LinqMetaData(adapter);
Questions = Meta.TblQuestion.ToList<TblQuestionEntity>(); ;
grdResult.DataSource = Questions;
}
}
private void barSave_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
this.BindingContext[Questions].EndCurrentEdit();
foreach(TblQuestionEntity q in Questions)
{
adapter.SaveEntity(q,true,true);
}
}
private void barView_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
string QuestionId = gridView.GetFocusedRowCellValue(colQuestionId).ToString();
LinqMetaData Meta = new LinqMetaData(adapter);
var Question = Meta.TblQuestion.Where(m => m.QuestionId == QuestionId).FirstOrDefault();
frmEditQuestion frm = new frmEditQuestion();
frm.Question = Question;
frm.LoadData();
frm.Show();
}
private void barDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
DeleteRecord();
}
}
}

View File

@@ -0,0 +1,348 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="contextMenuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>749, 15</value>
</metadata>
<metadata name="tblQuestionEntityBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 54</value>
</metadata>
<metadata name="persistentRepository.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>345, 54</value>
</metadata>
<metadata name="tblSubjectEntityBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>508, 54</value>
</metadata>
<metadata name="imageList.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>242, 54</value>
</metadata>
<metadata name="barManager.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>724, 54</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="barSave.Glyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAALdEVYdFRpdGxlAFNhdmU7+ej5CQAAAvRJREFUOE+Fk11Ik1EYx1emIWIfVpqUkhkDwTRtbbr5
Oufmvpxz0+lsTrfhzK/8yO+VpgZFEXQTBN0GBSGFGEVRQXSZHxdhqRFdqE3nNCuXK2/+nedtFxJBB368
L+85/995znl4BaGxnRHG2PEX4f8gIgTNb2MIwjhNxStOVwGbewC9Q7fRNXAL7edvorn3Bhrar8PdcgWO
hkuodPdDb2mBrKAcWcrS1yxLQkEEp7XCM3gNVlcfAsFNBDb+sB7i+49N+L78gHclALWpAa09l5CtKgXL
RpJgp7SgDN39V2Gp9vBBWry4SgT4kFiqgZjTYmLWB6XBjRJbHSQKMwmiSBBJto7zl2GydfE7UtgbCn+Y
W0MWp4O6yIYFfwByrZMJaiGSF5MgmgRR4nwz2lhZReVtrNxfWFgO4JP3G95+9GOc7copjDCUOjG/vI6c
giqYT9cikzOQYDcJok/JjWjuHIS2pInfdfKDDxMzPowzxhhvppcwx8JzvnVkK2wwVbiRLtWSYC8JdpGt
sa0PKmMd8gtrodDXQK5xIVfjQI7KDqmykgVPIyuvAhK5FcXWGhwXq0mwjwR70qU6nGnxgCswwVjuYjhR
VOaEweJgVKOwtBr6kiroSuzQmSvZnAspIiUJDpAgJlWiRk1TDy/435Ap2X1YXBBm5JEgjgT7U0QqOOo6
WLnF/KLV7z+x+o0IYvVrEH727mfPFYYkT88qciA5jSNBPAliyWZ3t7IzGniBnwUpwLMWxPLaBo+PIZKp
2VGqkJQqJcEhEhw8lp4Lq/MsuyA9+kdncWFkBj0Pp9E5PI22++/RfO8dGu9Oof7OFE7KNNAUVyIxRUKC
BBLEJ6XKYLHXQ5SjxfXXS7j6ahGXX3ox9Pwz+p4uwPN4Ht2jc+hgZGSrWFfMSBCKSJBIgpjDwswxMmZI
1TANvUTRxRfQeZ5B3f0EinOPwDWPILv+AU7VDiNNnA/hCQ5xR45PsizfBfotqZ9kO7KFpC0c3UJy6Fus
QCAI/w0F4v5uZtgcHwAAAABJRU5ErkJggg==
</value>
</data>
<data name="barSave.LargeGlyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAALdEVYdFRpdGxlAFNhdmU7+ej5CQAACUBJREFUWEfFlndU1FcWx92SLcnGJKZt/Xf/irtRUYpI
770NMMPQGRiYAQYYehkYekekSEBFsSBipCii2ILBGmPBLihFkQgq0oSo57v3/YYhIbjHnD0nZ985Hx6P
mcP3e+8r9y4B8H/lp+NXxK//R37zM1B/l+ksGuyDt4jfE3/8CW+/gXd+Juy77P8zMwtMsMVbYelbMuR5
O19GF9QjpnA34orrwRenw9YjBraCGHiIUpFfthu5pfXILtmBzKLtUBZsQ2peLVKyNyMxowZxyirEKDYi
KqkMFo7BcPKWw9FLDgePSNjxZS+teJIdpMVMsIDnB1v8ISJ3x2zT8StoOdGN5s5utHVdh6aeB4wsPGHj
HAzPICWeTc1ijHg6qeLJxAwej89gdPw5Rp6peDQ2je+eTMPMPhBVdftRWduK8k3N2FDTBFu38JekxbLB
sjA/2OLt8Ow6NB27jNxN7cje3I6SuqNzBoSwcQqGMDCVE7za/wTdfY9x5d5jXL47iku9I1ipZU5YYqU2
QfP9kQkY24ogjSmBOKoQgRF5SKYsWbuGspP37pzm/GCLd8LSt6HxyEVkVbcRB1C8rQNr9AQwNBfC2kkM
fkAKF93FnhF82/MIF+48wje3v8P5W8NYpWONFZpOJO4Me9quu0PPYGjlh5C4IgRF5UEUkYv4zGq1gaXE
b5mwejADf5IqN6Ph8AWkV7Uio2o/Crd2YPU6PgzmDLj5JuPB6CTO3RzG2RvDOHP9IU5fG8Kpq0PQ0LWD
xloeGXaHrXs0bg08gZ6FD0JiihEYSQbCcxGbXgUrFykz8B6x2IBEUYNdbeeQVtECZWULCra0Y7UuGTDz
gJVjIHjeiegbHkdX9wN83X0fnZcH8dWlQZy4OEDCTtAx9MBaYy+KMgpXaVt0zbwQLC+i6HMQEJaF6NQK
WDhLmIH3iUUG3g1Jrkbd/jNQlH2J1LJ9yN98kCJzhz4ZsHQQwdkzHnfuP8WJb/tx/EI/jhId5/vQce4e
tAx40Df3hZG1CBa8CFy4+RA6xh4QywvgF54Nn9BsRKaUw5xuBmm91sDSoIRK1DZ1IamkEcmle5FT00pp
dYOeqQAW9iK6SrG4dm8EHWfv4hDRfqYXB0/3ou1UD7QN3WHhIoO5swxmTuE4TRnSMuTTAcyHX2gmvCWZ
kCVugJmjmBn4gFhggC2WBsSWY9PeTiTSG5BY3ICsqhY6XK5YZ8KHuV0A3eNoXLo9jANdPTjw9R20Mk7e
RgvR3HkLp64MouvyAE5eGkDnxX5o6rtx++8lzYRXSDrC4othQleTtJbNac4PtnjPT16CjfXHEZu3E/H5
u5BZ2QRLlzCs0HbBCi0X6Jn5wMgqAAZW/tC38IWuuTd0Tb2w1kQIbUq3tqEAmhT1Gn13OhOu3DUMoP33
JHGhWEkHshBGNiK1Afbqzg9m4H0vWSHKtndAnr0d8pztUJQ2QFneiPSyvVAyNjTSzNaNSNuwB0r6PLWk
ARGpGyGJKUJIdCHEDNr3ILp2IlkOfOnwCYPSwKc3JCgynzNPWh8Siw14SPOwfstBRGTUqsisRdQccjZn
MbbO/y7P3IIIZQ18KEIfSTq8aWbRegYzlPAQp0HAxEUK8P0VdBNyYGDpxwx8RCwy8IF7cBYKqlsRnrYJ
YQqCZva7jM1KmtWk1RDV9LcaBNArJ5wTZGlm0XpwEZMoCbsHEP7JcPNLhm9oFr0Nvj82MF+QmIFlLoHp
yK5ogiSxCpLkLyBJ+QJSNidXQZpCfyPYHJqyUbVOrCAxJQRMjFLMRAUs2jlhJsrzSwLPNwkuPgl0EJXc
20BaHxMLDLDFMiffFCjX70FQbAWCEsohji+HF91fD4pMQBEK2MyllcSCFPSPE+DoGU3Xk1W7KHqCI2HP
Z1UvAjZuMpojwfNJ5MSdvOK5zOgYezIDn8xpLjDwoZ1nIhSFOxEg38Ahkq/nopp98RIzsyqeE9OzLzA1
8xIT07MYp8rIKuQzqoxjkzN4SlXxMYOqooWTlITjyGQsHASx3DnQNhKqDfyOWGjAmh+DuJxt8JUVEcXw
o5mljwlPPn9BfP+DKCvFVIaZ0OgYYxojxKOnU1wpHn4ySeU4mHu87Pmx3BviStnQNOAzA58Siwx8ZElv
eDQVJKEkn1KfB09pPpx94rmoJ0i8+dgtfHnkJvYcvoZNjRdQues8SuvOoLj2FPKrTyK78gTSS4+S+BSG
H0/C2CaQE7Z1l9OWyOEsjKfi5sYM/JmYN8B+MAMfmzmHI5wOnCAomzohFQ7CaEzPvMD49PeUagY1IhOz
82lWRa2OnAkTo1MYIgMGlv6woaBseFGwdqHzQdugsc71vxswspdS/S6Ha0AG3ETpNFM75h6JKYp+nMR3
t1/Dzv1XUFX/DUq3n0UJi7xGHfkxKIoPI7GgnRMforK9jl5OJmxN9cHCSUbdUDRW6rgwA38hFhn4RM9a
jMCo9XD2TeNw8VXAihfGpX+MtWAscuqI2J6zyEe4yFn7pYr8IYOEh0Ym8YDQptLMhBnmjuGw5kVihY7T
aw2wxae6FoHwDyugU5sMB4YwCeZ0kln0YyT+dHwWo1zaf+j7OHHiIUXNiY9OcOKsJdPSF8DMIZwIg6l9
GPUCEfhcizPwV4I1pgsNaJv60YuWTQcnHnYCFSZ2YlR09iPnUA8y2u4gsfkG4vfdQMze64huvI7IhuuQ
1V9D2M6rkOy4iuC6bgRt60bg1m46cO5U/UJhahcKE1spzMnIv9c4MgN/IxYb0DT2ppcsnU5sLKzdYjgM
qcHYeOYRCk4MIfPIA6QdGkTKwQEkHRhA/P5+xLb0IbqpD5H77kHWeBfhhLShF5LdPdSg8ugmSGBE4kY0
m5KZ5WscXmuAu4ZrDDxfufmnUgmWw8o5CpaEHnU5ZV3DyD2mEle0DyK5bRAJZCCupR/RzX2IIvGIvSrx
0D29nIGQ+l6uSWXCaoxtJfhstf0L0lrwDrAfXEe0XNOhaJUe/5UGNaIrqRVjaNI+ehZ2wTXrKzimHYVt
cgesEw7BIvYgTOQHYBjRinWhTdCR7IOmuBGrRXuwyn83PvfZheUaDvhMw55juYpX//yXST5pqVsyzgAb
7BfmiLXL7Jlkh4Sl6U38/Q3840ewNbv/THw+/erBFupMsO1gX/glYEGqI19gQD3UH/zSzI0lS/4DBgtb
CtBCAjUAAAAASUVORK5CYII=
</value>
</data>
<data name="barView.Glyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAALdEVYdFRpdGxlAFpvb207zwn+vAAAA3pJREFUOE91k19Mk1cYxg9ohiYK3izZjRp34aJx7oYN
MhWDgmRs0YJO0+AgRJQFmCbU2IiliAX6LWgFhoIiarEFBqWjhcncCOkf+GiLha6AGw5kcQh0WCsMEIrk
2fsVTXazN/nlfO8553m+9/xjAAJQrLp83RB+u55vUusc4+qmh7jb6PBUaa3G/GJtFI2/QwS9nS//tknQ
sEASG38s5IbGkq+77/b/PvI3ZucWqRuB9rdhDzR6x+sClb4kPDJ2A0mCBc3ZfO2KAcWqynvmgp8tQ/Av
LeMn/inkFT04kW9CLrWtnX9ibt6PumY7pApNHc1fSwRlSKsDYnalovWThhaX/9XCErg7fchWdYN3evBj
txfn74zgJGdDQXUvpnxzUH7XAvGJS4kkW516+vqKQYXa2jwwNIE2+nN2iQ0zPj/GJhbRPzIPo20a3A9T
yFLZ0fDLMNpM/UjJLG0n2VrxKdWKwTW1ZVxY69lyHlbnJMYmF+F+Mg/LwD8w9ryEqm0KZW3PkF3ahaHR
KSSll7wg2fqEZI4ZT0YwVnLLhNfLy0hRduBBnxfu0TmYH82gtW8aGt6LKvNz1Np8SC82YXR8GkdSi4Uj
C/tCrGD3s/YyxpU/8MzMLkBS2Q1p4xM0On0wuF5CbffiJv8c3/f5oLF7IK2yoffROEg4LRjEHcljrRl7
GLug1OvsvaOoN9OGVdqh6JgEZ/WgwuFFXb8PzUMzUBoGUdvxB2p0XdgvkprJYF1MgowZ0nczlnamLF7G
6ak8H2S1TmTWOHHZ8hdqBr247ZzAJUM/OL0LjsEJHE7hEL4nOY0MQvaLcpg+bRd9UvJVZnktV9YC12MP
1KbHyKnvwamqTsgbHkJrGQbvfoaMczchzZCA+3x7IWlCieDG1E8DBkHvfxCx4aBYUZqcdW1ZrePB/zoG
94gXXa6nuKE1QXS8EPLM01gYqESPKgmFcdsKSLdeMHn7DoKJNZEx6QeotPbYxLyFmMQ8Wm+uPypeYv4o
8phYtneL0lJ0FHBx6C5KgDx6K0easP8+piBiNSFcVcE97A3riBAiVBKxsahdFg90SmCVHYAibkch2ye6
yKJFeSz6UC4hY9EHL7whh/Ictu/Q+QAUQpWhX+98jzN+sxuLhiRUfxk+Kwz8b2iTPmbKqM1MsWsTuxi5
SegKmCRvfVdxNXb7EvfZh9p/AUusIB52Irz7AAAAAElFTkSuQmCC
</value>
</data>
<data name="barView.LargeGlyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAALdEVYdFRpdGxlAFpvb207zwn+vAAACZlJREFUWEedVwdUVGcWfpbEza6udcOWRI0mJro5liTH
EjRBEQRRUFFjX3sURRdBVCIOiIID0osMiqOoFEVUBFF6R0GxjTTpbWBmgKE39dv7PxmOKBKz3znfebz/
3bnf9997/zcD9wfQ73f4/wNArySokvcnDiAOJH5E/LjrysjW2HM+trc8HucS6FEf6O1DBJZwgLng1DAP
ccxKH/+UwNMBaZk+/mly0aW0plN+yQ89zyeEnjwVsWmPueM/KJaZYibfMeHiG0vLfUAVqLvFn93yO9bU
WTnIyy/R+Ozl9OrE9AKUVNSita2Dwl6jpbWDX4tLew7RxeQGB69bAl2DjSPos6wqfEUojM/rKIqm2z6g
CiTw4oeO+qp5X0xOTLibj+aW16Kdna/QQgYamtuhbGxDfVM7Peuk9Ze8sejkHJwURT7bsc9+IuVg1eg2
IfS8TX/2ARbESOhvaXv+U5F/al52QTXTRUfHCzzLl8NFnIrth0Ohs/ki9LYHYO/xSIiCHiG3uBZ1DW1o
b6e43Eo4iaJkO00dp1Au3gTLa+sWznK/H13i/TS0DAe5ixPisvKqePGWtk6cDX4AzfVi6JtFY+3xTGxz
y8d24mb7J/jP0VSsMw9HSFQeahta+epIcitw1OlG1iLDHf+knGxA+1k73mD5+wQ/cE6iSOPY5DxevJ52
ZSS4gflbA3EtrgKFJS3ILmhGeFotzMUlMBYVY49PCXZ55GGzIA52Pvcgq23hW3Mz6hEOHvN3oZyfsLyW
whCm0Sf6bd9jN9xDHF/d2NSGtvZOWLvHYKHRVVRXt0Ehb0dFZSsKyMTT501IedwAwaVymPmWYP/ZUhwQ
l2K3MBW+VyWQKZtRo2yBjfONDsO1pt9QbjaUbIPvBT94dm5hm6ISs/DqFZCZJcWc1WJEZyi6xNt4cQmJ
389qRNLjelyKkcPCrwyHL5TzFF6uwDbLaGQX1kCqaMK1W/dhbHFaSLlZFfrHCzS43sjAl58GJTC/WEYT
3YkTPknQN49GOe26WzyfxLNfi0c/UOImtULgT/0OqIRNYCWEwVIcOfMU50KzUFXTjCfZ5dhzWHyfcg9m
+csva3Iq9mZg4DGXsGx2ttlErzK5gtUOD1FQ2oJ8VnYmnkPiT0g8sw630utwNaUGx4MrYRtC4kSH61J4
hpXhoFsqZHUtKK1UUgXETSNG/Yu9Gwb+noGPjruG1bPhqyb387edxybv57iVUcuLZ+Q0IElC4g/rEJ5R
h2t3ayCOk0F4QwqHm1KcDJPC6ZYUfgky7LSNg6K+FSXSBuyxEOOHH/VHMwNMpy8DH1s5XKtn/a+QN0J7
50VsEuXg4OUSJD1TIlGiRBSJhz2oRUh6LQLSFHC8U4WTt6vgElkF16gqeMbKcInWtwtjIFdS28rrsdP8
DH5QNxhH+flB7LMCB2yCitkJKK1uxAY6fhs8n2DHhQKYB5fgXLIMVzNqEEA7P5NUDfs7tPNoEo+rhlt8
NTwTZTh3TwHfxAoc8E5BFR1HSb4MG3e7dQwdrjaS8g+0drnDRfie4A24CL3eNWByxC88i14iZbJGuF6+
jxX2idgRUADj4CKYXivCoZulEESUwyayAsI4KZzJiDsZ80qVQ3RPjhCqkt21ZzgXmYNyeTNiUvOwepvD
M8r9VyJvQGXCyjGMc3M41cPAwJ3mor2XQ+/yE/yoQAEDixD8GpgH45BCmIYWwSKCDESV43hcORySKuGS
Vg2PezJ4P5AjKItak1WDbS5xyKHSF0nr4XkuEgZrBB6U+y/EASoDjMyAi31PAwO09X9VM7E83yyVN6Ck
qhEe1zOxzjkGJjeLYBZBFYgkA7FlOJ5UAfu0SrhmVMP7sRyBubUILVTi4KV0iGOyUVXXiszsKqw3cnkx
/ae1P1LuPxH7v2nA/phbjxYw8G3YuNtVcCE4gQZIiSoapCPnk7HBNZp2nw9BXBkE8WQgpRzO96U4/VSO
K/l1uCiRwsQvDbbBGahp7kBemZK+kMKhs/xQDOX8G3EQy2/ldPt1C87Yd4u/bWDAtBl6IzbscnsWm5KF
nFL6lmt5geCU51gtDMO+wAewTyiAr0QOv2wFPO+VwjrsCTa7R+N6ehEa218iv6IeQWH3sWy9NbSXHaid
OFVvFuVlLyL+GIb72PFDmHJCj0u2I9rq0TKBjj+78FXQXGQ0kaa35k6iBNnFdZA1tKOQBvNMlASmvvFY
ceImVpKh/eJkiGOzUSRvgrK5E7mlSly59YD6fhS+fqFISJVg1VZH+ffqq3qYYAYSj+lyCTa6XLyNDi0R
mIEuE+xHxMcaekZTlm20zXX2CUe6pJIvq5yMsF22vgDPxo6XqGnsQKG0kY855hKCBct/g9YSM/j4xaDz
xUvczSzAyi3OzVrz9HuYiLVawMVYaXMxAm26JbxhgFWBNzFpmpbawl8Oe/2yVdgq9AjF1dsP8TBXjkf5
Cjx6zihHMK0xYf011pi9wDhitu6+2r2WAVi+xRnigCSwU5WbHoooi58Ve7XHq1PeIUT+pXTHQpO7c0iT
/iSoDNS39zDB3H4yefqSCXMXm9rMX3IweYHhb61aSy0wz+AQNIkaembp6lq7Tk76bvEMih01/ltddS3D
o3ITq2DorLBBWmQA0C6D8u4JROxXVxhpjJ1Ncd0mwsx+pgtBZeBNEvjBJLJgdpTYeWYvlaHEYV1k92yd
PWfTPnjC5MWz5hpYNfu72aHYWxMtEnfeRG2aHW78d6Ziq/rncyiOmeDbQeQ43RVHOJ3llpzWssOcNlFz
iQVHu6TrIfZYVRHV/wVvk/8p3kV2P/j7KbNnBW2frCi+shZFXhpoeer22sRdWwTvnK7YNueLmRT3ZyLL
+2FQfZG8j2VBc1lYt4kN36mpn18/UVEUtA4FHj91mygINcfZDdMSKWZ4V+yHoTfRt1kW0MPEkBX/Hjnb
e/mXisLANdQOLb4dr9pkEK+doqTno4isvR+G3gTLr7y71gVmgiUfoj9+6BwnvTGKDI9lqAjZgrxwe7gv
nfTHK3B6+dfcacMJnM/SCZyIcclXnLfBV9wp/S85r8XjOcGsv3NHZqpxljPUuMPT1dhHuk3ojBky02Tq
qHgnrdEdthqfxRh+++k0Wud/KxI/DF6LxnOeJOSxaBznsXAc5677BedGdNUZy7kuGMvtnzqKM5s6kjOd
Qpw8kttHJKjawQaO7ZiVnV35n+tE9vzD4Ko9lnPWGsPTaf5ozklzNOc473Pu5Fyixmec8cRh3G7Gb4Zx
uxi/HsoZTWCnlBdRvVdYRdiV3fdznDeW+x9XKQ3UvKv6DQAAAABJRU5ErkJggg==
</value>
</data>
<data name="barDelete.Glyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAjdEVYdFRpdGxlAENhbmNlbDtTdG9wO0V4aXQ7QmFycztSaWJib247TJaWsgAAA5pJREFUOE8l
k39Qk3Ucx78IptikutJOYl1gGyIOhmxtoB5jxoTBLPgjLE+9MhNQRsdxeZAkXhRO7jQDLu6IOjARZPyw
hDmdeVlJF8PGgHILBPkhwvZswAbbkd677/PwvXs9977P5/N+P9/vc8+XeEytxHO7g3jvXCV0Bf6We0Rk
KyqoenCi0DJeXPSEhdV/F2prDB8cFNOZIEqAx6QnC8YWQgP0rDGAstqqzSse/fQT/+y3X8Pd3gDP7U54
Ke72RszUV2Hs5Am/+djRUjq7lrKKC6ArQCuX8YaO55nGK8rgudWO+e6LmOuoh6ulBq7mGrjb6jD3UyPo
yzBx9nMMHM/9RRMpfIENYQOCzB8e/ma0vJQaL8FSlI+6cBGMmZlwNp6Ds+EcbmZlcTVL4TEuaOzLMvxx
+P3L1LuWdGZlSq25OU8Y/Xe4V5CDBtU7MHWb0ZxTgm51BgzpGk6bunq5njn/I7iu1MGan/e0PjU1iZgy
NLUjX5zE49oK1PGj8MA+BYdrCfZRBi3a0xz3qZ52ejFsm+JmpqvLMXK6BIa0dD25uUc9bD/6Lka0+3FD
8xb+1J2Hd+k/OOd9sD1kYBtjMDvnw8LiMtczavZiOC8btiPZuKFKe0iuK1TL/2SnYOjtHbAfolvevRs9
uguYcfswQ3fy2E1hfPi94isYlErcP5CGwYwEDGYlwaBIWSZX5UnLltQ3MKCWYWhvIq5JtsN46izd8hIe
ORcx5fBSlnC9VIdr8dsxkC6HdY8U/SoJWC9pEsvHepUrha7YbWj7uAwD/zowOesFs+ADM+/H+IwX/fZZ
6AtOoSsmGpY349CrEKMpVjZFaoXi7007ZLAoxbgULoRz2olJxyJcC370X6jmWAnxwPHIyc38lRSDnxMl
qBbEdpKi0IhdF6Pinpp3bsNdpRy3DhyCn2FwT1cJoyyeIuE0W2N7d5Nl6EuMxg9bxMh/+TU1+yMFV74i
vHwlcissybHoSZaiVRgJkyyOfhc5d2ZWs7UehRQWRQz0kVE4s0nAXp71bMCqrWvWbajcuLmvKUIA8y4R
NSWgP0WCvoQoyhZ65ngMqhPQt1OE5s0CnNkYYRWteZZPvYFkouA9NiQw/hneprLn+C1VG8LRLojAHfHr
6JXSQMqvVHfQWjXtffY8/8fo1cGvUk/QuHYfIeyDEysXg3dw3UuqEl5oa3lI2IQuhA9dSBjK14dNFvNC
2/YHv6ihMyGUwBXfPvI/dZFG19yv1ioAAAAASUVORK5CYII=
</value>
</data>
<data name="barDelete.LargeGlyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
</root>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,146 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Datalib.DatabaseSpecific;
using Datalib.EntityClasses;
using Datalib.FactoryClasses;
using Datalib.HelperClasses;
using System.IO;
using Datalib.Linq;
using System.Linq;
using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Validation;
using OpenXmlPowerTools;
using System.Xml.Linq;
namespace Omega.Forms
{
public partial class frmQuestionImport : Omega.BasicForms.frmCommon
{
public string filename { get; set; }
public frmQuestionImport()
{
InitializeComponent();
}
private void SaveToDB_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
string source = this.filename;
List<Source> sources = new List<Source>();
WmlDocument InputDoc = new WmlDocument(source);
OpenXmlMemoryStreamDocument InputStream = new OpenXmlMemoryStreamDocument(InputDoc);
WordprocessingDocument InputwDoc = InputStream.GetWordprocessingDocument();
XDocument InputxDoc = InputwDoc.MainDocumentPart.GetXDocument();
List<XElement> tbls = InputxDoc.Descendants(W.tbl).Where(m => m.Parent.Name.ToString().Contains("body")).ToList();
List<TblQuestionEntity> quesions = new List<TblQuestionEntity>();
this.progressPanel.Visible = true;
foreach( var tbl in tbls)
{
string QuestionID = Guid.NewGuid().ToString("N");
string SubjectID = "";
string Level = "";
string Difficulty = "";
string FieldID = "";
string QuestionCode = "";
TblQuestionEntity question = new TblQuestionEntity(QuestionID);
question.QuestionId = QuestionID;
question.CreateDate = DateTime.Today;
// Get Question Content
var CellContent = tbl.Elements(W.tr).ToList()[0].Elements(W.tc).FirstOrDefault().Elements().Where(ce => ce.Name != W.tcPr).ToList();
var Summary = tbl.Elements(W.tr).ToList()[0].Elements(W.tc).FirstOrDefault().Value.ToString();
// MessageBox.Show(Summary);
WmlDocument modify = new WmlDocument(InputDoc);
OpenXmlMemoryStreamDocument modifystream = new OpenXmlMemoryStreamDocument(modify);
WordprocessingDocument modifywDoc = modifystream.GetWordprocessingDocument();
XDocument modifyxDoc = modifywDoc.MainDocumentPart.GetXDocument();
modifyxDoc.Descendants(W.body).First().ReplaceNodes(CellContent);
modifywDoc.MainDocumentPart.PutXDocument();
sources.Clear();
sources.Add(new Source(modifystream.GetModifiedWmlDocument(), true));
WmlDocument finalDocument = DocumentBuilder.BuildDocument(sources);
string base64 = Convert.ToBase64String(finalDocument.DocumentByteArray);
byte[] bytes = Convert.FromBase64String(base64);
question.Content = base64;
question.Summary = Summary;
//Get Content of Answer
CellContent = tbl.Elements(W.tr).ToList()[1].Elements(W.tc).FirstOrDefault().Elements().Where(ce => ce.Name != W.tcPr).ToList();
modify = new WmlDocument(InputDoc);
modifystream = new OpenXmlMemoryStreamDocument(modify);
modifywDoc = modifystream.GetWordprocessingDocument();
modifyxDoc = modifywDoc.MainDocumentPart.GetXDocument();
modifyxDoc.Descendants(W.body).First().ReplaceNodes(CellContent);
modifywDoc.MainDocumentPart.PutXDocument();
sources.Clear();
sources.Add(new Source(modifystream.GetModifiedWmlDocument(), true));
finalDocument = DocumentBuilder.BuildDocument(sources);
base64 = Convert.ToBase64String(finalDocument.DocumentByteArray);
bytes = Convert.FromBase64String(base64);
question.Answer = base64;
//Get Content of Explaination
CellContent = tbl.Elements(W.tr).ToList()[2].Elements(W.tc).FirstOrDefault().Elements().Where(ce => ce.Name != W.tcPr).ToList();
modify = new WmlDocument(InputDoc);
modifystream = new OpenXmlMemoryStreamDocument(modify);
modifywDoc = modifystream.GetWordprocessingDocument();
modifyxDoc = modifywDoc.MainDocumentPart.GetXDocument();
modifyxDoc.Descendants(W.body).First().ReplaceNodes(CellContent);
modifywDoc.MainDocumentPart.PutXDocument();
sources.Clear();
sources.Add(new Source(modifystream.GetModifiedWmlDocument(), true));
finalDocument = DocumentBuilder.BuildDocument(sources);
base64 = Convert.ToBase64String(finalDocument.DocumentByteArray);
bytes = Convert.FromBase64String(base64);
question.Explaination = base64;
//Get Content of Subject ID, Level, Field ....
string Code = tbl.Elements(W.tr).ToList()[3].Elements(W.tc).FirstOrDefault().Value.ToString();
string[] Codes = Code.Split(new char[] { ';' });
QuestionCode = Codes[0].Split(new char[] { '=' })[1];
SubjectID = Codes[1].Split(new char[]{'='})[1];
FieldID = (Codes[2].Split(new char[] { '=' })[1]);
Level = (Codes[3].Split(new char[] { '=' })[1]);
Difficulty = (Codes[4].Split(new char[] { '=' })[1]);
question.SubjectId= SubjectID.Trim();
question.FieldId = FieldID.Trim();
question.Level = Level.Trim();
question.Difficulty = Difficulty.Trim();
question.QuestionCode = QuestionCode.Trim();
adapter.SaveEntity(question,true,true);
quesions.Add(question);
}
grdResult.DataSource = quesions;
this.Tabs.SelectedTabPageIndex = 1;
this.progressPanel.Visible = false;
}
private void Open_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
this.filename = openFileDialog.FileName;
byte[] buff = File.ReadAllBytes(filename);
this.richEditControl.OpenXmlBytes = buff;
}
}
}
}

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More