Mercurial > pub > bltoolkit
diff Demo/Linq/OverWCF/DataModel.generated.cs @ 0:f990fcb411a9
Копия текущей версии из github
author | cin |
---|---|
date | Thu, 27 Mar 2014 21:46:09 +0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Demo/Linq/OverWCF/DataModel.generated.cs Thu Mar 27 21:46:09 2014 +0400 @@ -0,0 +1,261 @@ +//--------------------------------------------------------------------------------------------------- +// <auto-generated> +// This code was generated by BLToolkit template for T4. +// Changes to this file may cause incorrect behavior and will be lost if the code is regenerated. +// </auto-generated> +//--------------------------------------------------------------------------------------------------- +using System; +using System.Collections.Generic; +using System.Linq; +using System.Linq.Expressions; +using System.Reflection; +using System.ServiceModel; +using System.Text; + +using BLToolkit.Data; +using BLToolkit.Data.DataProvider; +using BLToolkit.Data.Linq; +using BLToolkit.Data.Sql; +using BLToolkit.Data.Sql.SqlProvider; +using BLToolkit.DataAccess; +using BLToolkit.Mapping; +using BLToolkit.ServiceModel; + +namespace Linq.OverWCF +{ + public partial class DataModel : ServiceModelDataContext + { + public Table<BinaryData> BinaryData { get { return this.GetTable<BinaryData>(); } } + public Table<Child> Child { get { return this.GetTable<Child>(); } } + public Table<DataTypes> DataTypes { get { return this.GetTable<DataTypes>(); } } + public Table<DataTypeTest> DataTypeTest { get { return this.GetTable<DataTypeTest>(); } } + public Table<Doctor> Doctor { get { return this.GetTable<Doctor>(); } } + public Table<GrandChild> GrandChild { get { return this.GetTable<GrandChild>(); } } + public Table<LinqDataTypes> LinqDataTypes { get { return this.GetTable<LinqDataTypes>(); } } + public Table<Parent> Parent { get { return this.GetTable<Parent>(); } } + public Table<Patient> Patient { get { return this.GetTable<Patient>(); } } + public Table<Person> Person { get { return this.GetTable<Person>(); } } + + #region FreeTextTable + + public class FreeTextKey<T> + { + public T Key; + public int Rank; + } + + class FreeTextTableExpressionAttribute : TableExpressionAttribute + { + public FreeTextTableExpressionAttribute() + : base("") + { + } + + public override void SetTable(SqlTable table, MemberInfo member, IEnumerable<Expression> expArgs, IEnumerable<ISqlExpression> sqlArgs) + { + var aargs = sqlArgs.ToArray(); + var arr = ConvertArgs(member, aargs).ToList(); + var method = (MethodInfo)member; + var sp = new MsSql2008SqlProvider(); + + { + var ttype = method.GetGenericArguments()[0]; + var tbl = new SqlTable(ttype); + + var database = tbl.Database == null ? null : sp.Convert(tbl.Database, ConvertType.NameToDatabase). ToString(); + var owner = tbl.Owner == null ? null : sp.Convert(tbl.Owner, ConvertType.NameToOwner). ToString(); + var physicalName = tbl.PhysicalName == null ? null : sp.Convert(tbl.PhysicalName, ConvertType.NameToQueryTable).ToString(); + + var name = sp.BuildTableName(new StringBuilder(), database, owner, physicalName); + + arr.Add(new SqlExpression(name.ToString(), Precedence.Primary)); + } + + { + var field = ((ConstantExpression)expArgs.First()).Value; + + if (field is string) + { + arr[0] = new SqlExpression(field.ToString(), Precedence.Primary); + } + else if (field is LambdaExpression) + { + var body = ((LambdaExpression)field).Body; + + if (body is MemberExpression) + { + var name = ((MemberExpression)body).Member.Name; + + name = sp.Convert(name, ConvertType.NameToQueryField).ToString(); + + arr[0] = new SqlExpression(name, Precedence.Primary); + } + } + } + + table.SqlTableType = SqlTableType.Expression; + table.Name = "FREETEXTTABLE({6}, {2}, {3}) {1}"; + table.TableArguments = arr.ToArray(); + } + } + + [FreeTextTableExpressionAttribute] + public Table<FreeTextKey<TKey>> FreeTextTable<TTable,TKey>(string field, string text) + { + return this.GetTable<FreeTextKey<TKey>>( + this, + ((MethodInfo)(MethodBase.GetCurrentMethod())).MakeGenericMethod(typeof(TTable), typeof(TKey)), + field, + text); + } + + [FreeTextTableExpressionAttribute] + public Table<FreeTextKey<TKey>> FreeTextTable<TTable,TKey>(Expression<Func<TTable,string>> fieldSelector, string text) + { + return this.GetTable<FreeTextKey<TKey>>( + this, + ((MethodInfo)(MethodBase.GetCurrentMethod())).MakeGenericMethod(typeof(TTable), typeof(TKey)), + fieldSelector, + text); + } + + #endregion + } + + [TableName(Name="BinaryData")] + public partial class BinaryData + { + [Identity, PrimaryKey(1)] public int BinaryDataID { get; set; } // int(10) + public byte[] Stamp { get; set; } // timestamp + public byte[] Data { get; set; } // varbinary(1024) + } + + [TableName(Name="Child")] + public partial class Child + { + [Nullable] public int? ParentID { get; set; } // int(10) + [Nullable] public int? ChildID { get; set; } // int(10) + } + + [TableName(Name="DataTypes")] + public partial class DataTypes + { + [Nullable] public int? ID { get; set; } // int(10) + [Nullable] public decimal? MoneyValue { get; set; } // decimal(10,4) + } + + [TableName(Name="DataTypeTest")] + public partial class DataTypeTest + { + [Identity, PrimaryKey(1)] public int DataTypeID { get; set; } // int(10) + [Nullable ] public byte[] Binary_ { get; set; } // binary(50) + [Nullable ] public bool? Boolean_ { get; set; } // bit + [Nullable ] public byte? Byte_ { get; set; } // tinyint(3) + [Nullable ] public byte[] Bytes_ { get; set; } // varbinary(50) + [Nullable ] public char? Char_ { get; set; } // char(1) + [Nullable ] public DateTime? DateTime_ { get; set; } // datetime(3) + [Nullable ] public decimal? Decimal_ { get; set; } // decimal(20,2) + [Nullable ] public double? Double_ { get; set; } // float(53) + [Nullable ] public Guid? Guid_ { get; set; } // uniqueidentifier + [Nullable ] public short? Int16_ { get; set; } // smallint(5) + [Nullable ] public int? Int32_ { get; set; } // int(10) + [Nullable ] public long? Int64_ { get; set; } // bigint(19) + [Nullable ] public decimal? Money_ { get; set; } // money(19,4) + [Nullable ] public byte? SByte_ { get; set; } // tinyint(3) + [Nullable ] public float? Single_ { get; set; } // real(24) + [Nullable ] public byte[] Stream_ { get; set; } // varbinary(50) + [Nullable ] public string String_ { get; set; } // nvarchar(50) + [Nullable ] public short? UInt16_ { get; set; } // smallint(5) + [Nullable ] public int? UInt32_ { get; set; } // int(10) + [Nullable ] public long? UInt64_ { get; set; } // bigint(19) + [Nullable ] public string Xml_ { get; set; } // xml(-1) + } + + [TableName(Name="Doctor")] + public partial class Doctor + { + [PrimaryKey(1)] public int PersonID { get; set; } // int(10) + public string Taxonomy { get; set; } // nvarchar(50) + + // FK_Doctor_Person + [Association(ThisKey="PersonID", OtherKey="PersonID", CanBeNull=false)] + public Person Person { get; set; } + } + + [TableName(Name="GrandChild")] + public partial class GrandChild + { + [Nullable] public int? ParentID { get; set; } // int(10) + [Nullable] public int? ChildID { get; set; } // int(10) + [Nullable] public int? GrandChildID { get; set; } // int(10) + } + + [TableName(Name="LinqDataTypes")] + public partial class LinqDataTypes + { + [Nullable] public int? ID { get; set; } // int(10) + [Nullable] public decimal? MoneyValue { get; set; } // decimal(10,4) + [Nullable] public DateTime? DateTimeValue { get; set; } // datetime(3) + [Nullable] public bool? BoolValue { get; set; } // bit + [Nullable] public Guid? GuidValue { get; set; } // uniqueidentifier + [Nullable] public byte[] BinaryValue { get; set; } // varbinary(5000) + [Nullable] public short? SmallIntValue { get; set; } // smallint(5) + } + + [TableName(Name="Parent")] + public partial class Parent + { + [Nullable] public int? ParentID { get; set; } // int(10) + [Nullable] public int? Value1 { get; set; } // int(10) + } + + [TableName(Name="Patient")] + public partial class Patient + { + [PrimaryKey(1)] public int PersonID { get; set; } // int(10) + public string Diagnosis { get; set; } // nvarchar(256) + + // FK_Patient_Person + [Association(ThisKey="PersonID", OtherKey="PersonID", CanBeNull=false)] + public Person Person { get; set; } + } + + [TableName(Name="Person")] + public partial class Person + { + [Identity, PrimaryKey(1)] public int PersonID { get; set; } // int(10) + public string FirstName { get; set; } // nvarchar(50) + public string LastName { get; set; } // nvarchar(50) + [Nullable ] public string MiddleName { get; set; } // nvarchar(50) + public char Gender { get; set; } // char(1) + + // FK_Doctor_Person_BackReference + [Association(ThisKey="PersonID", OtherKey="PersonID", CanBeNull=true)] + public Doctor Doctor { get; set; } + + // FK_Patient_Person_BackReference + [Association(ThisKey="PersonID", OtherKey="PersonID", CanBeNull=true)] + public Patient Patient { get; set; } + } +} + +namespace Linq.OverWCF +{ + public partial class DataModel + { + public DataModel() : base( + new NetTcpBinding(SecurityMode.None) + { + MaxReceivedMessageSize = 10000000, + MaxBufferPoolSize = 10000000, + MaxBufferSize = 10000000, + CloseTimeout = new TimeSpan(00, 01, 00), + OpenTimeout = new TimeSpan(00, 01, 00), + ReceiveTimeout = new TimeSpan(00, 10, 00), + SendTimeout = new TimeSpan(00, 10, 00), + }, + new EndpointAddress("net.tcp://localhost:1234/LinqOverWCF")) + { + } + } +}