From e411073971b065f41ffecdd09ec76e27967ef56a Mon Sep 17 00:00:00 2001 From: liangkun Date: Tue, 15 Sep 2020 09:56:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B0=B4=E6=99=B6=E6=8A=A5=E8=A1=A8=E6=B5=8B?= =?UTF-8?q?=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../www/config/config.js | 16 +- .../www/pages/workspace/workspace.html | 1 + .../Controllers/ADR_RecordController.cs | 20 +- .../Views/ADR_Record/ADR_Record.Designer.cs | 1107 + .../Views/ADR_Record/ADR_Record.xsc | 9 + .../Views/ADR_Record/ADR_Record.xsd | 37 + .../Views/ADR_Record/ADR_Record.xss | 12 + .../ADR_Record/AttendanceReportByWeek.cs | 154 + .../ADR_Record/AttendanceReportByWeek.cshtml | 42 + .../ADR_Record/AttendanceReportByWeek.js | 72 + .../ADR_Record/AttendanceReportByWeek.rpt | Bin 0 -> 49152 bytes .../Learun.Application.Web.csproj | 57 +- .../Learun.Application.Web/Startup1.cs | 103 +- .../Learun.Application.Web/Web.config | 31 +- .../XmlConfig/database.config | 1 + .../Learun.Application.Web/packages.config | 1 + .../Modules/DesktopApi.cs | 1 - .../Learun.Util/DataBase/DataConvert.cs | 92 + .../Learun.Util/Learun.Util.csproj | 1 + .../Service1.cs | 3 +- .../EntityFramework.SqlServer.resources.dll | Bin 0 -> 19664 bytes .../zh-Hans/EntityFramework.SqlServer.xml | 1959 ++ .../zh-Hans/EntityFramework.resources.dll | Bin 0 -> 327376 bytes .../lib/net40/zh-Hans/EntityFramework.xml | 27618 ++++++++++++++++ .../EntityFramework.SqlServer.resources.dll | Bin 0 -> 19664 bytes .../zh-Hans/EntityFramework.SqlServer.xml | 1959 ++ .../zh-Hans/EntityFramework.resources.dll | Bin 0 -> 327376 bytes .../lib/net45/zh-Hans/EntityFramework.xml | 27618 ++++++++++++++++ .../EntityFramework.zh-Hans.6.2.0.nupkg | Bin 0 -> 676197 bytes .../zh-Hans/EntityFramework.resources.dll | Bin 0 -> 327376 bytes .../lib/net40/zh-Hans/EntityFramework.xml | 27618 ++++++++++++++++ .../zh-Hans/EntityFramework.resources.dll | Bin 0 -> 327376 bytes .../lib/net45/zh-Hans/EntityFramework.xml | 27618 ++++++++++++++++ 33 files changed, 116018 insertions(+), 132 deletions(-) create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.Designer.cs create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.xsc create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.xsd create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.xss create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.cs create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.cshtml create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.js create mode 100644 Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.rpt create mode 100644 Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Util/Learun.Util/DataBase/DataConvert.cs create mode 100644 Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net40/zh-Hans/EntityFramework.SqlServer.resources.dll create mode 100644 Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net40/zh-Hans/EntityFramework.SqlServer.xml create mode 100644 Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net40/zh-Hans/EntityFramework.resources.dll create mode 100644 Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net40/zh-Hans/EntityFramework.xml create mode 100644 Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net45/zh-Hans/EntityFramework.SqlServer.resources.dll create mode 100644 Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net45/zh-Hans/EntityFramework.SqlServer.xml create mode 100644 Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net45/zh-Hans/EntityFramework.resources.dll create mode 100644 Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net45/zh-Hans/EntityFramework.xml create mode 100644 Learun.Framework.Ultimate V7/packages/EntityFramework.zh-Hans.6.2.0/EntityFramework.zh-Hans.6.2.0.nupkg create mode 100644 Learun.Framework.Ultimate V7/packages/EntityFramework.zh-Hans.6.2.0/lib/net40/zh-Hans/EntityFramework.resources.dll create mode 100644 Learun.Framework.Ultimate V7/packages/EntityFramework.zh-Hans.6.2.0/lib/net40/zh-Hans/EntityFramework.xml create mode 100644 Learun.Framework.Ultimate V7/packages/EntityFramework.zh-Hans.6.2.0/lib/net45/zh-Hans/EntityFramework.resources.dll create mode 100644 Learun.Framework.Ultimate V7/packages/EntityFramework.zh-Hans.6.2.0/lib/net45/zh-Hans/EntityFramework.xml diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Mobile/www/config/config.js b/Learun.Framework.Ultimate V7/Learun.Application.Mobile/www/config/config.js index bbf9d244a..1a239a386 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Mobile/www/config/config.js +++ b/Learun.Framework.Ultimate V7/Learun.Application.Mobile/www/config/config.js @@ -1,15 +1,15 @@ -var config = { - webapi: 'http://localhost:8088/', - web: "http://localhost:8087/"//web地址,用于配置logo -}; +//var config = { +// webapi: 'http://localhost:8088/', +// web: "http://localhost:8087/"//web地址,用于配置logo +//}; //var config = { // webapi: 'http://112.230.201.53:31173/', // web:"http://112.230.201.53/:8081/"//web地址,用于配置logo //}; -//var config = { -// webapi: 'http://localhost:31173/', -// web: "http://localhost:20472/"//web地址,用于配置logo -//}; +var config = { + webapi: 'http://localhost:31173/', + web: "http://localhost:20472/"//web地址,用于配置logo +}; //var config = { diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Mobile/www/pages/workspace/workspace.html b/Learun.Framework.Ultimate V7/Learun.Application.Mobile/www/pages/workspace/workspace.html index 36ea58c7f..78bd7d467 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Mobile/www/pages/workspace/workspace.html +++ b/Learun.Framework.Ultimate V7/Learun.Application.Mobile/www/pages/workspace/workspace.html @@ -46,6 +46,7 @@ $desktop.append(_html); learun.httpget(config.webapi + "learun/adms/desktop/data", { type: 'list', id: _item.F_Id }, function (data) { + console.log(data); if (data) { var $list = $('[data-desktop="' + data.Id + '"]'); //待办 diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Controllers/ADR_RecordController.cs b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Controllers/ADR_RecordController.cs index 59c50a0dc..83d7bede5 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Controllers/ADR_RecordController.cs +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Controllers/ADR_RecordController.cs @@ -1,9 +1,13 @@ -using Learun.Util; +using System; +using Learun.Util; using System.Data; using Learun.Application.TwoDevelopment.LogisticsManagement; using System.Web.Mvc; using Learun.Application.Base.SystemModule; using System.Collections.Generic; +using System.IO; +using CrystalDecisions.CrystalReports.Engine; +using CrystalDecisions.Shared; namespace Learun.Application.Web.Areas.LogisticsManagement.Controllers { @@ -38,6 +42,18 @@ namespace Learun.Application.Web.Areas.LogisticsManagement.Controllers { return View(); } + + [HttpGet] + public ActionResult AttendanceReportByWeek() + { + ReportClass rptH = new ReportClass(); + rptH.FileName = Server.MapPath("~/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.rpt"); + rptH.Load(); + var recrodlist = aDR_RecordIBLL.GetList("{}"); + rptH.SetDataSource(Util.DataBase.DataConvert.ToDataTable(recrodlist)); + Stream stream = rptH.ExportToStream(ExportFormatType.PortableDocFormat); + return File(stream, "application/pdf"); + } #endregion #region 获取数据 @@ -121,6 +137,6 @@ namespace Learun.Application.Web.Areas.LogisticsManagement.Controllers return Success("保存成功!"); } #endregion - + } } diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.Designer.cs b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.Designer.cs new file mode 100644 index 000000000..99248ec49 --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.Designer.cs @@ -0,0 +1,1107 @@ +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +#pragma warning disable 1591 + +namespace Learun.Application.Web.Areas.LogisticsManagement.Views.ADR_Record { + + + /// + ///Represents a strongly typed in-memory cache of data. + /// + [global::System.Serializable()] + [global::System.ComponentModel.DesignerCategoryAttribute("code")] + [global::System.ComponentModel.ToolboxItem(true)] + [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedDataSetSchema")] + [global::System.Xml.Serialization.XmlRootAttribute("ADR_Record")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.DataSet")] + public partial class ADR_Record : global::System.Data.DataSet { + + private ADR_RecordDataTable tableADR_Record; + + private global::System.Data.SchemaSerializationMode _schemaSerializationMode = global::System.Data.SchemaSerializationMode.IncludeSchema; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public ADR_Record() { + this.BeginInit(); + this.InitClass(); + global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler = new global::System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged); + base.Tables.CollectionChanged += schemaChangedHandler; + base.Relations.CollectionChanged += schemaChangedHandler; + this.EndInit(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected ADR_Record(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : + base(info, context, false) { + if ((this.IsBinarySerialized(info, context) == true)) { + this.InitVars(false); + global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler1 = new global::System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged); + this.Tables.CollectionChanged += schemaChangedHandler1; + this.Relations.CollectionChanged += schemaChangedHandler1; + return; + } + string strSchema = ((string)(info.GetValue("XmlSchema", typeof(string)))); + if ((this.DetermineSchemaSerializationMode(info, context) == global::System.Data.SchemaSerializationMode.IncludeSchema)) { + global::System.Data.DataSet ds = new global::System.Data.DataSet(); + ds.ReadXmlSchema(new global::System.Xml.XmlTextReader(new global::System.IO.StringReader(strSchema))); + if ((ds.Tables["ADR_Record"] != null)) { + base.Tables.Add(new ADR_RecordDataTable(ds.Tables["ADR_Record"])); + } + this.DataSetName = ds.DataSetName; + this.Prefix = ds.Prefix; + this.Namespace = ds.Namespace; + this.Locale = ds.Locale; + this.CaseSensitive = ds.CaseSensitive; + this.EnforceConstraints = ds.EnforceConstraints; + this.Merge(ds, false, global::System.Data.MissingSchemaAction.Add); + this.InitVars(); + } + else { + this.ReadXmlSchema(new global::System.Xml.XmlTextReader(new global::System.IO.StringReader(strSchema))); + } + this.GetSerializationData(info, context); + global::System.ComponentModel.CollectionChangeEventHandler schemaChangedHandler = new global::System.ComponentModel.CollectionChangeEventHandler(this.SchemaChanged); + base.Tables.CollectionChanged += schemaChangedHandler; + this.Relations.CollectionChanged += schemaChangedHandler; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + [global::System.ComponentModel.DesignerSerializationVisibility(global::System.ComponentModel.DesignerSerializationVisibility.Content)] + public ADR_RecordDataTable _ADR_Record { + get { + return this.tableADR_Record; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.BrowsableAttribute(true)] + [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Visible)] + public override global::System.Data.SchemaSerializationMode SchemaSerializationMode { + get { + return this._schemaSerializationMode; + } + set { + this._schemaSerializationMode = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Hidden)] + public new global::System.Data.DataTableCollection Tables { + get { + return base.Tables; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.DesignerSerializationVisibilityAttribute(global::System.ComponentModel.DesignerSerializationVisibility.Hidden)] + public new global::System.Data.DataRelationCollection Relations { + get { + return base.Relations; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected override void InitializeDerivedDataSet() { + this.BeginInit(); + this.InitClass(); + this.EndInit(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public override global::System.Data.DataSet Clone() { + ADR_Record cln = ((ADR_Record)(base.Clone())); + cln.InitVars(); + cln.SchemaSerializationMode = this.SchemaSerializationMode; + return cln; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected override bool ShouldSerializeTables() { + return false; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected override bool ShouldSerializeRelations() { + return false; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected override void ReadXmlSerializable(global::System.Xml.XmlReader reader) { + if ((this.DetermineSchemaSerializationMode(reader) == global::System.Data.SchemaSerializationMode.IncludeSchema)) { + this.Reset(); + global::System.Data.DataSet ds = new global::System.Data.DataSet(); + ds.ReadXml(reader); + if ((ds.Tables["ADR_Record"] != null)) { + base.Tables.Add(new ADR_RecordDataTable(ds.Tables["ADR_Record"])); + } + this.DataSetName = ds.DataSetName; + this.Prefix = ds.Prefix; + this.Namespace = ds.Namespace; + this.Locale = ds.Locale; + this.CaseSensitive = ds.CaseSensitive; + this.EnforceConstraints = ds.EnforceConstraints; + this.Merge(ds, false, global::System.Data.MissingSchemaAction.Add); + this.InitVars(); + } + else { + this.ReadXml(reader); + this.InitVars(); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected override global::System.Xml.Schema.XmlSchema GetSchemaSerializable() { + global::System.IO.MemoryStream stream = new global::System.IO.MemoryStream(); + this.WriteXmlSchema(new global::System.Xml.XmlTextWriter(stream, null)); + stream.Position = 0; + return global::System.Xml.Schema.XmlSchema.Read(new global::System.Xml.XmlTextReader(stream), null); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + internal void InitVars() { + this.InitVars(true); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + internal void InitVars(bool initTable) { + this.tableADR_Record = ((ADR_RecordDataTable)(base.Tables["ADR_Record"])); + if ((initTable == true)) { + if ((this.tableADR_Record != null)) { + this.tableADR_Record.InitVars(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private void InitClass() { + this.DataSetName = "ADR_Record"; + this.Prefix = ""; + this.Namespace = "http://tempuri.org/ADR_Record.xsd"; + this.EnforceConstraints = true; + this.SchemaSerializationMode = global::System.Data.SchemaSerializationMode.IncludeSchema; + this.tableADR_Record = new ADR_RecordDataTable(); + base.Tables.Add(this.tableADR_Record); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private bool ShouldSerialize_ADR_Record() { + return false; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private void SchemaChanged(object sender, global::System.ComponentModel.CollectionChangeEventArgs e) { + if ((e.Action == global::System.ComponentModel.CollectionChangeAction.Remove)) { + this.InitVars(); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs) { + ADR_Record ds = new ADR_Record(); + global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); + global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); + global::System.Xml.Schema.XmlSchemaAny any = new global::System.Xml.Schema.XmlSchemaAny(); + any.Namespace = ds.Namespace; + sequence.Items.Add(any); + type.Particle = sequence; + global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); + if (xs.Contains(dsSchema.TargetNamespace)) { + global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); + global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); + try { + global::System.Xml.Schema.XmlSchema schema = null; + dsSchema.Write(s1); + for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) { + schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); + s2.SetLength(0); + schema.Write(s2); + if ((s1.Length == s2.Length)) { + s1.Position = 0; + s2.Position = 0; + for (; ((s1.Position != s1.Length) + && (s1.ReadByte() == s2.ReadByte())); ) { + ; + } + if ((s1.Position == s1.Length)) { + return type; + } + } + } + } + finally { + if ((s1 != null)) { + s1.Close(); + } + if ((s2 != null)) { + s2.Close(); + } + } + } + xs.Add(dsSchema); + return type; + } + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public delegate void ADR_RecordRowChangeEventHandler(object sender, ADR_RecordRowChangeEvent e); + + /// + ///Represents the strongly named DataTable class. + /// + [global::System.Serializable()] + [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")] + public partial class ADR_RecordDataTable : global::System.Data.TypedTableBase { + + private global::System.Data.DataColumn columnID; + + private global::System.Data.DataColumn columnUserName; + + private global::System.Data.DataColumn columnUserNo; + + private global::System.Data.DataColumn columnDepartment; + + private global::System.Data.DataColumn columnADType; + + private global::System.Data.DataColumn columnADTime; + + private global::System.Data.DataColumn columnClockTime; + + private global::System.Data.DataColumn columnClockStatus; + + private global::System.Data.DataColumn columnClockPlace; + + private global::System.Data.DataColumn columnADYear; + + private global::System.Data.DataColumn columnADMonth; + + private global::System.Data.DataColumn columnADDay; + + private global::System.Data.DataColumn columnADPhoto; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public ADR_RecordDataTable() { + this.TableName = "ADR_Record"; + this.BeginInit(); + this.InitClass(); + this.EndInit(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + internal ADR_RecordDataTable(global::System.Data.DataTable table) { + this.TableName = table.TableName; + if ((table.CaseSensitive != table.DataSet.CaseSensitive)) { + this.CaseSensitive = table.CaseSensitive; + } + if ((table.Locale.ToString() != table.DataSet.Locale.ToString())) { + this.Locale = table.Locale; + } + if ((table.Namespace != table.DataSet.Namespace)) { + this.Namespace = table.Namespace; + } + this.Prefix = table.Prefix; + this.MinimumCapacity = table.MinimumCapacity; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected ADR_RecordDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : + base(info, context) { + this.InitVars(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn IDColumn { + get { + return this.columnID; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn UserNameColumn { + get { + return this.columnUserName; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn UserNoColumn { + get { + return this.columnUserNo; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn DepartmentColumn { + get { + return this.columnDepartment; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn ADTypeColumn { + get { + return this.columnADType; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn ADTimeColumn { + get { + return this.columnADTime; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn ClockTimeColumn { + get { + return this.columnClockTime; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn ClockStatusColumn { + get { + return this.columnClockStatus; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn ClockPlaceColumn { + get { + return this.columnClockPlace; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn ADYearColumn { + get { + return this.columnADYear; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn ADMonthColumn { + get { + return this.columnADMonth; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn ADDayColumn { + get { + return this.columnADDay; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn ADPhotoColumn { + get { + return this.columnADPhoto; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + public int Count { + get { + return this.Rows.Count; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public ADR_RecordRow this[int index] { + get { + return ((ADR_RecordRow)(this.Rows[index])); + } + } + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public event ADR_RecordRowChangeEventHandler ADR_RecordRowChanging; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public event ADR_RecordRowChangeEventHandler ADR_RecordRowChanged; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public event ADR_RecordRowChangeEventHandler ADR_RecordRowDeleting; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public event ADR_RecordRowChangeEventHandler ADR_RecordRowDeleted; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void AddADR_RecordRow(ADR_RecordRow row) { + this.Rows.Add(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public ADR_RecordRow AddADR_RecordRow(string ID, string UserName, string UserNo, string Department, string ADType, System.DateTime ADTime, System.DateTime ClockTime, string ClockStatus, string ClockPlace, string ADYear, string ADMonth, string ADDay, string ADPhoto) { + ADR_RecordRow rowADR_RecordRow = ((ADR_RecordRow)(this.NewRow())); + object[] columnValuesArray = new object[] { + ID, + UserName, + UserNo, + Department, + ADType, + ADTime, + ClockTime, + ClockStatus, + ClockPlace, + ADYear, + ADMonth, + ADDay, + ADPhoto}; + rowADR_RecordRow.ItemArray = columnValuesArray; + this.Rows.Add(rowADR_RecordRow); + return rowADR_RecordRow; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public override global::System.Data.DataTable Clone() { + ADR_RecordDataTable cln = ((ADR_RecordDataTable)(base.Clone())); + cln.InitVars(); + return cln; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected override global::System.Data.DataTable CreateInstance() { + return new ADR_RecordDataTable(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + internal void InitVars() { + this.columnID = base.Columns["ID"]; + this.columnUserName = base.Columns["UserName"]; + this.columnUserNo = base.Columns["UserNo"]; + this.columnDepartment = base.Columns["Department"]; + this.columnADType = base.Columns["ADType"]; + this.columnADTime = base.Columns["ADTime"]; + this.columnClockTime = base.Columns["ClockTime"]; + this.columnClockStatus = base.Columns["ClockStatus"]; + this.columnClockPlace = base.Columns["ClockPlace"]; + this.columnADYear = base.Columns["ADYear"]; + this.columnADMonth = base.Columns["ADMonth"]; + this.columnADDay = base.Columns["ADDay"]; + this.columnADPhoto = base.Columns["ADPhoto"]; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private void InitClass() { + this.columnID = new global::System.Data.DataColumn("ID", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnID); + this.columnUserName = new global::System.Data.DataColumn("UserName", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnUserName); + this.columnUserNo = new global::System.Data.DataColumn("UserNo", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnUserNo); + this.columnDepartment = new global::System.Data.DataColumn("Department", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnDepartment); + this.columnADType = new global::System.Data.DataColumn("ADType", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnADType); + this.columnADTime = new global::System.Data.DataColumn("ADTime", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnADTime); + this.columnClockTime = new global::System.Data.DataColumn("ClockTime", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnClockTime); + this.columnClockStatus = new global::System.Data.DataColumn("ClockStatus", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnClockStatus); + this.columnClockPlace = new global::System.Data.DataColumn("ClockPlace", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnClockPlace); + this.columnADYear = new global::System.Data.DataColumn("ADYear", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnADYear); + this.columnADMonth = new global::System.Data.DataColumn("ADMonth", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnADMonth); + this.columnADDay = new global::System.Data.DataColumn("ADDay", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnADDay); + this.columnADPhoto = new global::System.Data.DataColumn("ADPhoto", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnADPhoto); + this.ExtendedProperties.Add("Generator_TablePropName", "_ADR_Record"); + this.ExtendedProperties.Add("Generator_UserTableName", "ADR_Record"); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public ADR_RecordRow NewADR_RecordRow() { + return ((ADR_RecordRow)(this.NewRow())); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected override global::System.Data.DataRow NewRowFromBuilder(global::System.Data.DataRowBuilder builder) { + return new ADR_RecordRow(builder); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected override global::System.Type GetRowType() { + return typeof(ADR_RecordRow); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected override void OnRowChanged(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanged(e); + if ((this.ADR_RecordRowChanged != null)) { + this.ADR_RecordRowChanged(this, new ADR_RecordRowChangeEvent(((ADR_RecordRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected override void OnRowChanging(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowChanging(e); + if ((this.ADR_RecordRowChanging != null)) { + this.ADR_RecordRowChanging(this, new ADR_RecordRowChangeEvent(((ADR_RecordRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected override void OnRowDeleted(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleted(e); + if ((this.ADR_RecordRowDeleted != null)) { + this.ADR_RecordRowDeleted(this, new ADR_RecordRowChangeEvent(((ADR_RecordRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected override void OnRowDeleting(global::System.Data.DataRowChangeEventArgs e) { + base.OnRowDeleting(e); + if ((this.ADR_RecordRowDeleting != null)) { + this.ADR_RecordRowDeleting(this, new ADR_RecordRowChangeEvent(((ADR_RecordRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void RemoveADR_RecordRow(ADR_RecordRow row) { + this.Rows.Remove(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) { + global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); + global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); + ADR_Record ds = new ADR_Record(); + global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny(); + any1.Namespace = "http://www.w3.org/2001/XMLSchema"; + any1.MinOccurs = new decimal(0); + any1.MaxOccurs = decimal.MaxValue; + any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any1); + global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny(); + any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"; + any2.MinOccurs = new decimal(1); + any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; + sequence.Items.Add(any2); + global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute1.Name = "namespace"; + attribute1.FixedValue = ds.Namespace; + type.Attributes.Add(attribute1); + global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute(); + attribute2.Name = "tableTypeName"; + attribute2.FixedValue = "ADR_RecordDataTable"; + type.Attributes.Add(attribute2); + type.Particle = sequence; + global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); + if (xs.Contains(dsSchema.TargetNamespace)) { + global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); + global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); + try { + global::System.Xml.Schema.XmlSchema schema = null; + dsSchema.Write(s1); + for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) { + schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); + s2.SetLength(0); + schema.Write(s2); + if ((s1.Length == s2.Length)) { + s1.Position = 0; + s2.Position = 0; + for (; ((s1.Position != s1.Length) + && (s1.ReadByte() == s2.ReadByte())); ) { + ; + } + if ((s1.Position == s1.Length)) { + return type; + } + } + } + } + finally { + if ((s1 != null)) { + s1.Close(); + } + if ((s2 != null)) { + s2.Close(); + } + } + } + xs.Add(dsSchema); + return type; + } + } + + /// + ///Represents strongly named DataRow class. + /// + public partial class ADR_RecordRow : global::System.Data.DataRow { + + private ADR_RecordDataTable tableADR_Record; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + internal ADR_RecordRow(global::System.Data.DataRowBuilder rb) : + base(rb) { + this.tableADR_Record = ((ADR_RecordDataTable)(this.Table)); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public string ID { + get { + try { + return ((string)(this[this.tableADR_Record.IDColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("表“ADR_Record”中列“ID”的值为 DBNull。", e); + } + } + set { + this[this.tableADR_Record.IDColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public string UserName { + get { + if (this.IsUserNameNull()) { + return string.Empty; + } + else { + return ((string)(this[this.tableADR_Record.UserNameColumn])); + } + } + set { + this[this.tableADR_Record.UserNameColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public string UserNo { + get { + if (this.IsUserNoNull()) { + return string.Empty; + } + else { + return ((string)(this[this.tableADR_Record.UserNoColumn])); + } + } + set { + this[this.tableADR_Record.UserNoColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public string Department { + get { + if (this.IsDepartmentNull()) { + return string.Empty; + } + else { + return ((string)(this[this.tableADR_Record.DepartmentColumn])); + } + } + set { + this[this.tableADR_Record.DepartmentColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public string ADType { + get { + if (this.IsADTypeNull()) { + return string.Empty; + } + else { + return ((string)(this[this.tableADR_Record.ADTypeColumn])); + } + } + set { + this[this.tableADR_Record.ADTypeColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public System.DateTime ADTime { + get { + try { + return ((global::System.DateTime)(this[this.tableADR_Record.ADTimeColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("表“ADR_Record”中列“ADTime”的值为 DBNull。", e); + } + } + set { + this[this.tableADR_Record.ADTimeColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public System.DateTime ClockTime { + get { + try { + return ((global::System.DateTime)(this[this.tableADR_Record.ClockTimeColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("表“ADR_Record”中列“ClockTime”的值为 DBNull。", e); + } + } + set { + this[this.tableADR_Record.ClockTimeColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public string ClockStatus { + get { + if (this.IsClockStatusNull()) { + return string.Empty; + } + else { + return ((string)(this[this.tableADR_Record.ClockStatusColumn])); + } + } + set { + this[this.tableADR_Record.ClockStatusColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public string ClockPlace { + get { + if (this.IsClockPlaceNull()) { + return string.Empty; + } + else { + return ((string)(this[this.tableADR_Record.ClockPlaceColumn])); + } + } + set { + this[this.tableADR_Record.ClockPlaceColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public string ADYear { + get { + if (this.IsADYearNull()) { + return string.Empty; + } + else { + return ((string)(this[this.tableADR_Record.ADYearColumn])); + } + } + set { + this[this.tableADR_Record.ADYearColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public string ADMonth { + get { + if (this.IsADMonthNull()) { + return string.Empty; + } + else { + return ((string)(this[this.tableADR_Record.ADMonthColumn])); + } + } + set { + this[this.tableADR_Record.ADMonthColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public string ADDay { + get { + if (this.IsADDayNull()) { + return string.Empty; + } + else { + return ((string)(this[this.tableADR_Record.ADDayColumn])); + } + } + set { + this[this.tableADR_Record.ADDayColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public string ADPhoto { + get { + if (this.IsADPhotoNull()) { + return string.Empty; + } + else { + return ((string)(this[this.tableADR_Record.ADPhotoColumn])); + } + } + set { + this[this.tableADR_Record.ADPhotoColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool IsIDNull() { + return this.IsNull(this.tableADR_Record.IDColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void SetIDNull() { + this[this.tableADR_Record.IDColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool IsUserNameNull() { + return this.IsNull(this.tableADR_Record.UserNameColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void SetUserNameNull() { + this[this.tableADR_Record.UserNameColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool IsUserNoNull() { + return this.IsNull(this.tableADR_Record.UserNoColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void SetUserNoNull() { + this[this.tableADR_Record.UserNoColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool IsDepartmentNull() { + return this.IsNull(this.tableADR_Record.DepartmentColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void SetDepartmentNull() { + this[this.tableADR_Record.DepartmentColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool IsADTypeNull() { + return this.IsNull(this.tableADR_Record.ADTypeColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void SetADTypeNull() { + this[this.tableADR_Record.ADTypeColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool IsADTimeNull() { + return this.IsNull(this.tableADR_Record.ADTimeColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void SetADTimeNull() { + this[this.tableADR_Record.ADTimeColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool IsClockTimeNull() { + return this.IsNull(this.tableADR_Record.ClockTimeColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void SetClockTimeNull() { + this[this.tableADR_Record.ClockTimeColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool IsClockStatusNull() { + return this.IsNull(this.tableADR_Record.ClockStatusColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void SetClockStatusNull() { + this[this.tableADR_Record.ClockStatusColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool IsClockPlaceNull() { + return this.IsNull(this.tableADR_Record.ClockPlaceColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void SetClockPlaceNull() { + this[this.tableADR_Record.ClockPlaceColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool IsADYearNull() { + return this.IsNull(this.tableADR_Record.ADYearColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void SetADYearNull() { + this[this.tableADR_Record.ADYearColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool IsADMonthNull() { + return this.IsNull(this.tableADR_Record.ADMonthColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void SetADMonthNull() { + this[this.tableADR_Record.ADMonthColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool IsADDayNull() { + return this.IsNull(this.tableADR_Record.ADDayColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void SetADDayNull() { + this[this.tableADR_Record.ADDayColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool IsADPhotoNull() { + return this.IsNull(this.tableADR_Record.ADPhotoColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void SetADPhotoNull() { + this[this.tableADR_Record.ADPhotoColumn] = global::System.Convert.DBNull; + } + } + + /// + ///Row event argument class + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public class ADR_RecordRowChangeEvent : global::System.EventArgs { + + private ADR_RecordRow eventRow; + + private global::System.Data.DataRowAction eventAction; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public ADR_RecordRowChangeEvent(ADR_RecordRow row, global::System.Data.DataRowAction action) { + this.eventRow = row; + this.eventAction = action; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public ADR_RecordRow Row { + get { + return this.eventRow; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataRowAction Action { + get { + return this.eventAction; + } + } + } + } +} + +#pragma warning restore 1591 \ No newline at end of file diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.xsc b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.xsc new file mode 100644 index 000000000..05b019913 --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.xsc @@ -0,0 +1,9 @@ + + + + + \ No newline at end of file diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.xsd b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.xsd new file mode 100644 index 000000000..5ff504ff0 --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.xsd @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.xss b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.xss new file mode 100644 index 000000000..668259331 --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/ADR_Record.xss @@ -0,0 +1,12 @@ + + + + + + + + \ No newline at end of file diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.cs b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.cs new file mode 100644 index 000000000..b156b6ba8 --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.cs @@ -0,0 +1,154 @@ +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +namespace Learun.Application.Web.Areas.LogisticsManagement.Views.ADR_Record { + using System; + using System.ComponentModel; + using CrystalDecisions.Shared; + using CrystalDecisions.ReportSource; + using CrystalDecisions.CrystalReports.Engine; + + + public class AttendanceReportByWeek : ReportClass { + + public AttendanceReportByWeek() { + } + + public override string ResourceName { + get { + return "AttendanceReportByWeek.rpt"; + } + set { + // Do nothing + } + } + + public override bool NewGenerator { + get { + return true; + } + set { + // Do nothing + } + } + + public override string FullResourceName { + get { + return "Learun.Application.Web.Areas.LogisticsManagement.Views.ADR_Record.AttendanceRepor" + + "tByWeek.rpt"; + } + set { + // Do nothing + } + } + + [Browsable(false)] + [DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)] + public CrystalDecisions.CrystalReports.Engine.Section Section1 { + get { + return this.ReportDefinition.Sections[0]; + } + } + + [Browsable(false)] + [DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)] + public CrystalDecisions.CrystalReports.Engine.Section Section2 { + get { + return this.ReportDefinition.Sections[1]; + } + } + + [Browsable(false)] + [DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)] + public CrystalDecisions.CrystalReports.Engine.Section Section3 { + get { + return this.ReportDefinition.Sections[2]; + } + } + + [Browsable(false)] + [DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)] + public CrystalDecisions.CrystalReports.Engine.Section Section4 { + get { + return this.ReportDefinition.Sections[3]; + } + } + + [Browsable(false)] + [DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)] + public CrystalDecisions.CrystalReports.Engine.Section Section5 { + get { + return this.ReportDefinition.Sections[4]; + } + } + } + + [System.Drawing.ToolboxBitmapAttribute(typeof(CrystalDecisions.Shared.ExportOptions), "report.bmp")] + public class CachedAttendanceReportByWeek : Component, ICachedReport { + + public CachedAttendanceReportByWeek() { + } + + [Browsable(false)] + [DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)] + public virtual bool IsCacheable { + get { + return true; + } + set { + // + } + } + + [Browsable(false)] + [DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)] + public virtual bool ShareDBLogonInfo { + get { + return false; + } + set { + // + } + } + + [Browsable(false)] + [DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)] + public virtual System.TimeSpan CacheTimeOut { + get { + return CachedReportConstants.DEFAULT_TIMEOUT; + } + set { + // + } + } + + public virtual CrystalDecisions.CrystalReports.Engine.ReportDocument CreateReport() { + AttendanceReportByWeek rpt = new AttendanceReportByWeek(); + rpt.Site = this.Site; + return rpt; + } + + public virtual string GetCustomizedCacheKey(RequestContext request) { + String key = null; + // // The following is the code used to generate the default + // // cache key for caching report jobs in the ASP.NET Cache. + // // Feel free to modify this code to suit your needs. + // // Returning key == null causes the default cache key to + // // be generated. + // + // key = RequestContext.BuildCompleteCacheKey( + // request, + // null, // sReportFilename + // this.GetType(), + // this.ShareDBLogonInfo ); + return key; + } + } +} diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.cshtml new file mode 100644 index 000000000..b0060ceda --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.cshtml @@ -0,0 +1,42 @@ +@{ + ViewBag.Title = "考勤记录"; + Layout = "~/Views/Shared/_Index.cshtml"; +} +
+
+
+
+
+
+
+
+
+
+
+
+
部门
+
+
+
+
打卡地点
+
+
+
+
打卡结果
+
+
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+@Html.AppendJsFile("/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.js") diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.js new file mode 100644 index 000000000..ae9095c0b --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.js @@ -0,0 +1,72 @@ +/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn) + * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 + * 创建人:超级管理员 + * 日 期:2020-08-28 18:09 + * 描 述:考勤记录 + */ +var refreshGirdData; +var bootstrap = function ($, learun) { + "use strict"; + var startTime; + var endTime; + var page = { + init: function () { + page.initGird(); + page.bind(); + }, + bind: function () { + // 时间搜索框 + $('#datesearch').lrdate({ + dfdata: [ + { name: '今天', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00') }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } }, + { name: '近7天', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'd', -6) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } }, + { name: '近1个月', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'm', -1) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } }, + { name: '近3个月', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'm', -3) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } } + ], + // 月 + mShow: false, + premShow: false, + // 季度 + jShow: false, + prejShow: false, + // 年 + ysShow: false, + yxShow: false, + preyShow: false, + yShow: false, + // 默认 + dfvalue: '1', + selectfn: function (begin, end) { + startTime = begin; + endTime = end; + page.search(); + } + }); + $('#multiple_condition_query').lrMultipleQuery(function (queryJson) { + page.search(queryJson); + }, 220, 400); + $('#Department').lrDepartmentSelect(); + $('#ADR_Device').lrDataSourceSelect({ code: 'ADR_Device', value: 'dname', text: 'dname' }); + $('#ADStatus').lrDataItemSelect({ code: 'ADStatus'}); + // 刷新 + $('#lr_refresh').on('click', function () { + location.reload(); + }); + + }, + // 初始化列表 + initGird: function () { + + }, + search: function (param) { + param = param || {}; + param.StartTime = startTime; + param.EndTime = endTime; + + } + }; + refreshGirdData = function () { + + }; + page.init(); +} diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.rpt b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/LogisticsManagement/Views/ADR_Record/AttendanceReportByWeek.rpt new file mode 100644 index 0000000000000000000000000000000000000000..9062f8c26da13be7c58ea98151867c56716122a5 GIT binary patch literal 49152 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 Y1QrljKwtrZ1q2olSU_Nb-&^4S0a8rvng9R* literal 0 HcmV?d00001 diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj b/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj index 56d836ee1..cf1b11e8f 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj @@ -57,6 +57,10 @@ ..\packages\ClosedXML.0.93.0\lib\net40\ClosedXML.dll + + + + ..\packages\DocumentFormat.OpenXml.2.8.1\lib\net46\DocumentFormat.OpenXml.dll @@ -72,24 +76,6 @@ ..\packages\FastMember.Signed.1.3.0\lib\net45\FastMember.Signed.dll - - ..\packages\Gcef.Data.ExpressionInfo.2.0.184\lib\net40\Gcef.Data.ExpressionInfo.dll - - - ..\packages\GrapeCity.ActiveReports.14.0.19484\lib\net462\GrapeCity.ActiveReports.dll - - - ..\packages\GrapeCity.ActiveReports.Aspnet.Viewer.14.0.1778\lib\net462\GrapeCity.ActiveReports.Aspnet.Viewer.dll - - - ..\packages\GrapeCity.ActiveReports.Core.Rdl.1.5.3300\lib\net462\GrapeCity.ActiveReports.Core.Rdl.dll - - - ..\packages\GrapeCity.ActiveReports.Core.Rendering.1.5.3300\lib\net462\GrapeCity.ActiveReports.Core.Rendering.dll - - - ..\packages\GrapeCity.ActiveReports.Web.Viewer.14.0.1778\lib\net462\GrapeCity.ActiveReports.Web.Viewer.dll - ..\packages\Hangfire.Core.1.7.3\lib\net45\Hangfire.Core.dll @@ -229,6 +215,7 @@ ..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll + ..\packages\System.Security.Cryptography.Algorithms.4.3.0\lib\net461\System.Security.Cryptography.Algorithms.dll @@ -374,6 +361,17 @@ + + True + True + ADR_Record.xsd + + + True + True + AttendanceReportByWeek.rpt + Component + @@ -1132,6 +1130,7 @@ + @@ -6801,6 +6800,18 @@ + + + ADR_Record.xsd + + + Designer + MSDataSetGenerator + ADR_Record.Designer.cs + + + ADR_Record.xsd + @@ -6868,6 +6879,16 @@ + + + CrystalDecisions.VSDesigner.CodeGen.ReportCodeGenerator + AttendanceReportByWeek.cs + + + + + + 10.0 $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Startup1.cs b/Learun.Framework.Ultimate V7/Learun.Application.Web/Startup1.cs index b071e0ce7..7b6a92122 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Startup1.cs +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Startup1.cs @@ -1,8 +1,4 @@ -using GrapeCity.ActiveReports; -using GrapeCity.ActiveReports.Aspnet.Viewer; -using GrapeCity.ActiveReports.PageReportModel; -using GrapeCity.ActiveReports.Rendering; -using Microsoft.Owin; +using Microsoft.Owin; using Owin; using System.Collections.Generic; using System.Data; @@ -20,103 +16,8 @@ namespace Learun.Application.Web public void Configuration(IAppBuilder app) { - app.UseReporting(settings => - { - - settings.UseCompression = true; - settings.UseCustomStore(GetReport);//使用UseCustomStore来自定义一些需要的值 - //settings.UseFileStore(new DirectoryInfo(String.Format(@"{0}.\Reports\", HttpRuntime.AppDomainAppPath))); - //settings.LocateDataSource = GetData; - - }); } - - - - public object GetReport(string P)//获取报表名称和报表参数,进行一个对应的报表名称和参数的分割 - { - var plist = P.Split('|'); - string reportName = plist[0];//报表名称; - PageReport rep = new PageReport(); - - - string path = Assembly.GetExecutingAssembly().CodeBase.Replace("bin/Learun.Application.Web.DLL", "Reports/").Replace("file:///", ""); - //string path = System.Web.Hosting.HostingEnvironment.MapPath("~/"); - rep.Load(new FileInfo(path + reportName)); - - int num = 0; - foreach (var item in plist) - { - if (num > 0) - { - AddReportPara("param" + num, item, rep); - } - - num++; - } - return rep.Report; - } - /// - /// 报表参数添加 - /// - /// 参数名 - /// 参数值 - /// 报表体 - private void AddReportPara(string name, string value, PageReport rep) - { - //如果没有值,报表不会自动运行,所以不能加 - if (string.IsNullOrEmpty(value.Trim())) - { - return; - } - - Dictionary dicParas = new Dictionary(); - foreach (var item in rep.Report.ReportParameters) - { - if (!dicParas.ContainsKey(item.Name)) - { - dicParas.Add(item.Name, item.DefaultValue.Values[0].Expression); - } - } - - if (!dicParas.ContainsKey(name)) - { - ReportParameter para = new ReportParameter(); - para.Name = name; - para.Prompt = name; - para.UsedInQuery = ReportParameterUsedInQuery.True; - para.DataType = ReportParameterDataType.String; - para.DefaultValue.Values.Add(value.Trim()); - rep.Report.ReportParameters.Add(para); - } - } - - - /// - /// 自定义数据源 - /// - /// 报表数据参数 - /// - //public object GetData(LocateDataSourceArgs args) - //{ - // Dictionary dcFilter = new Dictionary(); - // DataTable dtData = new DataTable(); - // string name = args.Report.Name.ToString(); - // string dataSource = args.DataSet.Query.DataSourceName; - // string dataSet = args.DataSet.Name; - // switch (name) - // { - // case "制程工单.rdlx": - // if (args.Report.ReportParameters.Count > 0) - // { - // var id = args.Report.ReportParameters[0].DefaultValue.Values[0].Expression; - // WorkOrderIBLL workOrderIBLL = new WorkOrderBLL(); - // dtData = workOrderIBLL.GetPrintItem(id); - // } - // break; - // } - // return dtData; - //} + } } diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Web.config b/Learun.Framework.Ultimate V7/Learun.Application.Web/Web.config index 32784da03..192eb3f2a 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Web.config +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Web.config @@ -11,9 +11,19 @@
+ + + +
+
+
+ + + - + + + + + + + + + @@ -43,6 +62,16 @@ + + + + + + + + + + diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/XmlConfig/database.config b/Learun.Framework.Ultimate V7/Learun.Application.Web/XmlConfig/database.config index 7ff661a4e..4c61d0f2b 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/XmlConfig/database.config +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/XmlConfig/database.config @@ -19,6 +19,7 @@ + diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/packages.config b/Learun.Framework.Ultimate V7/Learun.Application.Web/packages.config index de874af0b..c2660407f 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.Web/packages.config +++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/packages.config @@ -4,6 +4,7 @@ + diff --git a/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/DesktopApi.cs b/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/DesktopApi.cs index 9aaa6c615..5ade39af5 100644 --- a/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/DesktopApi.cs +++ b/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/DesktopApi.cs @@ -161,7 +161,6 @@ namespace Learun.Application.WebApi.Modules { Id = param.id, value = dtnew - }; } else diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Util/Learun.Util/DataBase/DataConvert.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Util/Learun.Util/DataBase/DataConvert.cs new file mode 100644 index 000000000..76ea34152 --- /dev/null +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Util/Learun.Util/DataBase/DataConvert.cs @@ -0,0 +1,92 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Linq; +using System.Reflection; +using System.Text; +using System.Threading.Tasks; + +namespace Learun.Util.DataBase +{ + public static class DataConvert + { + public static DataTable ToDataTable(this IEnumerable varlist) + { + DataTable dtReturn = new DataTable(); + // column names + PropertyInfo[] oProps = null; + // Could add a check to verify that there is an element 0 + foreach (T rec in varlist) + { + if (oProps == null) + { + oProps = ((Type)rec.GetType()).GetProperties(); + + foreach (PropertyInfo pi in oProps) + { + Type colType = pi.PropertyType; if ((colType.IsGenericType) && (colType.GetGenericTypeDefinition() == typeof(Nullable<>))) + { + colType = colType.GetGenericArguments()[0]; + } + dtReturn.Columns.Add(new DataColumn(pi.Name, colType)); + } + } + + DataRow dr = dtReturn.NewRow(); foreach (PropertyInfo pi in oProps) + { + dr[pi.Name] = pi.GetValue(rec, null) == null ? DBNull.Value : pi.GetValue(rec, null); + } + dtReturn.Rows.Add(dr); + } + return (dtReturn); + } + public static DataSet ConvertToDataSet(IList list) + { + if (list == null || list.Count <= 0) + return null; + + DataSet ds = new DataSet(); + DataTable dt = new DataTable(typeof(T).Name); + DataColumn column; + DataRow row; + + System.Reflection.PropertyInfo[] myPropertyInfo = + typeof(T).GetProperties(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance); + + foreach (T t in list) + { + if (t == null) continue; + row = dt.NewRow(); + + for (int i = 0, j = myPropertyInfo.Length; i < j; i++) + { + System.Reflection.PropertyInfo pi = myPropertyInfo[i]; + String name = pi.Name; + + if (dt.Columns[name] == null) + { + if (pi.PropertyType.UnderlyingSystemType.ToString() == "System.Nullable`1[System.Int32]") + { + column = new DataColumn(name, typeof(Int32)); + dt.Columns.Add(column); + //row[name] = pi.GetValue(t, new object[] {i});//PropertyInfo.GetValue(object,object[]) + if (pi.GetValue(t, null) != null) + row[name] = pi.GetValue(t, null); + else + row[name] = System.DBNull.Value; + } + else + { + column = new DataColumn(name, pi.PropertyType); + dt.Columns.Add(column); + row[name] = pi.GetValue(t, null); + } + } + } + dt.Rows.Add(row); + } + ds.Tables.Add(dt); + return ds; + } + } +} diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Util/Learun.Util/Learun.Util.csproj b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Util/Learun.Util/Learun.Util.csproj index 8a2cc16d0..d5d72d7fd 100644 --- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Util/Learun.Util/Learun.Util.csproj +++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Util/Learun.Util/Learun.Util.csproj @@ -89,6 +89,7 @@ + diff --git a/Learun.Framework.Ultimate V7/Quanjiang.DigitalScholl.JobService/Service1.cs b/Learun.Framework.Ultimate V7/Quanjiang.DigitalScholl.JobService/Service1.cs index 0066c3ded..a5546dc84 100644 --- a/Learun.Framework.Ultimate V7/Quanjiang.DigitalScholl.JobService/Service1.cs +++ b/Learun.Framework.Ultimate V7/Quanjiang.DigitalScholl.JobService/Service1.cs @@ -1,4 +1,5 @@ -using System.ServiceProcess; +using System; +using System.ServiceProcess; using Hangfire; namespace Quanjiang.DigitalScholl.JobService diff --git a/Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net40/zh-Hans/EntityFramework.SqlServer.resources.dll b/Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net40/zh-Hans/EntityFramework.SqlServer.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..da4531e8d1b5f72d5cc229094cd58cd61d30b6e9 GIT binary patch literal 19664 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 + + + EntityFramework.SqlServer + + + + 一个 ,它重试引发 SQL Azure 瞬态错误导致的异常的操作。 + + + 创建 的新实例。 + + + 使用指定的重试次数限制值和两次重试之间的延迟时间创建 类的新实例。 + 最大重试次数。 + 两次重试之间的最大延迟时间(毫秒)。 + + + 确定在出现指定的异常时是否应重试。 + 如果在出现指定的异常时应重试,则为 true;否则为 false。 + 要重试的异常。 + + + 包含在 Linq to Entities 中公开 SqlServer 方法的函数存根。 + + + 一个数学函数,该函数返回其余弦为指定数值的角(以弧度表示)。此角称作反余弦。 + 以弧度计量的角度。 + 角的余弦。 + + + 一个数学函数,该函数返回其余弦为指定数值的角(以弧度表示)。此角称作反余弦。 + 由输入余弦值定义的角,以弧度表示。 + 角的余弦。 + + + 返回字符表达式中最左侧字符的 ASCII 代码值。 + 输入字符串中第一个字符的 ASCII 代码。 + 一个有效的字符串。 + + + 一个数学函数,该函数返回其正弦为指定数值的角(以弧度表示)。此角称作反正弦。 + 以弧度计量的角度。 + 角的正弦。 + + + 一个数学函数,该函数返回其正弦为指定数值的角(以弧度表示)。此角称作反正弦。 + 以弧度计量的角度。 + 角的正弦。 + + + 一个数学函数,该函数返回其正切为指定数值的角(以弧度表示)。此角称作反正切。 + 以弧度计量的角度。 + 角的正切。 + + + 一个数学函数,该函数返回其正切为指定数值的角(以弧度表示)。此角称作反正切。 + 以弧度计量的角度。 + 角的正切。 + + + 返回以弧度表示的正角,该角由正 x 轴和从原点到点 (x, y) 的射线构成,其中 x 和 y 是两个指定的数值。传递给函数的第一个参数和第二参数分别为 y 值和 x 值。 + 以弧度计量的角度。 + 点的 y 坐标。 + 点的 x 坐标。 + + + 返回以弧度表示的正角,该角由正 x 轴和从原点到点 (x, y) 的射线构成,其中 x 和 y 是两个指定的数值。传递给函数的第一个参数和第二参数分别为 y 值和 x 值。 + 以弧度计量的角度。 + 点的 y 坐标。 + 点的 x 坐标。 + + + 返回与指定的整数 ASCII 值相对应的字符。 + 与指定的 ASCII 值相对应的字符。 + ASCII 代码。 + + + 返回在一个表达式中找到的另一个表达式的起始位置。 + 目标的起始位置(如果在 toSearch 中找到)。 + 要在其中搜索的字符串表达式。 + 要查找的字符串表达式。 + + + 返回在一个表达式中找到的另一个表达式的起始位置。 + 目标的起始位置(如果在 toSearch 中找到)。 + 要在其中搜索的字符串表达式。 + 要查找的字符串表达式。 + 搜索开始的 toSearch 中的字符位置。 + + + 返回在一个表达式中找到的另一个表达式的起始位置。 + 目标的起始位置(如果在 toSearch 中找到)。 + 要在其中搜索的字符串表达式。 + 要查找的字符串表达式。 + toSearch 中在其开始搜索的字符位置。 + + + 返回在一个表达式中找到的另一个表达式的起始位置。 + 目标的起始位置(如果在 toSearch 中找到)。 + 要在其中搜索的字符串表达式。 + 要查找的字符串表达式。 + + + 返回在一个表达式中找到的另一个表达式的起始位置。 + 目标的起始位置(如果在 toSearch 中找到)。 + 要在其中搜索的字符串表达式。 + 要查找的字符串表达式。 + 搜索开始的 toSearch 中的字符位置。 + + + 返回在一个表达式中找到的另一个表达式的起始位置。 + + 值的 ,该值是目标的起始位置(如果在 toSearch 中找到)。 + 要在其中搜索的字符串表达式。 + 要查找的字符串表达式。 + 搜索开始的 toSearch 中的字符位置。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 为其计算校验和的字符数组。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 为其计算校验和的字符数组。 + 为其计算校验和的字符数组。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 为其计算校验和的字符数组。 + 为其计算校验和的字符数组。 + 为其计算校验和的字符数组。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回集合中各值的校验和。Null 值将被忽略。 + 基于输入集合计算出的校验和。 + 对其计算校验和的各值的集合。 + + + 返回集合中各值的校验和。Null 值将被忽略。 + 基于输入集合计算出的校验和。 + 对其计算校验和的各值的集合。 + + + 返回指定表达式中指定角(以弧度表示)的三角余弦。 + 指定角的三角余弦。 + 以弧度计量的角度。 + + + 返回指定表达式中指定角(以弧度表示)的三角余弦。 + 指定角的三角余弦。 + 以弧度计量的角度。 + + + 一个数学函数,该函数返回指定角(以弧度表示)的三角余切。 + 指定角的三角余切。 + 以弧度计量的角度。 + + + 一个数学函数,该函数返回指定角(以弧度表示)的三角余切。 + 指定角的三角余切。 + 以弧度计量的角度。 + + + 返回当前日期和时间。 + 当前日期和时间。 + + + 返回当前用户的名称。 + 当前用户的名称。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 向指定的日期添加间隔,以此返回新的日期时间值。 + 新的日期。 + 要递增的日期部分。 + 用于按指定量递增日期的值。 + 要递增的日期。 + + + 向指定的日期添加间隔,以此返回新的日期值。 + 相对于协调世界时 (UTC) 的新时间点,以日期和时间来表示。 + 要递增的日期部分。 + 用于按指定量递增日期的值。 + 要递增的日期。 + + + 向指定的时间跨度添加间隔,以此返回新的时间跨度值。 + 新的时间跨度。 + 要递增的日期部分。 + 用于按指定量递增日期的值。 + 要递增的时间跨度。 + + + 向指定的日期添加间隔,以此返回新的日期时间值。 + 表示新日期的 值的 + 要递增的日期部分。 + 用于按指定量递增日期的值。 + 要递增的日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 指定两个日期之间的时间间隔数的值。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回一个字符串,该字符串表示指定日期的指定日期部分。 + 指定日期的指定部分。 + 要计算时间间隔差值的日期部分。 + 日期。 + + + 返回一个字符串,该字符串表示指定日期的指定日期部分。 + 指定日期的指定部分。 + 要计算时间间隔差值的日期部分。 + 日期。 + + + 返回一个字符串,该字符串表示指定日期的指定日期部分。 + 指定日期的指定部分。 + 要计算时间间隔差值的日期部分。 + 日期。 + + + 返回一个字符串,该字符串表示指定日期的指定日期部分。 + 指定日期的指定部分。 + 要计算时间间隔差值的日期部分。 + 日期。 + + + 返回表示指定日期的指定日期部分的整数。 + 指定日期的指定日期部分。 + 要返回值的日期部分。 + 日期。 + + + 返回表示指定日期的指定日期部分的整数。 + 指定日期的指定日期部分。 + 要返回值的日期部分。 + 日期。 + + + 返回表示指定日期的指定日期部分的整数。 + 指定日期的指定日期部分。 + 要返回值的日期部分。 + 日期。 + + + 返回表示指定日期的指定日期部分的整数。 + 指定日期的指定日期部分。 + 要返回值的日期部分。 + 日期。 + + + 为以弧度指定的角返回对应的以度数表示的角。 + 转换为度数的指定角。 + 以弧度计量的角度。 + + + 为以弧度指定的角返回对应的以度数表示的角。 + 转换为度数的指定角。 + 以弧度计量的角度。 + + + 为以弧度指定的角返回对应的以度数表示的角。 + 转换为度数的指定角。 + 以弧度计量的角度。 + + + 为以弧度指定的角返回对应的以度数表示的角。 + 转换为度数的指定角。 + 以弧度计量的角度。 + + + 返回指示两个字符表达式的 SOUNDEX 值之差的整数值。 + 两个字符串之间的 SOUNDEX 差值。 + 第一个字符串。 + 第二个字符串。 + + + 返回所指定浮点表达式的指数值。 + 以常数 e 为底、以输入值为指数的幂。 + 输入值。 + + + 返回所指定浮点表达式的指数值。 + 以常数 e 为底、以输入值为指数的幂。 + 输入值。 + + + 将当前数据库系统时间戳作为日期时间值返回,不含数据库时区偏移量。此值派生自运行 SQL Server 实例的计算机上使用的操作系统。 + 当前的数据库时间戳。 + + + 将当前数据库系统时间戳作为日期时间值返回。不包含数据库时区偏移量。此值表示当前 UTC 时间(协调世界时)。此值派生自运行 SQL Server 实例的计算机上使用的操作系统。 + 当前的数据库 UTC 时间戳。 + + + 返回工作站名称。 + 工作站的名称。 + + + 指示输入值是否为有效的日期或时间。 + 如果输入表达式是 datetime 或 smalldatetime 数据类型的有效日期或时间值,则为 1;否则为 0。 + 所测试的值。 + + + 指示输入值是否为有效的数值类型。 + 如果输入表达式是有效的数值类型,则为 1;否则为 0。 + 字符串表达式。 + + + 返回所指定输入值的自然对数。 + 输入值的自然对数。 + 数值表达式。 + + + 返回所指定输入值的自然对数。 + 输入值的自然对数。 + 数值表达式。 + + + 返回所指定输入值以 10 为底的对数。 + 输入值的以 10 为底的对数。 + 数值表达式。 + + + 返回所指定输入值以 10 为底的对数。 + 输入值的以 10 为底的对数。 + 数值表达式。 + + + 根据 Unicode 标准的定义,返回具有所指定整数代码的 Unicode 字符。 + 与输入字符代码相对应的字符。 + 字符代码。 + + + 返回模式在指定表达式中首次出现的起始位置;如果在所有有效的文本和字符数据类型上未找到模式,则为零。 + 找到字符串模式的起始字符位置。 + 要搜索的字符串模式。 + 要搜索的字符串。 + + + 返回 pi 的常量值。 + pi 的数值。 + + + 返回一个 Unicode 字符串,其中添加有分隔符,以使输入字符串成为有效的 Microsoft SQL Server 分隔标识符。 + 添加有方括号的原始字符串。 + 要将引号字符添加到其中的表达式。 + + + 返回一个 Unicode 字符串,其中添加有分隔符,以使输入字符串成为有效的 Microsoft SQL Server 分隔标识符。 + 添加有指定引号字符的原始字符串。 + 要将引号字符添加到其中的表达式。 + 将用作分隔符的单字符字符串。它可以是单引号 (')、左方括号或右方括号 ([ ]) 或者英文双引号 (")。如果未指定 quote_character,则使用方括号。 + + + 为以度数指定的角返回对应的弧度度量值。 + 所指定角的弧度度量值。 + 以度数为单位的角。 + + + 为以度数指定的角返回对应的弧度度量值。 + 所指定角的弧度度量值。 + 以度数为单位的角。 + + + 为以度数指定的角返回对应的弧度度量值。 + 所指定角的弧度度量值。 + 以度数为单位的角 + + + 为以度数指定的角返回对应的弧度度量值。 + 所指定角的弧度度量值。 + 以度数为单位的角 + + + 返回一个 0 到 1(均不含)之间的伪随机浮点值。 + 伪随机值。 + + + 返回一个 0 到 1(均不含)之间的伪随机浮点值。 + 伪随机值。 + 种子值。如果未指定种子,则 SQL Server 数据库引擎将随机分配种子值。对于指定的种子值,返回的结果始终相同。 + + + 将一个字符串值重复指定的次数。 + 重复了由计数所指定的次数的目标字符串。 + 一个有效的字符串。 + 指定目标重复多少次的值。 + + + 返回指定表达式的正号 (+1)、零 (0) 或负号 (-1)。 + 输入表达式的符号。 + 数值表达式。 + + + 返回指定表达式的正号 (+1)、零 (0) 或负号 (-1)。 + 输入表达式的符号。 + 数值表达式。 + + + 返回指定表达式的正号 (+1)、零 (0) 或负号 (-1)。 + 输入表达式的符号。 + 数值表达式。 + + + 返回指定表达式的正号 (+1)、零 (0) 或负号 (-1)。 + 输入表达式的符号。 + 数值表达式。 + + + 返回所指定角的三角正弦。 + 输入表达式的三角正弦。 + 以弧度计量的角度。 + + + 返回所指定角的三角正弦。 + 输入表达式的三角正弦。 + 以弧度计量的角度。 + + + 将字母数字字符串转换为由四个字符组成的 (SOUNDEX) 代码,以便查找发音相似的字词或名称。 + 输入字符串的 SOUNDEX 代码。 + 一个有效的字符串。 + + + 返回由重复空格组成的字符串。 + 由指定数量的空格组成的字符串。 + 空格数。如果为负,则返回 null 字符串。 + + + 返回所指定数字的平方。 + 输入值的平方。 + 数值表达式。 + + + 返回所指定数字的平方。 + 输入值的平方。 + 数值表达式。 + + + 返回指定数字的平方根。 + 输入值的平方根。 + 数值表达式。 + + + 返回指定数字的平方根。 + 输入值的平方根。 + 数值表达式。 + + + 返回从数值数据转换的字符数据。 + 转换为字符串的输入表达式。 + 数值表达式。 + + + 返回从数值数据转换的字符数据。 + 转换为字符串的输入表达式。 + 数值表达式。 + 字符串的总长度。它包括小数点、符号、数字以及空格。默认值为 10。 + + + 返回从数值数据转换的字符数据。 + 转换为字符串的输入表达式。 + 数值表达式。 + 字符串的总长度。它包括小数点、符号、数字以及空格。默认值为 10。 + 小数点右侧的位数。小数必须小于或等于 16 位。如果小数超过 16 位,则会将结果截断至小数点右侧 16 位。 + + + 返回从数值数据转换的字符数据。 + 转换为字符串的数字输入表达式。 + 数值表达式。 + + + 返回从数值数据转换的字符数据。 + 转换为字符串的数字输入表达式。 + 数值表达式。 + 字符串的总长度。它包括小数点、符号、数字以及空格。默认值为 10。 + + + 返回从数值数据转换的字符数据。 + 转换为字符串的数字输入表达式。 + 数值表达式。 + 字符串的总长度。它包括小数点、符号、数字以及空格。默认值为 10。 + 小数点右侧的位数。小数必须小于或等于 16 位。如果小数超过 16 位,则会将结果截断至小数点右侧 16 位。 + + + 将一个字符串插入另一个字符串。这会从目标字符串中的起始位置开始,删除指定长度的字符,然后在目标字符串中的起始位置处,插入第二个字符串。 + 由两个字符串组成的字符串。 + 目标字符串。 + stringinput 中要插入替换字符串的字符位置。 + 要从 stringInput 删除的字符数。如果长度比 stringInput 长,则最多删除到 stringReplacement 中的最后一个字符。 + 要插入 stringInput 中的子字符串。 + + + 返回输入表达式的三角正切。 + 输入角的正切。 + 以弧度计量的角度。 + + + 返回输入表达式的三角正切。 + 输入角的正切。 + 以弧度计量的角度。 + + + 根据 Unicode 标准的定义,返回输入表达式中第一个字符的整数值。 + 输入字符串中第一个字符的字符代码。 + 一个有效的字符串。 + + + 返回与所指定标识号相对应的数据库用户名。 + 用户名。 + + + 返回与所指定标识号相对应的数据库用户名。 + 用户名。 + 用户 ID。 + + + SQL Server 的 SqlClient 提供程序的 DbProviderServices 实现。 + + + SqlProviderServices 类型的单一实例。 + + . + + + 这是已知的字符串,在配置文件和基于代码的配置中用作“提供程序固定名称”,用于指定 Microsoft SQL Server for ADO.NET 和实体框架提供程序服务。 + + + 注册一个处理程序,以处理来自数据库提供程序的非错误消息。 + 用来接收信息的连接。 + 用于处理消息的处理程序。 + + + 设置为 Microsoft.SqlServer.Types 程序集的全名来重写默认选择 + + + 将该标志设置为 false 可防止 值被截断到为列定义的小数位数。默认值为 true,指示将截断小数值,以便避免中断依赖于此行为的现有应用程序。 + 返回 + + + 表示可将提供程序不可知的迁移操作转换为可对 Microsoft SQL Server 数据库运行的 SQL 命令的提供程序。 + + + 初始化 类的新实例。 + + + 生成 SQL 以指定列的数据类型。此方法只生成实际类型,而不生成 SQL 创建列。 + 表示数据类型的 SQL。 + 列的定义。 + + + 为当前提供程序创建空连接。允许派生提供程序使用 之外的连接。 + 当前提供程序的空连接。 + + + 调用此方法以生成将尝试删除创建列时所创建的默认约束的 SQL。此方法通常由重写列的创建或更改的代码调用。 + 应用约束的表。 + 应用约束的列。 + 生成的 SQL 应写入的编写器。 + + + 生成 SQL 以指定将在列上设置的常量 bool 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量 byte[] 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 将一组迁移操作转换为 Microsoft SQL Server 特定 SQL。 + 为执行迁移操作而要执行的 SQL 语句的列表。 + 要转换的操作。 + 表示将面向的 SQL Server 版本的标记(即“2005", "2008"). + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成指定的更改过程操作。 + 更改过程操作。 + + + 重写此方法以在表的定义或其属性发生更改时生成 SQL。此方法的默认实现不执行任何操作。 + 描述对表的更改的操作。 + + + 为给定列模型生成 SQL。此方法由处理列的其他方法调用,并且可重写此方法以更改生成的 SQL。 + 要为其生成 SQL 的列。 + 生成的 SQL 应写入的编写器。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成指定的创建过程操作。 + 创建过程操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成指定的删除过程操作。 + 删除过程操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。允许派生提供程序处理其他操作类型。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成指定的移动过程操作。 + 移动过程操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成指定的重命名过程操作。 + 重命名过程操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成表示应用一系列迁移的指定更新数据库操作。生成的脚本是幂等的,这意味着其中包含检查是否已应用各迁移以及仅应用挂起迁移的条件逻辑。 + 更新数据库操作。 + + + 生成 SQL 以指定将在列上设置的常量 geogrpahy 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量 geometry 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量 DateTime 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量 DateTimeOffset 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量 Guid 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量字符串默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量 TimeSpan 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以创建数据库架构。应使用 Statement 方法添加生成的 SQL。 + 要创建的架构的名称。 + + + 生成 SQL 以将表标记为系统表。应使用 Statement 方法添加生成的 SQL。 + 要标记为系统表的表。 + 向其中写入生成的 SQL 的 。 + + + 为存储过程生成 SQL 主体。 + 存储过程的 SQL 主体。 + 表示针对插入、更新或删除操作的命令的命令目录树。 + 影响了参数名称的行。 + 提供程序清单标记。 + + + 返回要在迁移中没有显式指定默认值时用于存储生成的 GUID 列的列默认值。为本地 SQL Server 2005 和更高版本返回 newsequentialid()。为 SQL Azure 返回 newid()。 + 如上所述的 newsequentialid() 或 newid()。 + + + 生成带引号的名称。提供的名称可能包含或不包含架构。 + 带引号的名称。 + 要用引号引起来的名称。 + + + 将 SQL Server 的标识符用引号引起来。 + 保存的标识符。 + 要用引号引起来的标识符。 + + + 添加新的要针对数据库执行的 Statement。 + 包含要执行的 SQL 的编写器。 + 数据库提供程序的批处理终止符。 + + + 添加新的要针对数据库执行的 Statement。 + 要执行的语句。 + 指示是否应在用于进行迁移过程事务的事务范围外执行此语句。如果设置为 true,则在迁移过程失败时,不会回滚此操作。 + 数据库提供程序的批处理终止符。 + + + 将 sql 字符串拆分为一个或多个语句,必要时处理 T-SQL 实用工具语句。 + 要拆分为一个或多个语句来执行的 SQL。 + 获取或设置指示是否应在用于进行迁移过程事务的事务范围外执行此语句的值。如果设置为 true,则在迁移过程失败时,不会回滚此操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 将 CREATE TABLE SQL 写入目标编写器。 + 为之生成 SQL 的操作。 + 目标编写器。 + + + 获取新的可用于生成 SQL 的 。这只是用于创建编写器的帮助器方法。写入编写器将不会导致注册要执行的 SQL。必须将生成的 SQL 传递给 Statement 方法。 + 用于 SQL 生成的空文本编写器。 + + + 包含在 Linq to Entities 中公开 SqlServer 方法的函数存根。 + + + 返回地理实例的开放地理空间信息联盟 (OGC) 已知文本 (WKT) 表示形式,通过实例携带的 Z(海拔)和 M(度量)值扩充该实例。 + 地理实例的开放地理空间信息联盟 (OGC) 已知文本 (WKT) 表示形式。 + 地理值。 + + + 返回地理实例的开放地理空间信息联盟 (OGC) 已知文本 (WKT) 表示形式,通过实例携带的 Z(海拔)和 M(度量)值扩充该实例。 + 几何实例的开放地理空间信息联盟 (OGC) 已知文本 (WKT) 表示形式。 + 几何值。 + + + 返回一个几何对象,它表示针对允许的指定公差,与地理实例之间的距离小于或等于指定值的所有点的并集。 + 与地理实例之间的距离小于或等于指定值的所有点的并集 + 地理值。 + 距离。 + 指定的公差。 + 指定公差值是相对的还是绝对的。 + + + 返回一个几何对象,它表示针对允许的指定公差,与几何实例之间的距离小于或等于指定值的所有点的并集。 + 与几何实例之间的距离小于或等于指定值的所有点的并集。 + 几何值。 + 距离。 + 指定的公差。 + 指定公差值是相对的还是绝对的。 + + + 返回由 EnvelopeCenter() 返回的点与地理实例的点之间的最大角度(度)。 + EnvelopeCenter() 返回的点之间的最大角度。 + 地理值。 + + + 返回可用作地理实例的边界圆中心的点。 + 指定边界圆的中心位置的 SqlGeography 值。 + 地理值。 + + + 提供快速的、只对交集编制索引的方法,以确定地理实例是否与另一 SqlGeography 实例相交(假定索引可用)。 + 如果某一地理实例可能与另一 SqlGeography 实例相交,则为 true;否则为 false。 + 地理值。 + 要与调用筛选器的实例进行比较的另一地理实例。 + + + 提供快速的、只对交集编制索引的方法,以确定地理实例是否与另一 SqlGeometry 实例相交(假定索引可用)。 + 如果某一地理实例可能与另一 SqlGeography 实例相交,则为 true;否则为 false。 + 几何值。 + 要与调用筛选器的实例进行比较的另一地理实例。 + + + 测试 SqlGeography 实例是否与指定的类型相同。 + 一个字符串,它指定在地理类型层次结构中公开的 12 种类型之一。 + 地理值。 + 一个字符串,它指定在地理类型层次结构中公开的 12 种类型之一。 + + + 测试 SqlGeometry 实例是否与指定的类型相同。 + 一个字符串,它指定在地理类型层次结构中公开的 12 种类型之一。 + 几何值。 + 一个字符串,它指定在地理类型层次结构中公开的 12 种类型之一。 + + + 将无效的几何实例转换为具有有效开放地理空间信息联盟 (OGC) 类型的几何实例。 + 已转换的几何实例。 + 几何值。 + + + 返回多边形实例中的总环数。 + 总环数。 + 地理值。 + + + 构造一个地理实例,它表示来自其 x 和 y 值以及空间引用 ID (SRID) 中的点实例。 + 构造的地理实例。 + 正在生成的点的 x 坐标。 + 正在生成的点的 y 坐标 + 地理实例的 SRID。 + + + 构造一个几何实例,它表示来自其 x 和 y 值以及空间引用 ID (SRID) 中的点实例。 + 构造的几何实例。 + 正在生成的点的 x 坐标。 + 正在生成的点的 y 坐标 + 地理实例的 SRID。 + + + 返回对具有给定公差的实例运行 Douglas-Peucker 算法而生成的给定地理实例的近似值。 + 返回 + 地理值。 + 输入到 Douglas-Peucker 算法的公差。公差必须是正数。 + + + 返回对具有给定公差的实例运行 Douglas-Peucker 算法而生成的给定地理实例的近似值。 + 返回 + 几何值。 + 输入到 Douglas-Peucker 算法的公差。公差必须是正数。 + + + 返回 SqlGeography 实例的指定环:1 ≤ n ≤ NumRings()。 + 表示由 n 指定的环的 SqlGeography 对象。 + 地理值。 + 介于 1 到多边形实例中的环数之间的整数表达式。 + + + 表示将实体框架与 Microsoft SQL Server 结合使用时将为地理空间类型提供支持的 的实现。 + + + 获取给定 值的已知二进制表示形式。 + 给定 值的已知二进制表示形式。 + 应为其生成已知二进制的地理值。 + + + 获取给定 值的已知二进制表示形式。 + 给定 值的已知二进制表示形式。 + 应为其生成已知二进制的几何值。 + + + 生成此 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeography 值的 GML 表示形式的字符串。 + 应生成 GML 的地理值。 + + + 生成此 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeometry 值的 GML 表示形式的字符串。 + 应生成 GML 的几何值。 + + + 获取给定 值的已知文本表示形式。此值仅应包含点的经度和纬度。 + 一个字符串,包含 的已知文本表示形式。 + 应为其生成已知文本的地理值。 + + + 获取给定 值的已知文本表示形式,仅包含点的 X 和 Y 坐标。 + 一个字符串,包含 的已知文本表示形式。 + 应为其生成已知文本的几何值。 + + + 返回 带有海拔和测量值的文本表示形式。 + + 的文本表示形式。 + 地理值。 + + + 返回 带有海拔和测量值的文本表示形式。 + + 的文本表示形式。 + 几何值。 + + + 创建一个地理值,该值表示所有距离小于或等于所给定 值的点。 + 一个新 DbGeography 值,表示所有距离小于或等于 的点。 + 地理值。 + 指定从 到缓冲区距离的双精度值。 + + + 创建一个几何值,该值表示所有距离小于或等于所给定 的点。 + 一个新 DbGeography 值,表示所有距离小于或等于 的点。 + 几何值。 + 指定从 到缓冲区距离的双精度值。 + + + 确定一个 值是否在空间上包含另一个值。 + 如果 包含 ,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + + 基于指定的已知 表示形式,创建一个兼容此空间服务实现的提供程序特定值。 + 一个提供程序特定的值,它按与此空间服务实现兼容的方式对 中包含的信息编码。 + 一个 实例,包含地理值的此已知表示形式。 + + + 基于指定的已知 表示形式,创建一个兼容此空间服务实现的提供程序特定值。 + 一个提供程序特定的值,它按与此空间服务实现兼容的方式对 中包含的信息编码。 + 一个 实例,包含几何值的此已知表示形式。 + + + 使用其中一个或这两个标准已知空间格式,创建表示指定 值的 实例。 + + 的已知表示形式,作为新的 + 地理值。 + + + 使用其中一个或这两个标准已知空间格式,创建表示指定 值的 实例。 + + 的已知表示形式,作为新的 + 几何值。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 相交,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + + 计算两个 值的差异。 + 表示 的差异的新的 DbGeography 值。 + 第一个地理值。 + 第二个地理值。 + + + 计算两个 值的差异。 + 表示 的差异的新的 DbGeometry 值。 + 第一个几何值。 + 第二个几何值。 + + + 确定两个给定的 值是否在空间上不相交。 + 如果 不与 相交,则为 true;否则为 false。 + 用来比较不相交性的第一个地理值。 + 用来比较不相交性的第二个地理值。 + + + 确定两个给定的 值是否在空间上不相交。 + 如果 不与 相交,则为 true;否则为 false。 + 用来比较不相交性的第一个几何值。 + 用来比较不相交性的第二个几何值。 + + + 计算两个 值中最接近的点之间的距离。 + 指定 中两个最接近的点之间的距离的双精度值。 + 第一个地理值。 + 第二个地理值。 + + + 计算两个 值中最接近的点之间的距离。 + 指定 中两个最接近的点之间的距离的双精度值。 + 第一个地理值。 + 第二个地理值。 + + + 如果表示地理集合,则返回给定 值的元素。 + 如果表示其他地理值的集合,则为在位置 处的 中的元素;否则为 null。 + 不需要表示地理集合的地理值。 + 在地理值中应提取元素的位置。 + + + 如果表示几何集合,则返回给定 值的元素。 + 如果表示其他地理值的集合,则为在位置 处的 中的元素;否则为 null。 + 不需要表示几何集合的几何值。 + 在几何值中应提取元素的位置。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值创建新的 值。 + 一个新 值,由已知二进制值使用默认 坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 一个新 值,由 GML 值使用默认 坐标系统标识符 (SRID) () 进行定义。 + 包含地理值的几何标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由 GML 值使用指定的坐标系标识符 (SRID) 进行定义。 + 包含地理值的几何标记语言 (GML) 表示形式的字符串。 + 值应使用的坐标系标识符。 + + + 基于与此空间服务实现兼容的提供程序特定的值创建新的 值。 + 一个新 DbGeometry 值,它受此空间服务实现和指定提供程序值的支持。 + 此空间服务实现可将其解释为地理值的提供程序特定的值。 + + + 基于指定的已知文本值创建新的 值。 + 一个新 值,由已知文本值使用默认 坐标系标识符 (SRID) 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值创建新的 值。 + 一个新 值,由已知二进制值使用默认 坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 一个新 值,由 GML 值使用默认 坐标系统标识符 (SRID) () 进行定义。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由 GML 值使用指定的坐标系标识符 (SRID) 进行定义。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + 值应使用的坐标系标识符。 + + + 基于与此空间服务实现兼容的提供程序特定的值创建新的 值。 + 一个新 DbGeometry 值,它受此空间服务实现和指定提供程序值的支持。 + 此空间服务实现可将其解释为几何值的提供程序特定的值。 + + + 基于指定的已知文本值创建新的 值。 + 一个新 值,由已知文本值使用默认 坐标系标识符 (SRID) 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 返回一个指示给定 值的面积、可以为 null 的双精度值,如果该值不表示面则可能为 null。 + 一个可以为 null 的双精度值,指示给定的 值的面积。 + 不需要表示面的地理值。 + + + 返回一个指示给定 值的面积、可以为 null 的双精度值,如果该值不表示面则可能为 null。 + 一个可以为 null 的双精度值,指示给定的 值的面积。 + 不需要表示面的几何值。 + + + 返回一个指示给定 值的边界、可以为 null 的双精度值。 + 给定 值的边界。 + 几何值。 + + + 返回表示给定 DbGeometry 值形心的 值,如果该值不表示面则可能为 null。 + 如果 表示面,则为它的形心;否则为 null。 + 不需要表示面的几何值。 + + + 返回一个指示给定 值的凸包、可以为 null 的双精度值。 + 给定 值的凸包。 + 几何值。 + + + 返回给定 值的坐标系标识符。 + 给定 值的坐标系标识符。 + 地理值。 + + + 返回给定 值的坐标系标识符。 + 给定 值的坐标系标识符。 + 几何值。 + + + 获取给定 值的维度(如果该值为一个集合)或最大的元素维度。 + + 的维度或最大元素维度(如果 为集合)。 + 应检索维度值的地理值。 + + + 获取给定 值的维度(如果该值为一个集合)或最大的元素维度。 + + 的维度或最大元素维度(如果 为集合)。 + 应检索维度值的几何值。 + + + 如果表示地理集合,则返回给定 值的元素数目。 + 如果 表示其他地理值的集合,则为它当中的元素个数;否则为 null。 + 不需要表示地理集合的地理值。 + + + 如果表示几何集合,则返回给定 值的元素数目。 + 如果 表示其他几何值的集合,则为它当中的元素数;否则为 null。 + 不需要表示几何集合的几何值。 + + + 如果表示点,则返回给定 值的海拔(Z 坐标)。 + 如果 表示点,则为它的海拔(Z 坐标);否则为 null。 + 不需要表示点的地理值。 + + + 如果表示点,则返回给定 值的海拔 (Z)。 + 如果 表示点,则为它的海拔(Z 坐标);否则为 null。 + 不需要表示点的几何值。 + + + 返回表示给定 DbGeography 值终点的 值,如果该值不表示曲线则可能为 null。 + 如果 表示曲线,则为它的终点;否则为 null。 + 不需要表示曲线的地理值。 + + + 返回表示给定 DbGeometry 值终点的 值,如果该值不表示曲线则可能为 null。 + 如果 表示曲线,则为它的终点;否则为 null。 + 不需要表示曲线的几何值。 + + + 获取给定的 值的包络线(最小边界框)作为几何值。 + 作为 值的 的包络线。 + 应检索包络线值的几何值。 + + + 返回表示给定 DbGeometry 值外部环的 值,如果该值不表示多边形则可能为 null。 + 如果此 表示多边形,则为表示其上外部环的 DbGeometry 值;否则为 null。 + 不需要表示多边形的几何值。 + + + 如果表示多边形,则返回给定 值中的内部环数。 + 如果此 表示多边形,则为它当中的元素数;否则为 null。 + 不需要表示多边形的几何值。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否闭合;如果该值不表示曲线则可能为 null。 + 如果给定的 值为闭合值,则为 true;否则为 false。 + 不需要表示曲线的地理值。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否闭合;如果该值不表示曲线则可能为 null。 + 如果给定的 值为闭合值,则为 true;否则为 false。 + 不需要表示曲线的几何值。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否为空。 + 如果给定的 为空,则为 true;否则为 false。 + 地理值。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否为空。 + 如果给定的 为空,则为 true;否则为 false。 + 几何值。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否是环;如果该值不表示曲线则可能为 null。 + 如果给定的 值是一个环,则为 true;否则为 false。 + 不需要表示曲线的几何值。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否很简单。 + 如果给定的 值简单,则为 true;否则为 false。 + 几何值。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否有效。 + 如果给定的 值有效,则为 true;否则为 false。 + 几何值。 + + + 如果表示点,则返回给定 值的纬度坐标。 + 给定 值的维度坐标。 + 不需要表示点的地理值。 + + + 返回一个指示给定 值的长度、可以为 null 的双精度值,如果该值不表示曲线则可能为 null。 + 给定 值的长度。 + 不需要表示曲线的地理值。 + + + 返回一个指示给定 值的长度、可以为 null 的双精度值,如果该值不表示曲线则可能为 null。 + 给定 值的长度。 + 不需要表示曲线的几何值。 + + + 如果表示点,则返回给定 值的经度坐标。 + 给定 值的经度坐标。 + 不需要表示点的地理值。 + + + 如果表示点,则返回给定 值的 M(度量值)坐标。 + 给定 值的 M(测量值)坐标。 + 不需要表示点的地理值。 + + + 如果表示点,则返回给定 值的 M(度量值)坐标。 + 给定 值的 M(测量值)坐标。 + 不需要表示点的几何值。 + + + 如果表示行字符串或线性环,则返回给定 值中的点数。 + 给定 值中的点数。 + 不需要表示行字符串或线性环的地理值。 + + + 如果表示行字符串或线性环,则返回给定 值中的点数。 + 给定 值中的点数。 + 不需要表示行字符串或线性环的几何值。 + + + 返回表示给定 DbGeometry 值面上点的 值,如果该值不表示面则可能为 null。 + 表示给定 的面上一个点的 值。 + 不需要表示面的几何值。 + + + 返回指示给定 值的空间类型名称的值。 + 给定的 值的空间类型名称。 + 地理值。 + + + 返回指示给定 值的空间类型名称的值。 + 给定的 值的空间类型名称。 + 几何值。 + + + 返回表示给定 DbGeography 值起点的 值,如果该值不表示曲线则可能为 null。 + 给定 值的起始点。 + 不需要表示曲线的地理值。 + + + 返回表示给定 DbGeometry 值起点的 值,如果该值不表示曲线则可能为 null。 + 给定 值的起始点。 + 不需要表示曲线的几何值。 + + + 如果表示点,则返回给定 值的 X 坐标。 + 给定 值的 X 坐标。 + 不需要表示点的几何值。 + + + 如果表示点,则返回给定 值的 Y 坐标。 + 给定 值的 Y 坐标。 + 不需要表示点的几何值。 + + + 如果表示多边形,则返回给定 值中的内部环。 + 如果表示多边形,则为位置 中的内部环;否则为 null。 + 不需要表示多边形的几何值。 + 在几何值中应提取元素的位置。 + + + 计算两个 值的交集。 + 一个新 值,表示 的交集。 + 第一个地理值。 + 第二个地理值。 + + + 计算两个 值的交集。 + 一个新 值,表示 的交集。 + 第一个几何值。 + 第二个地理值。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 相交,则为 true;否则为 false。 + 用来比较相交性的第一个地理值。 + 用来比较相交性的第二个地理值。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 相交,则为 true;否则为 false。 + 用来比较相交性的第一个几何值。 + 用来比较相交性的第二个几何值。 + + + 获取一个值,该值指示 EF 是否将在假定提供程序具有所需的类型/资源而非更快失败的情况下继续运行。默认值为 true。 + 如果 EF 将在假定提供程序具有所需的类型/资源而非更快失败的情况下继续运行,则为 true;否则为 false。 + + + 确定两个给定的 值是否在空间上重叠。 + 如果 重叠,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + + 如果表示行字符串或线性环,则返回给定 值的点元素。 + 如果表示行字符串或线性环,则为位置 中的点;否则为 null。 + 不需要表示行字符串或线性环的地理值。 + 在地理值中应提取元素的位置。 + + + 如果表示行字符串或线性环,则返回给定 值的点元素。 + 如果表示行字符串或线性环,则为位置 中的点;否则为 null。 + 不需要表示行字符串或线性环的几何值。 + 在几何值中应提取元素的位置。 + + + 根据给定的维度扩展的 9 交集模型 (DE-9IM) 交集模式来确定两个给定的 值在空间上是否相关。 + 如果根据指定的交集模式 ,此 值与 相关,则为 true;否则为 false。 + 第一个几何值。 + 应与第一个几何值比较相关性的几何值。 + 包含定义了相关性的 (DE-9IM) 交集模式的文本表示形式的字符串。 + + + 确定两个给定的 值在空间上是否相等。 + 如果 在空间上与 相等,则为 true;否则为 false。 + 要比较是否相等的第一个地理值。 + 要比较是否相等的第二个地理值。 + + + 确定两个给定的 值在空间上是否相等。 + 如果 在空间上与 相等,则为 true;否则为 false。 + 要比较是否相等的第一个几何值。 + 要比较是否相等的第二个几何值。 + + + 计算两个 值的对称差异。 + 一个新 值,表示 对称差异。 + 第一个地理值。 + 第二个地理值。 + + + 计算两个 值的对称差异。 + 一个新 值,表示 之间的对称差异。 + 第一个几何值。 + 第二个几何值。 + + + 确定两个给定的 值在空间上是否接触。 + 如果 相接,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + + 计算两个 值的并集。 + 一个新 值,表示 的并集。 + 第一个地理值。 + 第二个地理值。 + + + 计算两个 值的并集。 + 一个新 值,表示 的并集。 + 第一个几何值。 + 第二个几何值。 + + + 确定一个 值在空间上是否在另一几何值内。 + 如果 geometryValue 在 otherGeometry 中,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + + 包含 类的扩展方法。 + + + 配置用于等待此 的等待器,以避免封送继续部分回原始上下文,但是保留当前区域性和 UI 区域性。 + 用于等待此任务的对象。 + 要等待的任务。 + + + 配置用于等待此 的等待器,以避免封送继续部分回原始上下文,但是保留当前区域性和 UI 区域性。 + 用于等待此任务的对象。 + 要等待的任务。 + 相关 所生成的结果类型。 + + + 提供一个可等待的对象,它允许等待保留区域性的 + + + 构造 类的新实例。 + 要等待的任务。 + + + 获取用于等待此 的等待器。 + 等待器实例。 + + + 结束等待已完成的 + 未正确初始化等待器。 + 该任务已取消。 + 任务在错误状态下完成。 + + + 获取此 是否已完成的信息。 + + + 未实施此方法,不应调用它。 + 等待操作完成时要调用的操作。 + + + 计划继续操作到与此 关联的 + 等待操作完成时要调用的操作。 + + 参数为 null(在 Visual Basic 中为 Nothing)。 + 未正确初始化等待器。 + + + 提供一个可等待的对象,它允许等待保留区域性的 + 相关 所生成的结果类型。 + + + 构造 类的新实例。 + 要等待的任务。 + + + 获取用于等待此 的等待器。 + 等待器实例。 + + + 结束等待已完成的 + 已完成的 的结果。 + 未正确初始化等待器。 + 该任务已取消。 + 任务在错误状态下完成。 + + + 获取此 是否已完成的信息。 + + + 未实施此方法,不应调用它。 + 等待操作完成时要调用的操作。 + + + 计划继续操作到与此 关联的 + 等待操作完成时要调用的操作。 + + 参数为 null(在 Visual Basic 中为 Nothing)。 + 未正确初始化等待器。 + + + \ No newline at end of file diff --git a/Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net40/zh-Hans/EntityFramework.resources.dll b/Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net40/zh-Hans/EntityFramework.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..6e55fdb5644bb4f12d3051675db85b1cd1966447 GIT binary patch literal 327376 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

-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 z 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 +>TtZR&ikU4Pq^f?dW`4mU2eR) z^EbxwnMiL}D{*$$y|Ui%OnSN}Xur03>;Cs@hTrbktnGgqI?dYD{-oHl zi?d(bs<-a^aCDmEX3uqOCx7kxXefDH@Ry*q-=z&R&ZI1CF)E6dGeH>|U~GkeRSd3}fV<+oVxxh3_~S#{(5G8upA zNlOHqJfy4H%XB{ZKFo;f3CZO%{jrgcxsZROq_)&&^=z9fFD9%#-p|&^9`@1F@cATEb`AH-0wRY5vX7)E;|G!<%`5!%3spo3`+PAw` mf1UW?!QX!&w}NNLwRal-(oysIX5MmQ`q2q8JRDzuEm#2je~N + + + EntityFramework + + + +

表示置于属性 (property) 上的某个属性 (attribute),以指示该属性 (property) 映射到的数据库列具有索引。 + + + 为将按约定命名并且没有指定列顺序、群集或唯一性的索引初始化新的 实例。 + + + 为具有给定名称并且没有指定列顺序、群集或唯一性的索引初始化新的 实例。 + 索引名称。 + + + 为具有给定名称和列顺序,但没有指定群集或唯一性的索引初始化新的 实例。 + 索引名称。 + 一个将用于确定多列索引的列顺序的数字。 + + + 确定此属性是否指定与给定属性相同的名称和配置。 + 如果其他对象等于此对象,则为 true,否则为 false。 + 要比较的属性。 + + + 确定此属性是否指定与给定属性相同的名称和配置。 + 如果其他对象等于此对象,则为 true,否则为 false。 + 要比较的属性。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取或设置一个值以指示索引是否定义群集索引。 + 如果索引定义群集索引,则为 true,如果索引定义非群集索引,则为 false。 + + + 获取或设置 是否已设置为一个值。 + 如果 已设置为一个值,则为 true;否则为 false. + + + 获取或设置一个值以指示是否定义唯一索引。 + 为 true,则定义唯一索引;为 false,则定义非唯一索引。 + + + 获取或设置 是否已设置为一个值。 + 如果 已设置为一个值,则为 true;否则为 false。 + + + 获取或设置索引名称。 + 索引名称。 + + + 获取或设置确定多列索引的列排序的数字。如果没有指定列顺序,它将为 -1。 + 确定多列索引的列排序的数字,或者如果已指定列顺序,则为 -1。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 为每个对象实例获取或设置不同的 ID,以便类型描述符不会尝试将所有 IndexAttribute 实例组合成单个实例。 + 每个对象实例的不同 ID。 + + + IDatabaseInitializer 的实现,它仅在数据库不存在时重新创建数据库并选择重新设置数据库的种子。若要设置数据库的种子,请创建一个派生类并重写 Seed 方法。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + + 应重写以向上下文实际添加数据来设置种子的方法。默认实现不执行任何操作。 + 要设置种子的上下文。 + + + 对象获取此类的实例,并且可使用该实例管理支持 DbContext 或连接的实际数据库。这包括对数据库执行创建、删除和存在性检查操作。请注意通过使用此类的静态方法,您只需使用一个连接(即无需完整上下文)即可对数据库执行删除和存在性检查。 + + + 对基础存储连接开始一个事务 + 一个包装对基础存储的事务对象的访问的 对象 + + + 使用指定的隔离级别对基础存储连接开始一个事务 + 一个包装对基础存储的事务对象的访问的 对象 + 用于创建基础存储事务的数据库隔离级别 + + + 获取或设置所有上下文操作的超时值(以秒为单位)。默认值为 null,null 值指示将使用基础提供程序的默认值。 + 超时值(秒);使用提供程序默认值时为 null。 + + + 检查数据库是否与当前 Code First 模型兼容。 + 如果上下文中的模型哈希与数据库中的模型哈希匹配,则为 true;否则为 false。 + 如果设置为 true,则当未在数据库中找到任何模型元数据时,将引发异常。如果设置为 false,则当未找到元数据时,此方法将返回 true。 + + + 返回此上下文使用的连接。如果连接不存在,这可能会导致创建连接。 + + + 在数据库服务器上为支持上下文中定义的模型创建一个新的数据库。请注意,在运行数据库初始化策略之前调用此方法将禁止执行该策略。 + + + 在数据库服务器上为支持上下文中定义的模型创建一个新的数据库(但仅在该服务器上没有带相同名称的数据库时这样做)。 + 如果数据库不存在且已创建,则为 true;否则为 false。 + + + 获取基础存储连接在其中登记的事务。可能为 null。 + + + 在从数据库名称或连接字符串创建 时要使用的连接工厂。 + + + 如果数据库服务器上存在数据库,则删除该数据库;否则不执行任何操作。从初始值设定项之外调用此方法会将数据库标记为尚未初始化。这意味着如果在删除数据库后尝试再次使用它,则将再次运行所有初始值设定项集,通常将尝试再次自动创建数据库。 + 如果数据库以前存在且已被删除,则为 true;否则为 false。 + + + 如果数据库服务器上存在数据库,则删除该数据库;否则不执行任何操作。 + 如果数据库以前存在且已被删除,则为 true;否则为 false。 + 与数据库的现有连接。 + + + 如果数据库服务器上存在数据库,则删除该数据库;否则不执行任何操作。按照 类的文档中描述的方法,使用给定的数据库名称或连接字符串创建与数据库的连接。 + 如果数据库以前存在且已被删除,则为 true;否则为 false。 + 数据库名称或数据库的连接字符串。 + + + 确定指定的数据库是否等于当前数据库。 + 如果指定的数据库等于当前数据库,则为 true;否则为 false。 + 要与当前对象进行比较的数据库。 + + + 对数据库执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 执行命令后由数据库返回的结果。 + 对于此命令控制事务的创建。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 执行命令后由数据库返回的结果。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 对于此命令控制事务的创建。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 对于此命令控制事务的创建。 + 命令字符串。 + 等待任务完成期间要观察的 。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 命令字符串。 + 等待任务完成期间要观察的 。 + 要应用于命令字符串的参数。 + + + 检查服务器上是否存在数据库。 + 如果数据库存在,则为 true;否则为 false。 + + + 检查服务器上是否存在数据库。 + 如果数据库存在,则为 true;否则为 false。 + 与数据库的现有连接。 + + + 检查服务器上是否存在数据库。按照 类的文档中描述的方法,使用给定的数据库名称或连接字符串创建与数据库的连接。 + 如果数据库存在,则为 true;否则为 false。 + 数据库名称或数据库的连接字符串。 + + + 返回此数据库的哈希函数。 + 此数据库的哈希函数。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在此上下文上运行注册的 。如果将“force”设置为 true,则将运行初始值设定项,不管它之前是否已运行。如果在应用程序正在运行时删除了数据库并且需要重新初始化数据库时,则这样做会很有用。如果将“force”设置为 false,则仅在尚未为此应用程序域中的此上下文、模型和连接运行初始值设定项的情况下运行它。当必须确保在开始某些操作之前已创建数据库并设定其种子时(这样偷懒的做法会导致问题,例如,当操作是事务的一部分时),通常会使用此方法。 + 如果设置为 true,则将运行初始值设定项,即使它之前已运行过也是如此。 + + + 设置此属性以将 生成的 SQL 记录到给定委托。例如,若要记录到控制台,请将此属性设置为 + + + 设置要用于给定上下文类型的数据库初始值设定项。当给定的 类型首次用于访问数据库时调用数据库初始值设定项。Code First 上下文的默认策略是 的实例。 + 要使用的初始值设定项或 null,后者对于指定的上下文类型禁用初始化。 + 上下文的类型。 + + + 创建一个原始 SQL 查询,该查询将返回给定泛型类型的元素。类型可以是包含与从查询返回的列名匹配的属性的任何类型,也可以是简单的基元类型。该类型不必是实体类型。即使返回对象的类型是实体类型,上下文也决不会跟踪此查询的结果。使用 方法可返回上下文跟踪的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.SqlQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.SqlQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 查询所返回对象的类型。 + + + 创建一个原始 SQL 查询,该查询将返回给定类型的元素。类型可以是包含与从查询返回的列名匹配的属性的任何类型,也可以是简单的基元类型。该类型不必是实体类型。即使返回对象的类型是实体类型,上下文也决不会跟踪此查询的结果。使用 方法可返回上下文跟踪的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.SqlQuery(typeof(Post), "SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.SqlQuery(typeof(Post), "SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + 查询所返回对象的类型。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + + + 返回数据库的字符串表示形式。 + 数据库的字符串表示形式。 + + + 如果您希望实体框架在外部事务内执行命令,则允许用户传递在 对象外创建的数据库事务。或者,传递 null 以清除该事务的框架知识。 + 外部事务 + 如果事务已完成,则引发此异常 + 如果与 对象关联的连接已在 事务中登记,则引发此异常 + 如果与 对象关联的连接已参与事务,则引发此异常 + 如果与事务关联的连接不匹配实体框架的连接,则引发此异常 + + + 从该类派生的类可与从 派生的类放置在同一个程序集中,以便定义应用程序的实体框架配置。通过调用受保护的方法并且在派生类型的构造函数中设置该类的受保护的属性,对配置进行设置。还可以在应用程序的配置文件中注册要使用的类型。有关实体框架配置的更多信息,请参见 http://go.microsoft.com/fwlink/?LinkId=260883。 + + + 初始化 类的新实例。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。 + 要添加的解析程序。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。 + 要添加的解析程序。 + + + 在应用程序启动时注册 。请注意,还可使用 随时添加和删除侦听器。 + 要注册的侦听器。 + + + 获取要用于解析实体框架中的服务依赖项的 + 要用于解析实体框架中的服务依赖项的 + + + 指定此实例是否等于指定对象。 + 如果此实例等于特定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 尝试从给定程序集发现和加载 。此方法应由工具使用以确保将正确配置加载到应用程序域中。工具应在访问 属性之前使用此方法。如果工具知道要使用的 类型,则应使用 方法,因为这会增加找到正确配置的机会。 + 要用于配置发现的 。 + + + 尝试发现和加载与给定 类型关联的 。此方法应由工具使用以确保将正确配置加载到应用程序域中。工具应在访问 属性之前使用此方法。 + 要用于配置发现的 类型。 + + + 在 DbConfiguration 已构造后、但在锁定可供使用之前在 EF 初始化过程中发生。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 此应用程序域的 的单一实例。可以在使用任何实体框架功能之前在应用程序启动时对此进行设置,并且在之后应被视作只读的。 + + 的实例。 + + + 从派生自 的类的构造函数调用此方法以设置工厂,从而允许 创建不具有公共无参数构造函数的上下文的实例。 + 用于创建上下文实例的委托。 + 应对其使用工厂的上下文类型。 + + + 从派生自 的类的构造函数调用此方法以设置工厂,从而允许 创建不具有公共无参数构造函数的上下文的实例。 + 应对其使用工厂的上下文类型。 + 用于创建上下文实例的委托。 + + + 从自 派生的类的构造函数调用此方法,以便设置要用于给定上下文类型的数据库初始值。当给定的 类型首次用于访问数据库时调用数据库初始值设定项。Code First 上下文的默认策略是 的实例。 + 要使用的初始值设定项或 null,后者对于指定的上下文类型禁用初始化。 + 上下文的类型。 + + + 从派生自 的类的构造函数调用此方法,以为 的类型设置要与 一起使用的工厂。 + 一个将创建格式化程序实例的委托。 + + + 设置 ,它用于在没有提供或没有可由 发现的其他连接字符串或连接的情况下按照约定创建连接。请注意,只要安装了 EntityFramework NuGet 包,就可以在 app.config 或 web.config 文件中设置默认连接工厂。与所有配置文件设置一样,在配置文件中设置的默认连接工厂将优先于使用此方法进行的任何设置。因此,必须首先从配置文件中删除该设置,然后调用此方法才会起作用。从自 派生的类的构造函数调用此方法,以便更改要使用的默认连接工厂。 + 连接工厂。 + + + 从派生自 的类的构造函数调用此方法,以设置一个 委托,该委托将用于为任何 创建默认 。仅当 中没有显式设置工厂且没有使用 方法为正在使用的提供程序注册工厂时,才会使用此默认工厂。 + 一个工厂,用于为表示默认架构的给定 创建 实例。 + + + 从派生自 的类的构造函数调用此方法,以设置将在需要空间提供程序且无法找到特定于提供程序的空间提供程序时使用的 的全局实例。通常,特定于提供程序的空间提供程序是从 实现中获取的,通过解析 的服务以将提供程序固定名称作为键传递,可返回此实现。但是,这并不适用于 的独立实例,因为无法知道要使用的空间提供程序。因此,在创建 的独立实例时会始终使用全局空间提供程序。 + 空间提供程序。 + + + 从派生自 的类的构造函数调用此方法,以注册 + 一个返回事务处理程序的新实例的函数。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序的 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 返回执行策略的新实例的函数。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序及给定服务器名称的 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 返回执行策略的新实例的函数。 + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + 从派生自 的类的构造函数调用此方法,以设置一个 委托,该委托允许为不具有显式工厂集的任何 的给定提供程序创建自定义的 + 此生成器应该用于的 ADO.NET 提供程序的固定名称。 + 一个工厂,用于为表示默认架构的给定 创建 实例。 + + + 从自 派生的类的构造函数调用此方法,以便设置 的实现,该实现允许无需打开连接即可从连接获取提供程序清单标记。 + 清单标记解析程序。 + + + 从派生自 的类的构造函数调用此方法,以便为 的实现设置工厂,从而允许将 实例所表示的自定义注释序列化到 EDMX XML 以及从中进行序列化。 + 将由此序列化程序处理的自定义注释的名称。 + 一个将用于创建序列化程序实例的委托。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序的 + 此生成器应该用于的 ADO.NET 提供程序的固定名称。 + 每次调用时都返回 SQL 生成器的新实例的委托。 + + + 从派生自 的类的构造函数调用此方法,以便将 设置为模型缓存键工厂,该工厂允许使用键来缓存要更改的 后的模型。 + 键工厂。 + + + 从自 派生的类的构造函数调用此方法,以便设置复数形式服务。 + 要使用的复数形式服务。 + + + 从自 派生的类的构造函数调用此方法,以便注册 ADO.NET 提供程序。 + ADO.NET 提供程序固定名称,指示此提供程序将用于的 ADO.NET 连接的类型。 + 提供程序实例。 + + + 从自 派生的类的构造函数调用此方法,以便设置 的实现,该实现允许在默认实现不足的情况下从 获取 + 提供程序工厂服务。 + + + 从自 派生的类的构造函数调用此方法,以便注册实体框架提供程序。 + ADO.NET 提供程序固定名称,指示此提供程序将用于的 ADO.NET 连接的类型。 + 提供程序实例。 + + + 从派生自 的类的构造函数调用此方法,以设置要用于特定提供程序和提供程序清单标记的 的实现。 + + 指示将使用此空间提供程序的 ADO.NET 连接的类型。 + 空间提供程序。 + + + 从派生自 的类的构造函数调用此方法,以设置要用于具有任何清单标记的特定提供程序的 的实现。 + ADO.NET 提供程序固定名称,指示将使用此空间提供程序的 ADO.NET 连接的类型。 + 空间提供程序。 + + + 从自 派生的类的构造函数调用此方法,以注册给定提供程序的数据库表的存在检查器。 + ADO.NET 提供程序固定名称,指示此提供程序将用于的 ADO.NET 连接的类型。 + 要使用的表存在检查器。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序的 + ADO.NET 提供程序固定名称,指示将使用此事务处理程序的 ADO.NET 连接的类型。 + 一个返回事务处理程序的新实例的函数。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序及给定服务器名称的 + ADO.NET 提供程序固定名称,指示将使用此事务处理程序的 ADO.NET 连接的类型。 + 一个返回事务处理程序的新实例的函数。 + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 可将此属性置于 的子类上,以指示 的子类,后者表示应用程序的基于代码的配置与上下文类型处于不同的程序集中。 + + + 指示应对此应用程序的基于代码的配置使用由给定程序集限定名称表示的 的子类。 + 要使用的 类型。 + + + 指示应对此应用程序的基于代码的配置使用 的给定子类。 + 要使用的 类型。 + + + 获取应对此应用程序的基于代码的配置使用的 的子类。 + 应对此应用程序的基于代码的配置使用的 的子类。 + + + DbContext 实例表示工作单元和存储库模式的组合,可用来查询数据库并将更改组合在一起,这些更改稍后将作为一个单元写回存储区中。DbContext 在概念上与 ObjectContext 类似。 + + + 使用约定构造一个新的上下文实例以创建将连接到的数据库的名称。按照约定,该名称是派生上下文类的全名(命名空间与类名称的组合)。请参见有关这如何用于创建连接的类备注。 + + + 通过现有连接来连接到数据库以构造一个新的上下文实例。如果 是 false,则释放上下文时将不会释放该连接。 + 要用于新的上下文的现有连接。 + 如果设置为 true,则释放上下文时将释放该连接;否则调用方必须释放该连接。 + + + 通过使用现有连接来连接到数据库以构造一个新的上下文实例,并从给定模型初始化该实例。如果 是 false,则释放上下文时将不会释放该连接。 + 要用于新的上下文的现有连接。 + 支持此上下文的模型。 + 如果设置为 true,则释放上下文时将释放该连接;否则调用方必须释放该连接。 + + + 围绕现有 ObjectContext 构造一个新的上下文实例。 + 要使用新的上下文包装的现有 ObjectContext。 + 如果设置为 true,则释放 DbContext 时将释放 ObjectContext;否则调用方必须释放该连接。 + + + 使用约定构造一个新的上下文实例以创建将连接到的数据库的名称,并从给定模型初始化该名称。按照约定,该名称是派生上下文类的全名(命名空间与类名称的组合)。请参见有关这如何用于创建连接的类备注。 + 支持此上下文的模型。 + + + 可以将给定字符串用作将连接到的数据库的名称或连接字符串来构造一个新的上下文实例。请参见有关这如何用于创建连接的类备注。 + 数据库名称或连接字符串。 + + + 可以将给定字符串用作将连接到的数据库的名称或连接字符串来构造一个新的上下文实例,并从给定模型初始化该实例。请参见有关这如何用于创建连接的类备注。 + 数据库名称或连接字符串。 + 支持此上下文的模型。 + + + 提供对用于处理实体的更改跟踪的上下文功能的访问。 + 一个用于访问处理更改跟踪的功能的对象。 + + + 提供对上下文的配置选项的访问。 + 一个用于访问配置选项的对象。 + + + 为此上下文创建一个数据库实例,该上下文允许您对基础数据库执行创建/删除/存在性检查操作。 + + + 调用受保护的 Dispose 方法。 + + + 释放上下文。在以下情况下也将释放基础 :它由此上下文创建,或者在创建此上下文时将所有权传递给了此上下文。在以下情况下也将释放与数据库的连接( 对象):它由此上下文创建,或者在创建此上下文时将所有权传递给了此上下文。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 获取给定实体的 对象,以便提供对与该实体有关的信息的访问以及对实体执行操作的功能。 + 实体的项。 + 实体。 + + + 获取给定实体的 对象,以便提供对与该实体有关的信息的访问以及对实体执行操作的功能。 + 实体的项。 + 实体。 + 实体的类型。 + + + 确定指定的 DbContext 是否等于当前 DbContext。 + 如果指定的 DbContext 等于当前 DbContext,则为 true;否则为 false。 + 要与当前 DbContext 进行比较的 DbContext。 + + + 返回此 DBContext 的哈希函数。 + 此 DBContext 的哈希函数。 + + + 返回当前 DbContext 的类型。 + 当前 DbContext 的类型。 + + + 验证跟踪实体,并返回包含验证结果的 的集合。 + 无效实体的验证结果集合。集合决不为 null,且不得包含 null 值或有效实体的结果。 + + + 在完成对派生上下文的模型的初始化后,并在该模型已锁定并用于初始化上下文之前,将调用此方法。虽然此方法的默认实现不执行任何操作,但可在派生类中重写此方法,这样便能在锁定模型之前对其进行进一步的配置。 + 定义要创建的上下文的模型的生成器。 + + + 将在此上下文中所做的所有更改保存到基础数据库。 + 已写入基础数据库的对象的数目。 + 向数据库发送更新时出错。 + 数据库命令未影响预期行数。这通常指示存在乐观并发冲突;即,某行自对它查询以来已在数据库中发生更改。 + 保存已中止,因为实体属性值的验证失败。 + 尝试使用不支持的行为,如对相同上下文实例并发执行多个异步命令。 + 上下文或连接已释放。 + 向数据库发送命令之前或之后,尝试在上下文中处理实体时发生错误。 + + + 将在此上下文中所做的所有更改异步保存到基础数据库。 + 表示异步保存操作的任务。任务结果包含已写入基础数据库的对象数目。 + 向数据库发送更新时出错。 + 数据库命令未影响预期行数。这通常指示存在乐观并发冲突;即,某行自对它查询以来已在数据库中发生更改。 + 保存已中止,因为实体属性值的验证失败。 + 尝试使用不支持的行为,如对相同上下文实例并发执行多个异步命令。 + 上下文或连接已释放。 + 向数据库发送命令之前或之后,尝试在上下文中处理实体时发生错误。 + + + 将在此上下文中所做的所有更改异步保存到基础数据库。 + 表示异步保存操作的任务。任务结果包含已写入基础数据库的对象数目。 + 等待任务完成期间要观察的 。 + 在已释放上下文时引发。 + + + 针对对上下文和基础存储中给定类型的实体的访问返回一个 实例。 + 给定实体类型的集。 + 应为其返回一个集的类型实体。 + + + 针对对上下文和基础存储中给定类型的实体的访问返回一个非泛型 实例。 + 给定实体类型的集。 + 应为其返回一个集的实体的类型。 + + + 扩展点允许用户重写仅验证添加的实体和修改的实体的默认行为。 + 如果继续验证,则为 true;否则为 false。 + 应验证的 DbEntityEntry 实例。 + + + 返回基础化此上下文的实体框架 ObjectContext。 + + + 返回 DbContext 的字符串表示形式。 + DbContext 的字符串表示形式。 + + + 扩展点允许用户自定义实体的验证或筛选出验证结果。由 调用。 + 实体验证结果。重写时可能为 null。 + 要验证的 DbEntityEntry 实例。 + 包含用于自定义验证的附加信息的用户定义的字典。它将被传递给 并将作为 公开。此参数是可选的,并且可为 null。 + + + 包装对基础存储连接的事务对象的访问并确保实体框架在该事务的上下文内对数据库执行命令。通过对 对象调用 BeginTransaction() 来检索此类的实例。 + + + 提交基础存储事务。 + + + 清除此事务对象并确保实体框架不再使用该事务。 + + + 释放此事务对象占用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 确定此实例是否与指定对象相同。 + 如果此实例与指定对象相同,则为 true;否则为 false。 + 要与此实例进行比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取与此实例关联的基础类型。 + 与此实例关联的基础类型。 + + + 回滚基础存储事务。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 获取基础化此上下文事务的数据库(存储)事务。 + 基础化此上下文事务的数据库(存储)事务。 + + + 指示给定的方法是 EDM 函数的代理。 + + + 初始化 类的新实例。 + 映射到的函数的命名空间。 + 映射到的函数的名称。 + + + 映射到的函数的名称。 + 映射到的函数的名称。 + + + 映射到的函数的命名空间。 + 映射到的函数的命名空间。 + + + 提供在 LINQ to Entities 查询中使用的公开 EDM 规范函数的公共语言运行时 (CLR) 方法。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为非 Unicode 字符串处理的运算符。 + 作为非 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为 Unicode 字符串处理的运算符。 + 作为 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTime EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTimeOffset EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + 新日期的时区偏移量部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateTime EDM 函数以创建新的 对象。 + 新的时间跨度。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个时间跨度间隔的小时数。 + 第一个时间跨度和第二个时间跨度间隔的小时数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个时间跨度间隔的微秒数。 + 第一个时间跨度和第二个时间跨度间隔的微秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个时间跨度间隔的毫秒数。 + 第一个时间跨度和第二个时间跨度间隔的毫秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个时间跨度间隔的分钟数。 + 第一个时间跨度和第二个时间跨度间隔的分钟数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个时间跨度间隔的纳秒数。 + 第一个时间跨度和第二个时间跨度间隔的纳秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个时间跨度间隔的秒数。 + 第一个时间跨度和第二个时间跨度间隔的秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 GetTotalOffsetMinutes EDM 函数以返回指定的日期/时间偏移 UTC 的分钟数。该值通常介于 +780 到 -780 之间(+ 或 - 13 小时)。 + 输入对 UTC 的偏移量。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Left 函数以返回字符串中最左侧指定数目的字符。 + 包含从输入字符串左侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Reverse 函数以返回其字符顺序反转的指定字符串。 + 以反转字符顺序显示的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Right 函数以返回字符串中最右侧指定数目的字符。 + 包含从输入字符串右侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + DbModelBuilder 用于将 CLR 类映射到数据库架构。此以代码为中心的方法称作“Code First”,可用于生成实体数据模型 (EDM) 模型。 + + + 初始化 类的新实例。发现初始模型的过程将使用您计算机上安装的实体框架的最新版本中所包含的一组约定。 + + + 初始化 类的新实例,它将使用一组特定的约定来发现初始模型。 + 要使用的约定的版本。 + + + 使用此生成器基于执行的配置来创建一个 。连接用于确定要使用的数据库提供程序,因为这会影响生成的模型的数据库层。 + 已生成的模型。 + 用来确定提供程序信息的连接。 + + + 使用此生成器基于执行的配置来创建一个 。必须指定提供程序信息,因为这会影响生成的模型的数据库层。对于 SqlClient,固定名称为“System.Data.SqlClient”,清单标记为版本年份(例如,“2005”、“2008”等)。 + 已生成的模型。 + 模型将用于的数据库提供程序。 + + + 将一个类型注册为模型中的复杂类型,并返回一个可用来配置复杂类型的对象。可对同一类型多次调用此方法以执行多行配置。 + 指定的复杂类型的配置对象。 + 要注册或配置的类型。 + + + 获取此 DbModelBuilder 的 。注册器允许使用此生成器来注册派生的实体和复杂类型配置。 + + + 提供对处理约定的此 DbModelBuilder 的设置的访问。 + + + 将实体类型注册为模型的一部分,并返回一个可用来配置实体的对象。可对同一实体多次调用此方法以执行多行配置。 + 指定的实体类型的配置对象。 + 要注册或配置的类型。 + + + 指定 是否等于指定的对象。 + 如果 等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置默认数据库架构名称。此默认数据库架构名称用于不具有显式配置的架构名称的数据库对象。 + 同一个 DbModelBuilder 实例,以便多个调用可以链接在一起。 + 默认数据库架构的名称。 + + + 从模型中排除类型。这用于在初始模型发现期间从根据约定添加的模型中移除类型。 + 同一个 DbModelBuilder 实例,以便多个调用可以链接在一起。 + 要排除的类型。 + + + 从模型中排除指定的类型。这用于在初始模型发现期间从根据约定添加的模型中移除类型。 + 同一个 DbModelBuilder 实例,以便多个调用可以链接在一起。 + 要从模型中排除的类型。 + + + 开始配置适用于模型中所有属性的轻型约定。 + 约定的配置对象。 + + + 开始配置适用于模型中指定类型的所有基元属性的轻型约定。 + 约定的配置对象。 + 此约定将适用于的属性类型。 + + + 将实体类型注册为模型的一部分。 + 要注册的类型。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 开始配置应用于模型中从泛型参数指定的类型派生或实现泛型参数指定的类型的所有实体和复杂类型的轻型约定。此方法不会将类型注册为模型的一部分。 + 约定的配置对象。 + 此约定将适用于的实体类型或复杂类型。 + + + 开始配置应用于模型中所有实体和复杂类型的轻型约定。 + 约定的配置对象。 + + + 可直接将此枚举中的值提供给 类,也可以在应用到派生自 的类的 中使用该值。使用的值可定义在从代码生成模型(也称为“Code First”)时应使用的 DbContext 和 DbModelBuilder 约定的版本。 + + + 指示应使用 约定的最新版本。 + + + 指示应使用实体框架 4.1 版附带的 约定的版本。 + + + 指示应使用实体框架 5.0 版附带的 约定的版本。 + + + 指示面向 .Net Framework 4 时,应使用实体框架 5.0 版附带的 约定的版本。 + + + 指示应使用实体框架 6.0 版附带的 约定的版本。 + + + 此特性可应用于派生自 的类,以便在从代码生成模型(也称为“Code First”)时设置应使用的 DbContext 和 约定的版本。有关 DbModelBuilder 版本的详细信息,请参见 枚举。 + + + 初始化 类的新实例。 + 要使用的 约定版本。 + + + 获取 约定版本。 + + 约定版本。 + + + 非泛型版本的 ,可在生成时不知道实体类型时使用。 + + + 从派生类型的构造函数中进行调用时,创建一个 实例,它将用作 DbSet 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking、AsStreaming 和 Include,它们的默认实现是空操作。 + + + 将给定实体以“已添加”状态添加到集的基础上下文中,这样一来,当调用 SaveChanges 时,会将该实体插入到数据库中。 + 实体。 + 要添加的实体。 + + + 将给定实体集合添加到基础化集的上下文中(每个实体都置于“已添加”状态),这样当调用 SaveChanges 时,会将它插入到数据库中。 + 实体集合。 + 要添加的实体集合。 + + + 将给定实体附加到集的基础上下文中。也就是说,将实体以“未更改”的状态放置到上下文中,就好像从数据库读取了该实体一样。 + 实体。 + 要附加的实体。 + + + 返回等效泛型 对象。 + 泛型集对象。 + 已为其创建集的实体的类型。 + + + 为此集的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + + + 为此集的类型或派生自此集类型的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + 要创建的实体的类型。 + + + 返回指定的集是否等于当前集。 + 如果指定的对象等于当前集,则为 true;否则为 false。 + 要与当前对象进行比较的集。 + + + 查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 找到的实体或为 null。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 等待任务完成期间要观察的 。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 返回指定集的哈希函数。 + 集的哈希函数。 + + + 获取当前集的类型。 + 当前集的类型。 + + + 获取 ,它表示此集中的所有“已添加”、“未更改”和“已修改”实体的本地视图。在上下文中添加或删除实体时,该本地视图将保持同步。同样,在本地视图中添加或删除实体也会自动在上下文中添加或删除实体。 + 本地视图。 + + + 将给定实体标记为“已删除”,这样一来,当调用 SaveChanges 时,将从数据库中删除该实体。请注意,在调用此方法之前,该实体必须以另一种状态存在于该上下文中。 + 实体。 + 要删除的实体。 + + + 从基础化集的上下文中删除给定实体集合(每个实体都置于“已删除”状态),这样当调用 SaveChanges 时,会从数据库中删除它。 + 实体集合。 + 要删除的实体集合。 + + + 创建一个原始 SQL 查询,该查询将返回此集中的实体。默认情况下,上下文会跟踪返回的实体;可通过对返回的 调用 AsNoTracking 来更改此设置。请注意返回实体的类型始终是此集的类型,而不会是派生的类型。如果查询的一个或多个表可能包含其他实体类型的数据,则必须编写适当的 SQL 查询以确保只返回适当类型的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Set(typeof(Blog)).SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Set(typeof(Blog)).SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + + + DbSet 表示上下文中给定类型的所有实体的集合或可从数据库中查询的给定类型的所有实体的集合。可以使用 DbContext.Set 方法从 DbContext 中创建 DbSet 对象。 + 定义集的类型。 + + + 从派生类型的构造函数中进行调用时,创建一个 实例,它将用作 DbSet 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking、AsStreaming 和 Include,它们的默认实现是空操作。 + + + 将给定实体以“已添加”状态添加到集的基础上下文中,这样一来,当调用 SaveChanges 时,会将该实体插入到数据库中。 + 要添加的实体。 + + + 将给定实体集合添加到基础化集的上下文中(每个实体都置于“已添加”状态),这样当调用 SaveChanges 时,会将它插入到数据库中。 + 实体集合。 + 要添加的实体集合。 + + + 将给定实体附加到集的基础上下文中。也就是说,将实体以“未更改”的状态放置到上下文中,就好像从数据库读取了该实体一样。 + 要附加的实体。 + + + 为此集的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + + + 为此集的类型或派生自此集类型的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 要创建的实体的类型。 + + + 确定指定的 DbSet 是否等于当前 DbSet。 + 如果指定的 DbSet 等于当前 DbSet,则为 true;否则为 false。 + 要与当前 DbSet 进行比较的对象。 + + + 查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 找到的实体或为 null。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 要查找的实体的主键值。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 等待任务完成期间要观察的 。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 返回此 DbSet 的哈希函数。 + 此 DbSet 的哈希函数。 + + + 返回当前 DbSet 的类型。 + 当前 DbSet 的类型。 + + + 获取 ,它表示此集中的所有“已添加”、“未更改”和“已修改”实体的本地视图。在上下文中添加或删除实体时,该本地视图将保持同步。同样,在本地视图中添加或删除实体也会自动在上下文中添加或删除实体。 + 本地视图。 + + + 返回等效非泛型 对象。 + 非泛型集对象。 + 泛型集对象。 + + + 将给定实体标记为“已删除”,这样一来,当调用 SaveChanges 时,将从数据库中删除该实体。请注意,在调用此方法之前,该实体必须以另一种状态存在于该上下文中。 + 要删除的实体。 + + + 从基础化集的上下文中删除给定实体集合(每个实体都置于“已删除”状态),这样当调用 SaveChanges 时,会从数据库中删除它。 + 实体集合。 + 要删除的实体集合。 + + + 创建一个原始 SQL 查询,该查询将返回此集中的实体。默认情况下,上下文会跟踪返回的实体;可通过对返回的 调用 AsNoTracking 来更改此设置。请注意返回实体的类型始终是此集的类型,而不会是派生的类型。如果查询的一个或多个表可能包含其他实体类型的数据,则必须编写适当的 SQL 查询以确保只返回适当类型的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Blogs.SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Blogs.SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + + + IDatabaseInitializer 的实现,它总是会在首次在应用程序域中使用上下文时,重新创建数据库并可以选择重新设置数据库的种子。若要设置数据库的种子,请创建一个派生类并重写 Seed 方法。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + 为 null。 + + + 应重写以向上下文实际添加数据来设置种子的方法。默认实现不执行任何操作。 + 要设置种子的上下文。 + + + IDatabaseInitializer 的实现,它仅在模型自数据库创建后发生更改时删除数据库、重新创建数据库并选择重新设置数据库的种子。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + 为 null。 + + + 应重写以向上下文实际添加数据来设置种子的方法。默认实现不执行任何操作。 + 要设置种子的上下文。 + + + 描述实体的状态。 + + + 实体将由上下文跟踪,但是在数据库中还不存在。 + + + 实体将由上下文跟踪并存在于数据库中,但是已被标记为在下次调用 SaveChanges 时从数据库中删除。 + + + 该实体未由上下文跟踪。刚使用新运算符或某个 Create 方法创建实体后,实体就处于此状态。 + + + 实体将由上下文跟踪并存在于数据库中,已修改其中的一些或所有属性值。 + + + 实体将由上下文跟踪并存在于数据库中,其属性值与数据库中的值相同。 + + + 此接口的实现用于在首次使用 派生类的实例时初始化基础数据库。此初始化可以有条件地创建数据库和/或使用数据设置其种子。使用 类的静态 InitializationStrategy 属性设置所用的策略。提供以下实现: + 此类型参数是逆变。即可以使用指定的类型或派生程度更低的类型。 有关协变和逆变的详细信息,请参阅。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + + + 表示上下文中给定类型的所有实体的集合或可从数据库中查询的给定类型的所有实体的集合。 是 IDbSet 的具体实现。 + 定义集的类型。 + + + 将给定实体以“已添加”状态添加到集的基础上下文中,这样一来,当调用 SaveChanges 时,会将该实体插入到数据库中。 + 实体。 + 要添加的实体。 + + + 将给定实体附加到集的基础上下文中。也就是说,将实体以“未更改”的状态放置到上下文中,就好像从数据库读取了该实体一样。 + 实体。 + 要附加的实体。 + + + 为此集的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + + + 为此集的类型或派生自此集类型的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + 要创建的实体的类型。 + + + 查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 找到的实体或为 null。 + 要查找的实体的主键值。 + + + 获取 ,它表示此集中的所有“已添加”、“未更改”和“已修改”实体的本地视图。在上下文中添加或删除实体时,该本地视图将保持同步。同样,在本地视图中添加或删除实体也会自动在上下文中添加或删除实体。 + 本地视图。 + + + 将给定实体标记为“已删除”,这样一来,当调用 SaveChanges 时,将从数据库中删除该实体。请注意,在调用此方法之前,该实体必须以另一种状态存在于该上下文中。 + 实体。 + 要删除的实体。 + + + 将使用 Code First 迁移将数据库更新到最新版本的 的实现。 + 上下文的类型。 + 初始化过程中要使用的迁移配置的类型。 + + + 初始化 MigrateDatabaseToLatestVersion 类的新实例,该类将使用通过默认构造函数或已注册工厂(如果适用)构造的上下文中的连接信息。 + + + 初始化 MigrateDatabaseToLatestVersion 类的新实例,该类指定是否使用触发初始化的上下文中的连接信息来执行迁移。 + 如果设置为 true,则初始值设定项使用触发初始化的上下文中的连接信息来运行。否则,从使用默认构造函数或已注册工厂(如果适用)构造的上下文中获取连接信息。 + + + 初始化 MigrateDatabaseToLatestVersion 类的新实例,该类指定是否使用触发初始化的上下文中的连接信息来执行迁移。也允许指定在初始化期间要使用的迁移配置。 + 如果设置为 true,则初始值设定项使用触发初始化的上下文中的连接信息来运行。否则,从使用默认构造函数或已注册工厂(如果适用)构造的上下文中获取连接信息。 + 在初始化期间要使用的迁移配置。 + + + 初始化将使用配置文件中的特定连接字符串连接到数据库以执行迁移的 MigrateDatabaseToLatestVersion 类的新实例。 + 用于迁移的连接字符串的名称。 + + + 初始化给定上下文的数据库。 + 上下文。 + + + 不执行任何操作的 的实现。使用此初始值设定项将禁用给定上下文类型的数据库初始化。将此类的实例传递给 将等效于传递 null。正在使用 解析初始值设定项时,此类的实例必须用于禁用初始化。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + + + 的扩展方法。 + + + 返回 实现,该实现与给定的 保持同步。 + 绑定列表。 + 绑定列表将与其保持同步的集合。 + 元素类型。 + + + 提供用于 Entity Framework LINQ 查询的有用扩展方法。 + + + 异步确定序列的所有元素是否满足条件。 + 表示异步操作的任务。如果源序列的每个元素都通过了指定谓词中的测试,则任务结果包含 true;否则为 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 是 null。 + + 不实现 + + + 异步确定序列的所有元素是否满足条件。 + 表示异步操作的任务。如果源序列的每个元素都通过了指定谓词中的测试,则任务结果包含 true;否则为 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 是 null。 + + 不实现 + + + 异步确定序列是否包含任何元素。 + 表示异步操作的任务。如果源序列包含任何元素,则任务结果包含 true;否则包含 false。 + 要检查为空的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步确定序列的任何元素是否满足条件。 + 表示异步操作的任务。如果源序列的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步确定序列的任何元素是否满足条件。 + 表示异步操作的任务。如果源序列的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步确定序列是否包含任何元素。 + 表示异步操作的任务。如果源序列包含任何元素,则任务结果包含 true;否则包含 false。 + 要检查为空的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。此方法通过调用基础查询对象的 AsNoTracking 方法来运行。如果基础查询对象没有 AsNoTracking 方法,则调用此方法将不会有任何影响。 + 应用 NoTracking 的新查询,如果不支持 NoTracking,则为源查询。 + 源查询。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。此方法通过调用基础查询对象的 AsNoTracking 方法来运行。如果基础查询对象没有 AsNoTracking 方法,则调用此方法将不会有任何影响。 + 应用 NoTracking 的新查询,如果不支持 NoTracking,则为源查询。 + 源查询。 + 元素类型。 + + + 返回将流式处理结果而非缓存它的新查询。此方法通过调用基础查询对象的 AsStreaming 方法来运行。如果基础查询对象没有 AsStreaming 方法,则调用此方法将不会有任何影响。 + 应用 AsStreaming 的新查询,如果不支持 AsStreaming,则为源查询。 + 要应用 AsStreaming 的 。 + + + 返回将流式处理结果而非缓存它的新查询。此方法通过调用基础查询对象的 AsStreaming 方法来运行。如果基础查询对象没有 AsStreaming 方法,则调用此方法将不会有任何影响。 + 应用 AsStreaming 的新查询,如果不支持 AsStreaming,则为源查询。 + 要应用 AsStreaming 的 。 + + 的元素的类型。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 通过使用默认的相等比较器异步确定序列是否包含指定的元素。 + 表示异步操作的任务。如果输入序列包含指定的值,则任务结果包含 true;否则包含 false。 + 一个返回其单个元素的 。 + 要在序列中定位的对象。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 通过使用默认的相等比较器异步确定序列是否包含指定的元素。 + 表示异步操作的任务。如果输入序列包含指定的值,则任务结果包含 true;否则包含 false。 + 一个返回其单个元素的 。 + 要在序列中定位的对象。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列中的元素数。 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回满足条件的序列中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回满足条件的序列中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回序列中的元素数。 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回序列的第一个元素。 + 表示异步操作的任务。任务结果包含 中的第一个元素。 + 一个返回其第一个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 源序列为空。 + + + 异步返回满足指定条件的序列的第一个元素。 + 表示异步操作的任务。任务结果包含通过 中测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + + + 异步返回满足指定条件的序列的第一个元素。 + 表示异步操作的任务。任务结果包含通过 中测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + + + 异步返回序列的第一个元素。 + 表示异步操作的任务。任务结果包含 中的第一个元素。 + 一个返回其第一个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 源序列为空。 + + + 异步返回序列的第一个元素;如果序列不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果 为空,则任务结果包含 default ();否则,包含 中的第一个元素。 + 一个返回其第一个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回满足指定条件的序列的第一个元素;如果未找到此类元素,则返回默认值。 + 表示异步操作的任务。如果 为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回满足指定条件的序列的第一个元素;如果未找到此类元素,则返回默认值。 + 表示异步操作的任务。如果 为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + + + 异步返回序列的第一个元素;如果序列不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果 为空,则任务结果包含 default ();否则,包含 中的第一个元素。 + 一个返回其第一个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + 等待任务完成期间要观察的 。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + + 的元素的类型。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在其上调用 Include 的源 。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 IQueryable&lt;T&gt;,它具有定义的查询路径。 + 要在其上调用 Include 的源 IQueryable。 + 表示要包括的路径的 lambda 表达式。 + 要查询的实体类型。 + 要包含的导航属性的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在其上调用 Include 的源 。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + 要查询的实体类型。 + + + 枚举服务器查询等查询,例如 的查询,以及查询结果将加载到关联的 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 + 源查询。 + + + 异步枚举服务器查询等查询,例如 的查询,以及查询结果将加载到关联的 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 + 表示异步操作的任务。 + 源查询。 + + + 异步枚举服务器查询等查询,例如 的查询,以及查询结果将加载到关联的 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 + 表示异步操作的任务。 + 源查询。 + 等待任务完成期间要观察的 。 + + + 异步返回表示序列中的总元素数的 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回表示满足条件的序列中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回表示满足条件的序列中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回表示序列中的总元素数的 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回序列的最大值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最大结果值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最大结果值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的最大值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的最小值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最小结果值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最小结果值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的最小值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的唯一元素;如果序列中并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素。 + 一个返回其单个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 源序列为空。 + + + 异步返回满足指定条件的序列的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素。 + 一个 ,用于返回单个元素。 + 用于测试元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回满足指定条件的序列的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素。 + 一个返回其单个元素的 。 + 用于测试元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回序列的唯一元素;如果序列中并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素。 + 一个返回其单个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + 源序列为空。 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + + + 异步返回满足指定条件的序列的唯一元素;如果此类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素;如果没有找到此类元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + 用于测试元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回满足指定条件的序列的唯一元素;如果此类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素;如果没有找到此类元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + 用于测试元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + + + 跳过序列中指定数量的元素,然后返回剩余的元素。 + 一个序列,其中包含输入序列中指定索引后出现的元素。 + 要从中返回元素的序列。 + 计算结果为要跳过的元素数的表达式。 + source 的元素的类型。 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 从序列开始处起,返回指定数量的连续元素。 + 一个序列,其中包含输入序列开头的指定数量的元素。 + 要从中返回元素的序列。 + 计算结果为要返回的元素数的表达式。 + source 的元素的类型。 + + + 通过异步枚举从 创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + 要从中创建数组的 。 + + 的元素的类型。 + + + 通过异步枚举从 创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + 要从中创建数组的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + + 创建 ,方法是:根据指定的键选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + + 的元素的类型。 + + 返回的键类型。 + + + 创建 ,方法是:根据指定的键选择器函数和比较器来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + + 的元素的类型。 + + 返回的键类型。 + + + 创建 ,方法是:根据指定的键选择器函数和比较器来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + + 创建 ,方法是:根据指定的键选择器函数和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数、比较器和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数、比较器和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个将从中创建 。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个将从中创建 。 + 等待任务完成期间要观察的 。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个将从中创建 。 + + 的元素的类型。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个要从中创建列表的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + + 在执行数据库命令或查询期间控制事务创建行为。 + + + 如果存在现有事务,则使用它,否则在没有事务的情况下执行命令或查询。 + + + 如果不存在任何事务,则使用新事务进行操作。 + + + 表示在尝试准备或执行 CommandCompilation 时出现的失败。此异常旨在提供一个常见异常,人们可以捕获该异常以便在使用 EntityCommand 执行语句时承载提供程序异常(SqlException、OracleException)。 + + + 初始化 的新实例,没有消息,没有内部异常。可能不应该存在,但它有益于 FxCop。 + + + 使用消息(但没有内部异常)初始化 的新实例。可能不应该存在,但它有益于 FxCop。 + 消息。 + + + 使用消息和内部异常实例初始化 的新实例。 + 消息。 + 内部异常。 + + + 表示在尝试准备或执行 CommandExecution 时出现的失败。此异常旨在提供一个常见异常,人们可以捕获该异常以便在使用 EntityCommand 执行语句时承载提供程序异常(SqlException、OracleException)。 + + + 初始化 EntityCommandExecutionException 的新实例,没有消息,没有内部异常。可能不应该存在,但它有益于 FxCop。 + + + 使用消息(但没有内部异常)初始化 EntityCommandExecutionException 的新实例。可能不应该存在,但它有益于 FxCop。 + 描述错误的消息。 + + + 使用消息和内部异常实例初始化 EntityCommandExecutionException 的新实例。 + 描述错误的消息。 + 导致此当前异常的内部异常。 + + + 提供实体客户端使用的异常。 + + + 使用默认值初始化 类的新实例。 + + + 初始化 类的新实例。 + 序列化信息。 + 流上下文。 + + + 初始化接受预先格式化消息的 类的新实例。 + 本地化的错误消息。 + + + 初始化接受预先格式化消息和内部异常的 类的新实例。 + 本地化的错误消息。 + 内部异常。 + + + 表示实体的标识符。 + + + 初始化 类的新实例。 + + + 使用给定的键值初始化 类的新实例。 + 实体的 EntitySet 名称,由 EntityContainer 名称限定。 + 标识实体的键-值对。 + + + 使用给定的键值初始化 类的新实例。 + 实体的 EntitySet 名称,由 EntityContainer 名称限定。 + 标识实体的键-值对。 + + + 使用给定单个键名称和值初始化 类的新实例。 + 实体的 EntitySet 名称,由 EntityContainer 名称限定。 + 标识实体的键名称。 + 标识实体的键值。 + + + 获取或设置 EntityContainer 名称,该名称标识包含实体的实体容器。 + EntityContainer 名称,该名称标识包含实体的实体容器。 + + + 获取或设置标识实体的键值。 + 标识实体的键值。 + + + 获取单一 ,其标识因失败的 TREAT 操作产生的实体。 + 标识因失败的 TREAT 操作产生的实体的单一 + + + 获取或设置 EntitySet 名称,该名称标识包含实体的实体集。 + EntitySet 名称,用于标识包含实体的实体集。 + + + 指示此实例是否与给定的键相等的值。 + 如果此实例与给定的键相等,则为 true;否则为 false。 + 要与此实例进行比较的键。 + + + 指示此实例是否与给定的键相等的值。 + 如果此实例与给定的键相等,则为 true;否则为 false。 + 要与此实例进行比较的键。 + + + 从给定的元数据工作区按实体容器名称和实体集名称获取此实体键的实体集。 + 给定工作区中此实体键的实体集。 + 要在其中查找实体集的工作区。 + 在工作区中找不到该实体集。 + + + 返回基于值的哈希代码,以便允许在哈希表中使用 EntityKey。 + 的哈希值。 + + + 获取一个值,该值指示此键是否为临时键。 + 如果此键是临时键,则为 true;否则为 false。 + + + 获取用来标识只读实体的单一 + 用来标识只读实体的单一 + + + 在反序列化此 后调用。 + 序列化上下文。 + + + 在反序列化此 后调用。 + 序列化上下文。 + + + 指示两个键是否相等的值。 + 如果两个键相等,则为 true;否则为 false。 + 要比较的键。 + 要比较的键。 + + + 指示两个键是否不相等的值。 + 如果两个键不相等,则为 true;否则为 false。 + 要比较的键。 + 要比较的键。 + + + 与作为 EntityKey 的一部分的键有关的信息。键成员包含键名称和值。 + + + 创建空的 EntityKeyMember。此构造函数由序列化过程使用。 + + + 使用指定的键名称和值创建一个新的 EntityKeyMember。 + 键名称 + 键值 + + + 键名称 + + + 返回 EntityKeyMember 的字符串表示形式 + EntityKeyMember 的字符串表示形式 + + + 键值 + + + 表示一个 eSQL Query 编译异常;可能导致引发此异常的异常条件的类别主要是:1) 语法错误:在查询文本分析期间和在某一给定查询与 eSQL 形式语法不符时引发;2) 语义错误:在 eSQL 语言的语义规则未满足时(例如元数据或架构信息等不准确或未提供、类型验证错误、作用域规则冲突、未定义变量的用户等)引发。有关更多信息,请参见 eSQL 语言规范。 + + + 使用一般性错误消息初始化 的新实例。 + + + 使用给定的消息初始化 的新实例。 + 错误消息。 + + + 使用给定的消息和 innerException 实例初始化 的新实例。 + 错误消息。 + 内部异常。 + + + 获取发生错误的大致列号。 + 发生错误的大致列号。 + + + 获取发生错误的大致上下文(如果有)。 + 发生错误的大致上下文(如果有)。 + + + 获取解释未接受查询或空 String.Empty 的原因的错误说明 + 解释未接受查询或空 String.Empty 的原因的错误说明。 + + + 获取发生错误的大致行号 + 发生错误的大致行号。 + + + 提供支持结构化类型和丰富元数据信息的 DataRecord 接口。 + + + 获取描述记录内容的 DataRecordInfo 属性。 + 描述记录内容的 DataRecordInfo 属性。 + + + 以 DbDataReader 对象的形式返回嵌套的读取器。 + 作为 DbDataReader 对象的嵌套读取器。 + 列的序号。 + + + 使用指定的索引获取一个 DbDataRecord 对象。 + DbDataRecord 对象。 + 行的索引。 + + + 引发来指示命令目录树无效。 + + + 使用默认消息构造一个新的 InvalidCommandTreeException。 + + + 使用指定的消息构造一个新的 InvalidCommandTreeException。 + 异常消息 + + + 使用指定的消息和内部异常构造一个新的 InvalidCommandTreeException。 + 异常消息。 + 导致此 InvalidCommandTreeException 的异常。 + + + 映射异常类。请注意,此类具有状态 - 因此,即使您更改其内部,也可能是重大更改 + + + 具有默认消息的构造函数 + + + 默认构造函数 + 本地化的错误消息 + + + 构造函数 + 本地化的错误消息 + 内部异常 + + + 元数据异常类 + + + 具有默认消息的构造函数 + + + 默认构造函数 + 本地化的错误消息 + + + 构造函数 + 本地化的错误消息 + 内部异常 + + + 在存储区中找不到请求的对象时将引发此异常。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + + + 初始化 类的新实例以及初始化获取消息和内部异常的构造函数的新实例。 + 本地化的错误消息。 + 内部异常。 + + + 在更新操作与并发约束冲突时将会引发此异常。 + + + 使用默认值初始化 类的新实例。 + + + 使用指定的消息初始化 类的新实例。 + 与异常关联的消息。 + + + 使用指定的消息和内部异常初始化 类的新实例。 + 与异常关联的消息。 + 导致异常的错误。 + + + 使用指定的消息和内部异常初始化 类的新实例。 + 消息。 + 导致异常的错误。 + 状态项。 + + + 表示属性约束异常类。请注意,此类具有状态 - 因此,即使您更改其内部,也可能是重大更改。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + + + 使用提供的消息和内部异常初始化 类的新实例 + 本地化的错误消息。 + 内部异常。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + 属性名称。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + 属性名称。 + 内部异常。 + + + 获取违反了约束的属性的名称。 + 违反了约束的属性的名称。 + + + 在存储提供程序表现出的行为与实体客户端提供程序不兼容时引发的异常。 + + + 初始化 类的新实例。 + + + 使用指定的错误消息初始化 类的新实例。 + 描述此异常的错误消息。 + + + 使用指定的错误消息和内部异常初始化 类的新实例。 + 描述此异常的错误消息。 + 造成当前异常的内部异常。 + + + 在将更改保存到存储区期间引发的异常无法更新。 + + + 使用默认值初始化 类的新实例。 + + + 使用序列化数据初始化 类的新实例。 + 包含有关异常的序列化信息的对象。 + 有关源或目标的上下文信息。 + + + 初始化带有错误消息的 类的新实例。 + 描述此异常的错误消息。 + + + 初始化带有错误消息和内部异常的 类的新实例。 + 描述此异常的错误消息。 + 造成当前异常的内部异常。 + + + 初始化带有错误消息、内部异常和状态条目的 类的新实例。 + 描述此异常的错误消息。 + 造成当前异常的内部异常。 + 错误中暗含的状态条目。 + + + 获取错误中暗含的状态条目。 + 错误中暗含的状态条目。 + + + 提供一个简单方法以便访问类型信息和列信息的 DataRecordInfo 类。 + + + 使用数据字段的可枚举集合初始化一个特定类型的新 对象。 + 此对象表示的类型的元数据,由 提供。 + 表示列信息的 对象的可枚举集合。 + + + 获取此 对象的 + + 对象。 + + + 获取此对象的类型信息作为 对象。 + 一个 值。 + + + 表示准备好的命令定义,可以缓存和重复使用以便避免重新准备命令。 + + + 初始化 类的新实例。 + + + 使用提供的 初始化 类的新实例。 + 提供的 。 + 用于克隆 的方法 + + + 创建和返回可执行的 DbCommand 对象。 + 用于数据库的命令。 + + + 所有 CLR 类型的元数据接口 + + + 初始化 类的新实例。 + + + 排序规则方面的名称 + + + 要传递给 GetInformation 以便获取 ConceptualSchemaDefinition 的值 + + + 要传递给 GetInformation 以便获取 ConceptualSchemaDefinitionVersion3 的值 + + + DefaultValue 方面的名称 + + + 提供程序编写人员应重写此方法,以返回带有已转义的通配符和转义符的参数。仅当 SupportsEscapingLikeArgument 返回 true 时才使用此方法。 + 带有已转义的通配符和转义符的参数。 + 要转义的参数。 + + + FixedLength 方面的名称 + + + 在派生类中重写时,此方法返回特定于提供程序的信息。 + 表示基础数据存储目录的映射的 XmlReader 对象。 + 要返回的信息的类型。 + + + 在派生类中重写时,此方法将指定的存储类型以及该类型的一组方面映射到 EDM 类型。 + 描述 EDM 类型以及该类型的一组方面的 实例。 + TypeUsage 实例,它描述要映射到 EDM 类型的存储类型以及该类型的一组方面。 + + + 返回特定类型的 FacetDescription 对象。 + 用于指定的 EDM 类型的 FacetDescription 对象。 + 要返回方面描述的 EDM 类型。 + + + 获取特定于提供程序的信息。 + 特定于提供程序的信息。 + 要返回的信息的类型。 + + + 在派生类中重写时,返回提供程序清单支持的 EDM 函数的集合。 + EDM 函数的集合。 + + + 在派生类中重写时,此方法将指定的 EDM 类型以及该类型的一组方面映射到存储类型。 + TypeUsage 实例,它描述存储类型以及该类型的一组方面。 + TypeUsage 实例,它描述要映射到存储类型的 EDM 类型以及该类型的一组方面。 + + + 在派生类中重写时,返回数据源支持的一组基元类型。 + 数据源支持的一组类型。 + + + IsStrict 方面的名称 + + + MaxLength 方面的名称 + + + 获取此提供程序清单使用的命名空间。 + 此提供程序清单使用的命名空间。 + + + Nullable 方面的名称 + + + Precision 方面的名称 + + + Scale 方面的名称 + + + SRID 方面的名称 + + + 要传递给 GetInformation 以便获取 StoreSchemaDefinition 的值 + + + 要传递给 GetInformation 以便获取 StoreSchemaDefinitionVersion3 的值 + + + 要传递给 GetInformation 以便获取 StoreSchemaMapping 的值 + + + 要传递给 GetInformation 以便获取 StoreSchemaMappingVersion3 的值 + + + 指示提供程序是否支持在 Like 表达式中使用转义字符串作为模式。 + 如果此提供程序支持在 Like 表达式中使用转义字符串作为模式,则返回 true;否则返回 false。 + 如果提供程序支持转义,则为要用作转义符的字符。 + + + 返回一个布尔值,该布尔值指定提供程序是否可处理包含 DbInExpression 的实例的表达式目录树。默认实现返回 false 以保证向后兼容性。派生类可以重写此方法。 + false + + + Unicode 方面的名称 + + + 用于生成命令定义的工厂;使用该对象的类型作为提供程序工厂上 IServiceProvider.GetService 方法的参数; + + + 初始化 类的新实例。 + + + 添加一个 ,它将用于在使用应用程序配置文件中的某一项或通过 中基于代码的注册将某派生类型注册为 EF 提供程序时解析附加的默认提供程序服务。 + 要添加的解析程序。 + + + 请参见问题 2390 - 在 DbCommand 上克隆 DesignTimeVisible 属性可能导致死锁。因此此处允许重写子类。 + + 的克隆版本 + 要克隆的 对象 + + + 基于原型命令创建默认的 DbCommandDefinition 对象。此方法旨在使提供程序编写者从命令生成默认命令定义。注意:这将克隆原型 + 可执行的命令定义对象 + 原型命令 + + + 若给定命令目录树,创建命令定义对象。 + 可执行的命令定义对象 + 语句的命令目录树 + + + 从指定的清单和命令目录树创建命令定义。 + 已创建的命令定义。 + 清单。 + 命令目录树。 + + + 创建一个由连接指示的数据库并且基于 storeItemCollection 的内容创建架构对象(表、主键、外键)。 + 与需要创建并且用 storeItemCollection 参数指示的存储对象进行填充的不存在的数据库的连接。 + 创建数据库所需的任何命令的执行超时。 + 创建脚本所应基于的所有存储项的集合。 + + + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本,生成可创建架构对象(表、主键、外键)的数据定义语言 (DDL) 脚本。 + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本创建架构对象的 DDL 脚本。 + 标识目标版本的提供程序清单标记。 + 数据库的结构。 + + + 为指定的提供程序清单和命令目录树创建命令定义对象。 + 可执行的命令定义对象。 + 以前从存储提供程序检索的提供程序清单。 + 语句的命令目录树。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 创建一个由连接指示的数据库并且基于 StoreItemCollection 的内容创建架构对象(表、主键、外键)。 + 与需要创建并且用 storeItemCollection 参数指示的存储对象进行填充的不存在的数据库的连接。 + 创建数据库所需的任何命令的执行超时。 + 创建脚本所应基于的所有存储项的集合。 + + + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本,生成可创建架构对象(表、主键、外键)的数据定义语言 (DDL) 脚本。 + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本创建架构对象的 DDL 脚本。 + 标识目标版本的提供程序清单标记。 + 数据库的结构。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 删除指定的数据库。 + 到某个需要删除的现有数据库的连接。 + 删除数据库所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于删除数据库。 + + + 获取空间服务。 + 空间服务。 + 与提供程序清单关联的标记信息。 + + + 删除指定的数据库。 + 到某个需要删除的现有数据库的连接。 + 删除数据库所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于删除数据库。 + + + 如果给定路径以 |DataDirectory| 开头则展开该路径中的 |DataDirectory| 并且返回扩展的路径;如果给定路径未以 |DataDirectory| 开头,则返回给定字符串。 + 展开的路径。 + 要展开的路径。 + + + 返回表示 CSDL 说明的 XML 读取器 + 表示 CSDL 说明的 XmlReader + CSDL 说明的名称。 + + + 在派生类中重写时,返回派生自 DbProviderManifest 的类的实例。 + 表示提供程序清单的 DbProviderManifest 对象。 + 与提供程序清单关联的标记信息。 + + + 返回给定连接的提供程序清单标记。 + 指定连接的提供程序清单标记。 + 从中查找清单标记的连接。 + + + 获取空间数据读取器。 + 空间数据读取器。 + 空间数据来自于的读取器。 + 与提供程序清单关联的标记信息。 + + + 获取将用于执行使用指定连接的方法的 + + 的一个新实例。 + 数据库连接 + + + 获取将用于执行使用指定连接的方法的 。此重载应由派生类用于与包装提供程序兼容。 + + 的一个新实例。 + 数据库连接 + 提供程序固定名 + + + 基于指定的 DbConnection 检索 DbProviderFactory。 + 检索到的 DbProviderFactory。 + 要使用的连接。 + + + 使用指定的版本信息返回提供程序清单。 + 使用指定版本信息的提供程序清单。 + 与提供程序清单关联的标记信息。 + + + 返回给定连接的提供程序清单标记。 + 提供程序清单标记。 + 到提供程序的连接。 + + + 返回给定连接的提供程序。 + 基于指定连接实例化的 + 到提供程序的连接。 + + + 在使用应用程序配置文件中的某一项或通过 中基于代码的注册将某一派生类型注册为 EF 提供程序时调用,用于解析附加的默认提供程序服务。此类中此方法的实现使用通过 AddDependencyResolver 方法添加的解析程序来解析依赖项。 + 给定类型的实例;如果无法解析服务,则为 null。 + 要解析的服务的类型。 + 为解析服务提供附加信息的可选键。 + + + 在使用应用程序配置文件中的某一项或通过 中基于代码的注册将某一派生类型注册为 EF 提供程序时调用,用于解析附加的默认提供程序服务。此类中此方法的实现使用通过 AddDependencyResolver 方法添加的解析程序来解析依赖项。 + 满足给定类型和键的所有注册的服务;如果没有,则为空枚举。 + 要解析的服务的类型。 + 为解析服务提供附加信息的可选键。 + + + 获取空间数据读取器。 + 空间数据读取器。 + 空间数据来自于的读取器。 + 与提供程序清单关联的清单标记。 + + + 获取空间服务。 + 空间服务。 + 有关将对其使用空间服务的数据库的信息。 + + + 获取空间服务。 + 空间服务。 + 与提供程序清单关联的标记信息。 + + + 注册一个处理程序,以处理来自数据库提供程序的非错误消息。 + 用来接收信息的连接。 + 用于处理消息的处理程序。 + + + 为给定的 设置参数值和适当的方面。 + 参数。 + 参数的类型。 + 参数的值。 + + + 为给定的 设置参数值和适当的方面。 + 参数。 + 参数的类型。 + 参数的值。 + + + 接受 XmlReader 的 ProviderManifest 的专用化 + + + 初始化 类的新实例。 + 一个 对象,该对象提供对提供程序清单文件中的 XML 数据的访问。 + + + 返回指定的 Entity Data Model (EDM) 类型的方面说明列表。 + 一个 类型的集合,其中包含指定的 EDM 类型的方面说明列表。 + 要为其检索方面说明的 。 + + + 返回提供程序支持的函数的列表。 + 一个 类型的集合,其中包含提供程序支持的函数的列表。 + + + 返回存储提供程序支持的基元类型的列表。 + 一个 类型的集合,其中包含存储提供程序支持的基元类型的列表。 + + + 获取此提供程序清单支持的命名空间名称。 + 此提供程序清单支持的命名空间名称。 + + + 获取指定的存储类型名称的最佳映射等效 Entity Data Model (EDM) 类型。 + 指定的存储类型名称的最佳映射等效 EDM 类型。 + + + 获取指定的存储类型名称的最佳映射等效存储基元类型。 + 指定的存储类型名称的最佳映射等效存储基元类型。 + + + 提供一个简单方法以便访问类型信息和列信息的 EntityRecordInfo 类。 + + + 使用数据字段的可枚举集合、特定键和实体集信息初始化特定实体类型的 类的新实例。 + 实体的 ,由该 对象描述的 表示。 + 表示列信息的 对象的可枚举集合。 + 实体的键。 + 该实体所属的实体集。 + + + 获取实体的 + 实体的键。 + + + 在列序号和 MemberMetadata 之间提供关联的 FieldMetadata 类。 + + + 使用指定的序号值和字段类型初始化新的 对象。 + 用于指定元数据位置的整数。 + 字段类型。 + + + 获取此 对象的字段类型。 + 对象的字段类型。 + + + 获取此 对象的序号。 + 表示序号值的整数。 + + + 表示实现要派生自的 IExpressionVisitor 接口的类型的抽象基类型。 + + + 初始化 类的新实例。 + + + 实现命令目录树的访问者模式。 + 命令目录树。 + + + 实现删除命令目录树的访问者模式。 + 删除命令目录树。 + + + 实现函数命令目录树的访问者模式。 + 函数命令目录树。 + + + 实现插入命令目录树的访问者模式。 + 插入命令目录树。 + + + 实现修改子句的访问者模式。 + 修改子句。 + + + 实现修改子句的集合的访问者模式。 + 修改子句。 + + + 实现查询命令目录树的访问者模式。 + 查询命令目录树。 + + + 实现 set 子句的访问者模式。 + set 子句。 + + + 实现更新命令目录树的访问者模式。 + 更新命令目录树。 + + + 实现要派生自的 IExpressionVisitor 接口的类型的抽象基类型。 + + + 初始化 类的新实例。 + + + + 的访问者模式方法。 + 正在访问的 DbAndExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbApplyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbArithmeticExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbCaseExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbCastExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbComparisonExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbConstantExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbCrossJoinExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DeRefExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbDistinctExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbElementExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbEntityRefExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbExceptExpression。 + + 为 null + + + 遇到其他无法识别的类型的 时进行调用。 + 表达式 + + 为 null + 如果调用此方法,则始终引发,因为它指示 属于不支持的类型 + + + + 的访问者模式方法。 + 正在访问的 DbFilterExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbFunctionExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbInExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIntersectExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIsEmptyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIsNullExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIsOfExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbJoinExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbLambdaExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbLikeExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbLimitExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbNewInstanceExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbNotExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbNullExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbOfTypeExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbOrExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbParameterReferenceExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbProjectExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbPropertyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbQuantifierExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbRefExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbRefKeyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbRelationshipNavigationExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbScanExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbSkipExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbSortExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbTreatExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbUnionAllExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbVariableReferenceExpression。 + + 为 null + + + 用于访问指定的 的方便的方法。 + 要访问的聚合。 + + 为 null + + + 用于访问列表中的每个 (如果列表是非 null 的)的方便的方法。 + 要访问的聚合的列表。 + + 为 null + + + 用于访问指定的 的方便的方法。 + 要访问的 DbBinaryExpression。 + + 为 null + + + 用于访问指定的 的方便的方法(如果非 null)。 + 要访问的表达式。 + + 为 null + + + 用于在访问了 DbExpressionBinding 后进行后处理的方便的方法。 + 以前访问的 DbExpressionBinding。 + + + 用于访问指定的 的方便的方法。 + 要访问的 DbExpressionBinding。 + + 为 null + + + 用于访问给定列表中的每个 (如果列表是非 null 的)的方便的方法。 + 要访问的表达式的列表。 + + 为 null + + + 指示 的分组键已访问并且现在将要访问聚合的方便的方法。 + DbGroupByExpression 的 DbGroupExpressionBinding + + + 用于在访问了 DbGroupExpressionBinding 后进行后处理的方便的方法。 + 以前访问的 DbGroupExpressionBinding。 + + + 用于访问指定的 的方便的方法。 + 要访问的 DbGroupExpressionBinding。 + + 为 null + + + 用于在访问了 DbLambda 后进行后处理的方便的方法。 + 以前访问的 DbLambda。 + + + 指示现在将要访问的 Lambda 的正文的方便方法。 + 将要访问的 DbLambda。 + + 为 null + + + 用于访问指定的 的方便的方法。 + 要访问的 DbUnaryExpression。 + + 为 null + + + 聚合是伪表达式。聚合在外观上与表达式相似,但其可以出现的位置有严格的限制 - 只能出现在 group-by 表达式的聚合子句中。 + + + 获取定义要聚合的参数的表达式列表。 + + + 获取此聚合的结果类型。 + + + 表示两个 Boolean 参数之间的逻辑与运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示一个应用运算,它是对指定输入集中的每个元素的指定 functor 调用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取 ,它指定对输入集中的每个元素调用的 functor。 + + + 获取用于指定输入集的 + + + 表示应用于两个数值参数的算术运算(加法、减法、乘法、除法、取模或求反)。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于定义当前参数的表达式列表。 + + + 接受两个表达式操作数的表达式的抽象基类型。 + + + 获取定义左边参数的 + + + 获取定义右边参数的 + + + 表示 Case When...Then...Else 逻辑运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取此 DbCaseExpression 的 Else 子句。 + + + 获取此 DbCaseExpression 的 Then 子句。 + + + 获取此 DbCaseExpression 的 When 子句。 + + + 表示应用于多态参数的强制转换运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示删除、查询、插入和更新 DbCommandTree 类型的抽象基类型。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取此命令目录树所使用的元数据必须驻留于其中的数据空间。 + 此命令目录树所使用的元数据必须驻留于其中的数据空间。 + + + 获取此命令目录树使用的元数据工作区。 + 此命令目录树使用的元数据工作区。 + + + 获取在此命令目录树中可以引用的每个参数的名称和相应类型。 + 在此命令目录树中可以引用的每个参数的名称和相应类型。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 获取命令目录树是否使用数据库的 null 语义。 + 命令目录树使用数据库的 null 语义。 + + + 描述不同的数据库命令。 + + + 指定删除命令。 + + + 指定函数命令。 + + + 指定插入命令。 + + + 指定查询命令。 + + + 指定更新命令。 + + + 表示应用于两个参数的比较运算(相等、大于、大于或等于、小于、小于或等于、不相等)。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示常量值。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取常量值。 + + + 表示给定集合参数之间的无条件联接运算 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个 列表,该列表提供要联接的输入集。 + + + 表示用一个规范命令目录树代表的单行删除操作。 + + + 初始化 类的新实例。 + 元数据工作区。 + 数据空间。 + 数据库表达式绑定。 + 数据库表达式。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取一个 ,它指定用于确定目标集合中应删除的成员的谓词。 + 用于确定目标集合中应删除的成员的谓词。 + + + 使用指定的 Ref 表示给定实体的检索。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示从指定的集操作数中删除重复的元素。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示指定的集操作数到单一实例的转换。如果该集为空,则转换将返回 null;否则,该转换将返回集中的元素之一。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示作为 Ref 对指定实体的引用的检索。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示左右操作数之间的集减法运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示所有表达式的基类型。 + + + 实现不生成结果值的表达式访问者的访问者模式接口。 + DbExpressionVisitor 的实例。 + + 为 null。 + + + 实现生成特定类型的结果值的表达式访问者的访问者模式接口方法。 + + 的一个实例。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + + 生成的结果的类型。 + + 为 null。 + + + 确定指定的对象是否等于当前 DbExpression 实例。 + 如果指定的对象等于当前 DbExpression 实例,则为 true;否则为 false。 + 要与当前 进行比较的对象。 + + + 获取表达式的类型,类型指示该表达式的运算。 + 表达式的类型,指示该表达式的运算。 + + + 创建表示指定的二进制值的 ,可以为 null。 + 表示指定的二进制值的 + 返回的表达式应基于的二进制值。 + + + 创建表示指定的(可以为 null)布尔值的 + 表示指定的布尔值的 + 返回的表达式应基于的布尔值。 + + + 创建表示指定的(可以为 null)字节值的 + 表示指定的字节值的 + 返回的表达式应基于的字节值。 + + + 创建表示指定的(可以为 null) 值的 + 表示指定的 DateTime 值的 + 返回的表达式应基于的 DateTime 值。 + + + 创建表示指定(可为空值的) 值的 + 表示指定的 DateTimeOffset 值的 + 返回的表达式应基于的 DateTimeOffset 值。 + + + 创建表示指定的(可以为 null)十进制值的 + 表示指定的十进制值的 + 返回的表达式应基于的十进制值。 + + + 创建表示指定的(可以为 null)双精度值的 + 表示指定的双精度值的 + 返回的表达式应基于的双精度值。 + + + 创建表示指定的 值的 ,可以为 null。 + 表示指定的 DbGeography 值的 + 返回的表达式应基于的 DbGeography 值。 + + + 创建表示指定的 值的 ,可以为 null。 + 表示指定的 DbGeometry 值的 + 返回的表达式应基于的 DbGeometry 值。 + + + 创建表示指定(可为空值的) 值的 + 表示指定的 Guid 值的 + 返回的表达式应基于的 Guid 值。 + + + 创建表示指定的(可以为 null)Int16 值的 + 表示指定的 Int16 值的 + 返回的表达式应基于的 Int16 值。 + + + 创建表示指定的(可以为 null)Int32 值的 + 表示指定的 Int32 值的 + 返回的表达式应基于的 Int32 值。 + + + 创建表示指定的(可以为 null)Int64 值的 + 表示指定的 Int64 值的 + 返回的表达式应基于的 Int64 值。 + + + 创建表示指定的(可以为 null)单精度值的 + 表示指定的单精度值的 + 返回的表达式应基于的单精度值。 + + + 创建表示指定的字符串值的 + 表示指定的字符串值的 + 返回的表达式应基于的字符串值。 + + + 用作此类型的哈希函数。 + 返回当前表达式的哈希代码。 + + + 将一个 8 位无符号整数数组转换成 + 一个 ,表示转换后的 8 位无符号整数数组。 + 一个 8 位无符号整数数组。 + + + 将一个 DbGeography 对象转换成 + 表示转换后的 DbGeography 对象的 + DbGeography 对象。 + + + 将一个 DBGeometry 对象转换成 + 表示转换后的 DbGeography 对象的 + DbGeometry 对象。 + + + 将一个可以为 null 的布尔对象转换为 + 表示转换后的可以为 null 的布尔对象的 + 可以为 null 的布尔对象。 + + + 将一个可以为 null 的 8 位无符号整数转换成 + 表示转换后的 8 位无符号整数的 + 可以为 null 的 8 位无符号整数。 + + + 将一个可以为 null 的 对象转换成 + 一个表示 对象的 + 可为 null 的 对象。 + + + 将一个可以为 null 的 对象转换成 + 一个表示可以为 null 的 + 可为 null 的 对象。 + + + 将一个可以为 null 的十进制对象转换为 + 表示可以为 null 的十进制对象的 + 可以为 null 的十进制对象。 + + + 将一个可以为 null 的双精度对象转换为 + 表示可以为 null 的双精度对象的 + 可以为 null 的双精度对象。 + + + 将一个可以为 null 的 Guid 对象转换为 + 一个 ,表示可为 null 的 对象。 + 可为 null 的 对象。 + + + 将一个可以为 null 的 16 位无符号整数转换成 + 一个 ,表示可为 null 的 16 位无符号整数。 + 可以为 null 的 16 位无符号整数。 + + + 将一个可以为 null 的 32 位无符号整数转换成 + 一个 ,表示可为 null 的 32 位无符号整数。 + 可以为 null 的 32 位无符号整数。 + + + 将一个可以为 null 的 64 位无符号整数转换成 + 一个 ,表示可为 null 的 64 位无符号整数。 + 可以为 null 的 64 位无符号整数。 + + + 将一个可以为 null 的单精度浮点数字转换成 + 一个表示单精度浮点数字的 + 单精度浮点数。 + + + 转换 Unicode 字符 的有序集合。 + 表示 Unicode 字符的有序集合的 + Unicode 字符的有序集合。 + + + 获取表达式的结果类型的类型元数据。 + 表达式的结果类型的类型元数据。 + + + 描述表达式的绑定。在概念上与 C# 中的 foreach 循环类似。DbExpression 属性定义要循环访问的集合,而 Var 属性提供一个方式以便在迭代过程中引用该集合的当前元素。DbExpressionBinding 用于描述关系表达式(例如 )的集参数。 + + + 获取用于定义输入集的 + + + 获取引用元素变量的 + + + 获取指定给元素变量的名称。 + + + 获取元素变量的类型元数据。 + + + 描述表达式的不同“种类”(类) + + + 全部为 True。 + + + 逻辑与。 + + + 任何项均为 True。 + + + 条件 Case 语句。 + + + 多态类型转换。 + + + 一个常量值。 + + + Cross Apply + + + 交叉联接 + + + 引用。 + + + 重复删除。 + + + 除法。 + + + 集到单一转换。 + + + 实体引用值检索。 + + + 相等 + + + Set 减法 + + + 限制。 + + + 完全外部联接 + + + 独立函数的调用 + + + 大于。 + + + 大于或等于。 + + + 分组。 + + + 在其中。 + + + 内部联接 + + + 交集。 + + + 空集确定。 + + + Null 确定。 + + + 类型比较(指定的类型或子类型)。 + + + 类型比较(仅限指定的类型)。 + + + lambda 函数的应用 + + + 左外部联接 + + + 小于。 + + + 小于或等于。 + + + 字符串比较。 + + + 结果计数限制 (TOP n)。 + + + 减法。 + + + 取模。 + + + 乘法。 + + + 实例、行和集构造。 + + + 逻辑非。 + + + 不相等。 + + + Null。 + + + 按类型(或子类型)的集成员。 + + + 按(确切)类型的集成员。 + + + 逻辑或。 + + + Outer Apply。 + + + 对参数的引用。 + + + 加法。 + + + 投影。 + + + 静态或实例属性检索。 + + + 引用。 + + + 引用键值检索。 + + + (组合或关联)关系的导航。 + + + 实体集或关系集扫描。 + + + 跳过有序集合中的元素。 + + + 排序。 + + + 类型转换。 + + + 求反。 + + + 并集(包含重复项)。 + + + 对变量的引用。 + + + 确保某一给定表达式目录树中的所有元数据都来自指定的元数据工作区,并且可能在需要时将表达式重新绑定和重新生成到适当的替代元数据。 + + + 初始化 类的新实例。 + 目标工作区。 + + + 实现检索实例属性的访问者模式。 + 实现的访问者。 + 表达式。 + + + 实现对实体集的访问者模式。 + 实现的访问者模式。 + 实体集。 + + + 实现函数的访问者模式。 + 实现的访问者模式。 + 函数元数据。 + + + 实现类型的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 实现类型用法的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 应由不返回结果值的访问者实现的表达式访问者模式抽象基类。 + + + 初始化 类的新实例。 + + + DbAndExpression 的访问者模式方法。 + 正在访问的 DbAndExpression。 + + + DbApplyExpression 的访问者模式方法。 + 正在访问的 DbApplyExpression。 + + + DbArithmeticExpression 的访问者模式方法。 + 正在访问的 DbArithmeticExpression。 + + + DbCaseExpression 的访问者模式方法。 + 正在访问的 DbCaseExpression。 + + + DbCastExpression 的访问者模式方法。 + 正在访问的 DbCastExpression。 + + + DbComparisonExpression 的访问者模式方法。 + 正在访问的 DbComparisonExpression。 + + + DbConstantExpression 的访问者模式方法。 + 正在访问的 DbConstantExpression。 + + + DbCrossJoinExpression 的访问者模式方法。 + 正在访问的 DbCrossJoinExpression。 + + + DbDerefExpression 的访问者模式方法。 + 正在访问的 DbDerefExpression。 + + + DbDistinctExpression 的访问者模式方法。 + 正在访问的 DbDistinctExpression。 + + + DbElementExpression 的访问者模式方法。 + 正在访问的 DbElementExpression。 + + + DbEntityRefExpression 的访问者模式方法。 + 正在访问的 DbEntityRefExpression。 + + + DbExceptExpression 的访问者模式方法。 + 正在访问的 DbExceptExpression。 + + + 遇到其他无法识别的类型的表达式时进行调用。 + 表达式。 + + + DbFilterExpression 的访问者模式方法。 + 正在访问的 DbFilterExpression。 + + + DbFunctionExpression 的访问者模式方法。 + 正在访问的 DbFunctionExpression。 + + + DbGroupByExpression 的访问者模式方法。 + 正在访问的 DbGroupByExpression。 + + + DbInExpression 的访问者模式方法。 + 正在访问的 DbInExpression。 + + + DbIntersectExpression 的访问者模式方法。 + 正在访问的 DbIntersectExpression。 + + + DbIsEmptyExpression 的访问者模式方法。 + 正在访问的 DbIsEmptyExpression。 + + + DbIsNullExpression 的访问者模式方法。 + 正在访问的 DbIsNullExpression。 + + + DbIsOfExpression 的访问者模式方法。 + 正在访问的 DbIsOfExpression。 + + + DbJoinExpression 的访问者模式方法。 + 正在访问的 DbJoinExpression。 + + + DbLambdaExpression 的访问者模式方法。 + 正在访问的 DbLambdaExpression。 + + + DbLikeExpression 的访问者模式方法。 + 正在访问的 DbLikeExpression。 + + + DbLimitExpression 的访问者模式方法。 + 正在访问的 DbLimitExpression。 + + + DbNewInstanceExpression 的访问者模式方法。 + 正在访问的 DbNewInstanceExpression。 + + + DbNotExpression 的访问者模式方法。 + 正在访问的 DbNotExpression。 + + + DbNullExpression 的访问者模式方法。 + 正在访问的 DbNullExpression。 + + + DbOfTypeExpression 的访问者模式方法。 + 正在访问的 DbOfTypeExpression。 + + + DbOrExpression 的访问者模式方法。 + 正在访问的 DbOrExpression。 + + + DbParameterReferenceExpression 的访问者模式方法。 + 正在访问的 DbParameterReferenceExpression。 + + + DbProjectExpression 的访问者模式方法。 + 正在访问的 DbProjectExpression。 + + + DbPropertyExpression 的访问者模式方法。 + 正在访问的 DbPropertyExpression。 + + + DbQuantifierExpression 的访问者模式方法。 + 正在访问的 DbQuantifierExpression。 + + + DbRefExpression 的访问者模式方法。 + 正在访问的 DbRefExpression。 + + + DbRefKeyExpression 的访问者模式方法。 + 正在访问的 DbRefKeyExpression。 + + + DbRelationshipNavigationExpression 的访问者模式方法。 + 正在访问的 DbRelationshipNavigationExpression。 + + + DbScanExpression 的访问者模式方法。 + 正在访问的 DbScanExpression。 + + + DbSkipExpression 的访问者模式方法。 + 正在访问的 DbSkipExpression。 + + + DbSortExpression 的访问者模式方法。 + 正在访问的 DbSortExpression。 + + + DbTreatExpression 的访问者模式方法。 + 正在访问的 DbTreatExpression。 + + + DbUnionAllExpression 的访问者模式方法。 + 正在访问的 DbUnionAllExpression。 + + + DbVariableReferenceExpression 的访问者模式方法。 + 正在访问的 DbVariableReferenceExpression。 + + + 应由返回特定类型的结果值的访问者实现的表达式访问者模式抽象基类。 + 访问者生成的结果值的类型。 + + + 初始化 类的新实例。 + + + DbAndExpression 的类型化访问者模式方法。 + 正在访问的 DbAndExpression。 + + + DbApplyExpression 的类型化访问者模式方法。 + 正在访问的 DbApplyExpression。 + + + DbArithmeticExpression 的类型化访问者模式方法。 + 正在访问的 DbArithmeticExpression。 + + + DbCaseExpression 的类型化访问者模式方法。 + 正在访问的 DbCaseExpression。 + + + DbCastExpression 的类型化访问者模式方法。 + 正在访问的 DbCastExpression。 + + + DbComparisonExpression 的类型化访问者模式方法。 + 正在访问的 DbComparisonExpression。 + + + DbConstantExpression 的类型化访问者模式方法。 + 正在访问的 DbConstantExpression。 + + + DbCrossJoinExpression 的类型化访问者模式方法。 + 正在访问的 DbCrossJoinExpression。 + + + DbDerefExpression 的访问者模式方法。 + 正在访问的 DbDerefExpression。 + + + DbDistinctExpression 的类型化访问者模式方法。 + 正在访问的 DbDistinctExpression。 + + + DbElementExpression 的类型化访问者模式方法。 + 正在访问的 DbElementExpression。 + + + DbEntityRefExpression 的访问者模式方法。 + 正在访问的 DbEntityRefExpression。 + + + DbExceptExpression 的类型化访问者模式方法。 + 正在访问的 DbExceptExpression。 + + + 遇到其他无法识别的类型的表达式时进行调用。 + 表达式。 + + + DbFilterExpression 的类型化访问者模式方法。 + 正在访问的 DbFilterExpression。 + + + DbFunctionExpression 的访问者模式方法 + 正在访问的 DbFunctionExpression。 + + + DbGroupByExpression 的类型化访问者模式方法。 + 正在访问的 DbGroupByExpression。 + + + DbInExpression 的类型化访问者模式方法。 + 正在访问的 DbInExpression。 + + + DbIntersectExpression 的类型化访问者模式方法。 + 正在访问的 DbIntersectExpression。 + + + DbIsEmptyExpression 的类型化访问者模式方法。 + 正在访问的 DbIsEmptyExpression。 + + + DbIsNullExpression 的类型化访问者模式方法。 + 正在访问的 DbIsNullExpression。 + + + DbIsOfExpression 的类型化访问者模式方法。 + 正在访问的 DbIsOfExpression。 + + + DbJoinExpression 的类型化访问者模式方法。 + 正在访问的 DbJoinExpression。 + + + DbLambdaExpression 的访问者模式方法。 + 正在访问的 DbLambdaExpression。 + + + DbLikeExpression 的访问者模式方法。 + 正在访问的 DbLikeExpression。 + + + DbLimitExpression 的访问者模式方法。 + 正在访问的 DbLimitExpression。 + + + DbNewInstanceExpression 的类型化访问者模式方法。 + 正在访问的 DbNewInstanceExpression。 + + + DbNotExpression 的类型化访问者模式方法。 + 正在访问的 DbNotExpression。 + + + DbNullExpression 的类型化访问者模式方法。 + 正在访问的 DbNullExpression。 + + + DbOfTypeExpression 的类型化访问者模式方法。 + 正在访问的 DbOfTypeExpression。 + + + DbOrExpression 的类型化访问者模式方法。 + 正在访问的 DbOrExpression。 + + + DbParameterReferenceExpression 的类型化访问者模式方法。 + 正在访问的 DbParameterReferenceExpression。 + + + DbProjectExpression 的类型化访问者模式方法。 + 正在访问的 DbProjectExpression。 + + + DbPropertyExpression 的类型化访问者模式方法。 + 正在访问的 DbPropertyExpression。 + + + DbQuantifierExpression 的类型化访问者模式方法。 + 正在访问的 DbQuantifierExpression。 + + + DbRefExpression 的类型化访问者模式方法。 + 正在访问的 DbRefExpression。 + + + DbRefKeyExpression 的访问者模式方法。 + 正在访问的 DbRefKeyExpression。 + + + DbRelationshipNavigationExpression 的类型化访问者模式方法。 + 正在访问的 DbRelationshipNavigationExpression。 + + + DbScanExpression 的类型化访问者模式方法。 + 正在访问的 DbScanExpression。 + + + DbSkipExpression 的类型化访问者模式方法。 + 正在访问的 DbSkipExpression。 + + + DbSortExpression 的类型化访问者模式方法。 + 正在访问的 DbSortExpression。 + + + DbTreatExpression 的类型化访问者模式方法。 + 正在访问的 DbTreatExpression。 + + + DbUnionAllExpression 的类型化访问者模式方法。 + 正在访问的 DbUnionAllExpression。 + + + DbVariableReferenceExpression 的类型化访问者模式方法。 + 正在访问的 DbVariableReferenceExpression。 + + + 表示一个谓词,该谓词应用于某一输入集以便生成满足它的一组元素。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取指定用于筛选输入集的谓词的 + + + 对应于聚合函数的调用的聚合类型。 + + + 获取一个值,该值指示是否以不同风格应用聚合函数 + + + 获取指定要调用的聚合函数的方法元数据。 + + + 表示以规范命令树表示的函数调用。 + + + 构造一个新的 DbFunctionCommandTree,它使用指定的元数据工作区、数据空间和函数元数据。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 要调用的 EDM 函数。 + 函数的结果类型。 + 与要调用的函数关联的参数。 + + + 获取或设置命令目录树类型。 + 命令目录树类型。 + + + 获取表示要调用的函数的 + 表示要调用的函数的 + + + 获取函数的结果类型;当前被约束为 RowTypes 的集合。与典型的 RowType 实例不同,仅指示名称/类型不是参数顺序。 + 函数的结果类型。 + + + 表示对函数的调用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取 列表,该列表提供函数的参数。 + + + 获取要调用的函数的元数据。 + + + 表示构成组的元素的集合。 + + + 表示一个分组运算,分组运算是根据指定的键表达式将输入集中的元素分组,后接指定聚合函数的应用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取 列表,该列表提供要应用的聚合函数。 + + + 获取 ,它指定输入集,并提供对集元素和组元素变量的访问。 + + + 获取 列表,该列表提供分组键。 + + + 定义输入集到 的绑定。除了 的属性之外,DbGroupExpressionBinding 还通过 <seealso cref="P:System.Data.Entity.Core.Common.CommandTrees.DbGroupExpressionBinding.GroupVariable" /> 变量引用提供对组元素的访问,并且通过 <seealso cref="P:System.Data.Entity.Core.Common.CommandTrees.DbGroupExpressionBinding.GroupAggregate" /> 属性提供对组聚合的访问。 + + + 获取用于定义输入集的 + + + 获取 DbGroupAggregate,它表示组的元素集合。 + + + 获取引用组元素变量的 DbVariableReferenceExpression。 + + + 获取指定给组元素变量的名称。 + + + 获取组元素变量的类型元数据。 + + + 获取引用元素变量的 DbVariableReferenceExpression。 + + + 获取指定给元素变量的名称。 + + + 获取元素变量的类型元数据。 + + + 表示一个布尔表达式,该布尔表达式测试某一指定的项是否与列表中的任何元素匹配。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取指定要匹配的项的 DbExpression。 + + + 获取要针对某一匹配进行测试的 DbExpression 的列表。 + + + 表示用一个规范命令目录树代表的单行插入操作。如果设置了 属性,此命令将返回一个读取器;否则,它将返回一个指示受影响的行数的标量值。 + + + 初始化 类的新实例。 + 元数据。 + 数据空间。 + 数据库目标。 + 确定插入的行中的列值的 Set 子句。 + 指定要基于修改的行返回的结果投影的 。 + + + 获取命令目录树类型。 + 命令目录树类型。 + + + 获取一个 ,它指定要基于修改的行返回的结果投影。如果为 null,则指示不应从此命令返回任何结果。 + 指定要基于修改的行返回的结果投影的 + + + 获取确定插入的行中的列值的 Set 子句。 + 确定插入的行中的列值的 Set 子句。 + + + 表示左右操作数之间的交集运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示应用于单集参数的空集确定。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示应用于单个参数的 null 确定。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示单个参数针对指定类型的类型比较。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取参数的类型元数据将与其进行比较的类型元数据。 + + + 表示在指定的联接条件下,在给定的集合参数之间进行的内部、左外部或完全外部联接运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取定义要应用的联接条件的 + + + 获取提供左输入的 + + + 获取提供右输入的 + + + 表示 Lambda 函数的应用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个 列表,该列表提供 Lambda 函数应该应用于的参数。 + + + 获取表示此表达式应用的 Lambda 函数的 + + + 表示针对指定的模式与可选的转义字符串进行的字符串比较 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个表达式,它指定要针对给定模式进行比较的字符串 + + + 获取一个表达式,它提供用于比较的可选的转义字符串 + + + 获取一个表达式,它指定比较给定字符串时所针对的模式 + + + 表示将参数集合中的元素数限制为指定的限值。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取指定输入集合的表达式。 + + + 获取指定从输入集合中返回的元素数限制的表达式。 + + + 获取限制操作是否将包括等值结果,在存在等值时,这可以生成比该限值指定的结果更多的结果。 + + + 在插入或更新修改操作中指定单个子句,请参见 + + + 表示以规范命令目录树表示的 DML 操作 + + + 获取为 DML 操作指定目标表的 + + + 表示给定类型(包括集类型和记录类型)的新实例的构造。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个 列表,该列表可为新实例提供属性/列值或集元素。 + + + 表示对单个 Boolean 参数执行的逻辑非运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示 null。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示从给定的集参数中检索属于指定类型的元素。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取应从集参数中检索的元素类型的元数据。 + + + 表示两个 Boolean 参数的逻辑或。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示对在包含此表达式的命令目录树上声明的参数的引用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取所引用的参数的名称。 + + + 表示给定值集在指定输入集上的投影。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取定义投影的 + + + 提供用于检索实例属性的方法和属性。此类不能被继承。 + + + 为不生成结果值的表达式实现访问者模式。 + + 的一个实例。 + visitor 为 null。 + + + 为生成特定类型的结果值的表达式实现访问者模式。 + 一个由 生成的特定类型结果值。 + 生成特定类型结果值的类型化 的一个实例。 + 访问者生成的结果类型。 + visitor 为 null。 + + + 获取 ,它定义应从中检索属性的实例。 + 用于定义应从中检索属性的实例的 + + + 允许隐式强制转换为 + 转换后的值。 + 要转换的表达式。 + + + 获取要检索的属性的属性元数据。 + 要检索的属性的属性元数据。 + + + 基于此属性表达式创建一个新的键/值对。 + 具有从 派生的键和值的新键/值对。 + + + 表示对指定输入集中的元素执行的指定种类(Any、All)的限定符操作。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取应为输入集中的每个元素计算的 Boolean 谓词。 + + + 表示一项以规范命令目录树形式表示的查询操作。 + + + 初始化使用指定元数据工作区的 类的新实例。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 一个定义查询逻辑的 。 + + 为 null。 + + 不表示有效数据空间。 + + + 初始化使用指定元数据工作区的 类的新实例。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 一个定义查询逻辑的 。 + 若为 true,则验证树;否则为 false。在设置为 false 时,将禁用对目录树的验证。 + + 为 null。 + + 不表示有效数据空间。 + + + 初始化 类的新实例。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 一个定义查询逻辑的 。 + 若为 true,则验证树;否则为 false。在设置为 false 时,将禁用对目录树的验证。 + 若为 true,则使用数据库 null 语义;否则为 false。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取定义查询逻辑的 + 一个定义查询逻辑的 + + + 表示对某一给定实体集中的特定实例的(强类型)引用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取包含该实例的实体集的元数据。 + + + 表示将指定引用的键值作为行检索。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示给定“源”角色、“目标”角色和源角色的实例的情况下关系的导航(组合或关联) + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取要从其开始导航的关系端的元数据 + + + 获取要导航到的关系端的元数据 + + + 获取 ,它指定应从其开始导航的“源”关系端的实例。 + + + 获取要导航的关系的元数据 + + + 表示某一给定实体集的所有元素的“扫描”。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取所引用的实体集或关系集的元数据。 + + + 指定用于设置属性值的修改操作中的子句。 + + + 获取一个指定应更新的属性的 + + + 获取一个 ,它指定用于更新属性的新值。 + + + 表示应用在给定排序键中描述的顺序后输入集的指定数目的元素的跳过操作。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取指定要在输入集合中跳过的元素数的表达式。 + + + 获取用于指定输入集的 + + + 获取一个定义排序顺序的 列表。 + + + 指定可在 DbSortExpression 中用作排序顺序的一部分的排序关键字。 + + + 获取一个布尔值,该值指示此排序关键字是否按升序排序。 + + + 获取一个字符串值,该值指定此排序关键字的排序规则。 + + + 获取为此排序关键字提供值的 + + + 表示一项基于给定的排序关键字应用于指定输入集中的元素的排序操作。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取一个定义排序顺序的 列表。 + + + 表示单个参数向指定类型的类型转换。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 接受单个表达式操作数的表达式的抽象基类型 + + + 获取定义参数的 + + + 表示左右操作数之间的 set 联合(不移除重复项)运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示一项以命令目录树形式表示的单行更行操作。此类不能被继承。 + + + 初始化 类的新实例。 + 将对其运行此命令的模型。 + 数据空间。 + 数据操作语言 (DML) 操作的目标表。 + 一个谓词,用于确定目标集合中应更新的成员。 + 定义更新操作的更新 Set 子句列表。 + 一个 ,它指定要基于修改的行返回的结果投影。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取一个 ,它指定用于确定目标集合中应更新的成员的谓词。 + 一个 ,指定用于确定目标集合中应更新的成员的谓词。 + + + 获取一个 ,它指定要基于修改的行返回的结果投影。 + 一个 ,它指定要基于修改的行返回的结果投影。如果为 null,则指示不应从此命令返回任何结果。 + + + 获取定义更新操作的更新 Set 子句列表。 + 定义更新操作的更新 Set 子句列表。 + + + 表示对当前处于范围内的某个变量的引用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取所引用的变量的名称。 + + + 从给定的根表达式访问表达式目录树的每个元素。如果任何元素发生更改,则目录树将被重新生成回根目录并且返回新的根表达式;否则,返回原始根表达式。 + + + 初始化 类的新实例。 + + + 当使用指定的范围变量进入表达式访问者的范围时表示事件。 + 范围变量的集合。 + + + 退出表达式访问者的范围。 + + + 用表达式访问者的新表达式替换旧表达式。 + 旧表达式。 + 新表达式。 + + + 当重新绑定表达式访问者的变量时表示事件。 + 变量的位置。 + 重新绑定的变量的引用。 + + + 实现逻辑与表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbAndExpression。 + + + 为调用指定输入集中每个元素的指定函数实现访问者模式。 + 实现的访问者。 + 正在访问的 DbApplyExpression。 + + + 实现应用于数值参数的算术运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbArithmeticExpression。 + + + 实现 When、Then 和 Else 子句的访问者模式。 + 实现的访问者。 + 正在访问的 DbCaseExpression。 + + + 实现将单个参数转换为指定类型的类型转换的访问者模式。 + 实现的访问者。 + 正在访问的 DbCastExpression。 + + + 实现应用于两个参数的比较运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbComparisonExpression。 + + + 实现不同类型常量的访问者模式。 + 实现的访问者。 + 正在访问的 DbConstantExpression。 + + + 实现给定集合参数之间的无条件联接操作的访问者模式。 + 实现的访问者。 + 正在访问的 DbCrossJoinExpression。 + + + 实现基于指定引用检索实体的表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbDerefExpression。 + + + 实现从指定的集参数中删除的重复元素的访问者模式。 + 实现的访问者。 + 正在访问的 DbDistinctExpression。 + + + 实现指定的集参数到单一实例的转换的访问者模式。 + 实现的访问者。 + 正在访问的 DbElementExpression。 + + + 实现从基础实体实例提取引用的表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbEntityRefExpression。 + + + 实现左操作数和右操作数之间设置的减法运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbExceptExpression。 + + + 实现表达式类型所需的基本功能的访问者模式。 + 实现的访问者。 + 正在访问的 DbExpression。 + + + 实现应用于筛选输入集的谓语的访问者模式。 + 实现的访问者。 + 正在访问的 DbFilterExpression。 + + + 实现调用某个函数的访问者模式。 + 实现的访问者。 + 正在访问的 DbFunctionExpression。 + + + 通过运算实现针对某个组的访问者模式。 + 实现的访问者。 + 正在访问的 DbGroupByExpression。 + + + 实现 DbInExpression 的访问者模式。 + 实现的访问者。 + 正在访问的 DbInExpression。 + + + 实现左操作数和右操作数之间设置的交集运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbIntersectExpression。 + + + 实现应用于单集参数的空集确定的访问者模式。 + 实现的访问者。 + 正在访问的 DbIsEmptyExpression。 + + + 实现应用于单个参数的 null 确定的访问者模式。 + 实现的访问者。 + 正在访问的 DbIsNullExpression。 + + + 实现将单个参数与指定类型进行比较的类型比较的访问者模式。 + 实现的访问者。 + 正在访问的 DbIsOfExpression。 + + + 实现指定联接条件下给定集合参数之间内部联接、左外部联接或完全外部联接运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbJoinExpression。 + + + 实现将 lambda 函数应用于 DbExpression 对象所表示的参数的访问者模式。 + 实现的访问者。 + 正在访问的 DbLambdaExpression。 + + + 实现与带有可选转义字符串的指定模式进行字符串比较的访问者模式。 + 实现的访问者。 + 正在访问的 DbLikeExpression。 + + + 实现将参数集合中的元素数目限制为指定限值的访问者模式。 + 实现的访问者。 + 正在访问的 DbLimitExpression。 + + + 实现构建给定类型的新实例(包括集和记录类型)的访问者模式。 + 实现的访问者。 + 正在访问的 DbNewInstanceExpression。 + + + 实现单个布尔参数的逻辑非运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbNotExpression。 + + + 实现对类型化 null 文本的引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbNullExpression。 + + + 实现根据给定集参数检索指定类型的元素的访问者模式。 + 实现的访问者。 + 正在访问的 DbOfTypeExpression。 + + + 实现两个布尔参数的逻辑或的访问者模式。 + 实现的访问者。 + 正在访问的 DbOrExpression。 + + + 实现对包含此表达式的命令目录树中所声明参数的引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbParameterReferenceExpression。 + + + 实现对指定表达式的给定输入集的投影的访问者模式。 + 实现的访问者。 + 正在访问的 DbProjectExpression。 + + + 实现检索实例属性的访问者模式。 + 实现的访问者。 + 正在访问的 DbPropertyExpression。 + + + 实现对指定输入集元素执行的指定类型的限定符运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbQuantifierExpression。 + + + 实现对实体集内特定实例的强类型引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbRefExpression。 + + + 实现根据基础引用值检索键值的访问者模式。 + 实现的访问者。 + 正在访问的 DbRefKeyExpression。 + + + 实现关系导航的访问者模式。 + 实现的访问者。 + 正在访问的 DbRelationshipNavigationExpression。 + + + 实现对 Target 属性所指示的实体集或关系集的扫描的访问者模式。 + 实现的访问者。 + 正在访问的 DbScanExpression。 + + + 实现 skip 表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbSkipExpression。 + + + 实现可用作排序顺序一部分的排序关键字的访问者模式。 + 实现的访问者。 + 正在访问的 DbSortExpression。 + + + 实现应用于多态参数的类型转换运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbTreatExpression。 + + + 实现左操作数和右操作数之间设置的并集运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbUnionAllExpression。 + + + 实现对当前处于范围内的变量的引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbVariableReferenceExpression。 + + + 实现对聚合的访问者模式。 + 实现的访问者模式。 + 要访问的聚合。 + + + 实现对实体集的访问者模式。 + 实现的访问者模式。 + 实体集。 + + + 实现表达式的访问者模式。 + 实现的访问者模式。 + 表达式。 + + + 实现表达式绑定的访问者模式。 + 实现的访问者模式。 + 表达式绑定。 + + + 实现表达式绑定列表的访问者模式。 + 实现的访问者模式。 + 表达式绑定列表。 + + + 实现表达式列表的访问者模式。 + 实现的访问者模式。 + 表达式列表。 + + + 实现函数的访问者模式。 + 实现的访问者模式。 + 函数元数据。 + + + 实现函数聚合的访问者模式。 + 实现的访问者模式。 + 聚合。 + + + 实现组聚合的访问者模式。 + 实现的访问者模式。 + 聚合。 + + + 实现组表达式绑定的访问者模式。 + 实现的访问者模式。 + 绑定。 + + + 实现 Lambda 函数的访问者模式。 + 实现的访问者模式。 + Lambda 函数。 + + + 实现排序子句的访问者模式。 + 实现的访问者模式。 + 排序子句。 + + + 实现排序顺序的访问者模式。 + 实现的访问者模式。 + 排序顺序。 + + + 实现类型的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 实现类型用法的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 提供一个用于构造 的 API,并且允许该 API 作为针对表达式类型本身的扩展方法来访问。 + + + 创建一个新的 + 具有对给定函数和参数的引用的一个新的函数聚合。该函数聚合的 Distinct 属性将具有值 false。 + 定义聚合运算的函数。 + 要对其计算聚合函数的参数。 + + 为 null。 + + 不是聚合函数,或者具有多个实参;或者 的结果类型不相等或不能提升为 的形参类型。 + + + 创建以不同风格应用的一个新的 + 具有对给定函数和参数的引用的一个新的函数聚合。该函数聚合的 Distinct 属性将具有值 true。 + 定义聚合运算的函数。 + 要对其计算聚合函数的参数。 + + 为 null。 + + 不是聚合函数,或者具有多个实参;或者 的结果类型不相等或不能提升为 的形参类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的所有元素。 + 表示 All 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式。 + 一个方法,它表示要为输入集的每个成员计算的谓词。此方法必须生成一个表达式,该表达式具有提供谓词逻辑的 Boolean 结果类型。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的所有元素。 + 表示 All 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式绑定。 + 一个表达式,它表示要针对输入集的每个成员计算的谓词。 + + 为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个 ,它对左边参数和右边参数执行逻辑与运算。 + 具有指定参数的新 DbAndExpression。 + 指定左边参数的布尔表达式。 + 指定右边参数的布尔表达式。 + + 为 null。 + + 不具有布尔结果类型。 + + + 创建一个新的 ,它确定指定的集参数是否非空。 + 一个新的 ,它使用指定的参数应用于新的 + 一个指定输入集的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的任何元素。 + 表示 Any 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式。 + 一个方法,它表示要为输入集的每个成员计算的谓词。此方法必须生成一个表达式,该表达式具有提供谓词逻辑的 Boolean 结果类型。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的任何元素。 + 表示 Any 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式绑定。 + 一个表达式,它表示要针对输入集的每个成员计算的谓词。 + + 为 null。 + + 不具有布尔结果类型。 + + + 以键/值对对象的形式返回指定参数。 + 键/值对对象。 + 键/值对中的值。 + 键/值对中的键。 + + + 以键/值对对象的形式返回指定参数。 + 键/值对对象。 + 键/值对中的值。 + 键/值对中的键。 + + + 创建一个新的 ,它使用生成的变量名称绑定给定的表达式。 + 具有指定的表达式和生成的变量名称的一个新的表达式绑定。 + 要绑定的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它使用指定的变量名称绑定给定的表达式。 + 具有指定表达式和变量名称的一个新的表达式绑定。 + 要绑定的表达式。 + 应该用于绑定的变量名称。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 + 具有指定事例和默认结果的一个新的 DbCaseExpression。 + 为每个事例提供条件的表达式的列表。 + 提供每个事例的结果的表达式列表。 + 定义没有匹配事例时的结果的表达式。 + + 为 null 或包含 null,或者 为 null。 + + 为空,或者 包含带有非布尔结果类型的表达式,或者没有适用于 中所有表达式的通用结果类型。 + + + 创建一个新的 ,它将强制转换运算应用于一个多态参数。 + 具有指定的参数和目标类型的一个新的 DbCastExpression。 + 应对其应用强制转换的参数。 + 指定要强制转换为的类型的类型元数据。 + + 为 null。 + 指定的强制转换无效。 + + + 使用给定的常量值创建一个具有指定基元类型的新的 + 具有给定值和 结果类型的一个新的 DbConstantExpression。 + 常量值的类型。 + 要表示的常量值。 + valueconstantType + + 不是有效常量类型的实例, 不表示基元类型,或者 所属的基元类型与 表示的基元类型不同。 + + + 使用给定的常量值创建一个新的 + 具有给定值的一个新的 DbConstantExpression。 + 要表示的常量值。 + + 为 null。 + + 不是有效常量类型的实例。 + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它对基于键值对给定类型的特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 引用的实体的特定类型。此实体类型必须与实体集的元素类型处于同一层次结构。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 不是来自 的元素类型所在的层次结构(子类型、超类型或相同类型)。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它对基于键值对给定类型的特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 引用的实体的特定类型。此实体类型必须与实体集的元素类型处于同一层次结构。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 不是来自 的元素类型所在的类型层次结构(子类型、超类型或相同类型)。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。 + 具有指定的输入和应用绑定以及 CrossApply 的 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个方法,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + 没有集合结果类型。 + + 的结果包含为 Null 的名称或表达式。 + + 的结果包含在表达式绑定中无效的名称或表达式。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。 + 具有指定的输入和应用绑定以及 CrossApply 的 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个 ,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + + 创建一个新的 ,它无条件联接输入表达式绑定列表指定的集。 + 具有 CrossJoin 的 的一个新的 DbCrossJoinExpression,它表示输入集的无条件联接。 + 指定输入集的表达式绑定列表。 + + 为 null 或包含 null。 + + 包含的表达式绑定数目少于 2。 + + + 创建一个新的 ,它根据给定的引用表达式检索特定实体。 + 检索指定实体的一个新的 DbDerefExpression。 + 一个提供引用的 。此表达式必须具有引用类型。 + + 为 null + + 没有引用结果类型。 + + + 创建一个新的 ,它从给定的集参数中删除重复项。 + 一个新的 DbDistinctExpression,它表示应用于指定集参数的不同运算。 + 定义要对其执行不同运算的集的表达式。 + + 为 null。 + + 没有引用结果类型。 + + + 创建一个新的 ,它用左边参数除以右边参数。 + 表示除法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它将一个集转换为单一实例。 + 一个 DbElementExpression,它表示从集参数到单一实例的转换。 + 一个指定输入集的表达式。 + + 为 null。 + + 没有引用结果类型。 + + + 创建一个新的 ,它比较左边参数和右边参数是否相等。 + 表示相等比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它计算从左边集参数中减去右边集参数的结果。 + 一个新的 DbExceptExpression,它表示从左边参数中减去右边参数之差。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 为 null。 + + 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它确定指定的集参数是否非空。 + 一个新的 ,它使用指定的参数应用于新的 + 一个指定输入集的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 使用布尔值 false 创建一个 + 带布尔值 false 的 + + + 创建一个新的 ,它使用指定的谓词筛选给定输入集中的元素。 + 生成筛选的集的一个新的 DbFilterExpression。 + 一个指定输入集的表达式绑定。 + 一个表达式,它表示要针对输入集的每个成员计算的谓词。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 FullOuterJoin 作为 + 一个 为 FullOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的完全外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个表示联接条件的方法。此方法必须生成一个具有布尔结果类型的表达式,该表达式提供联接条件的逻辑。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式绑定和右边表达式绑定指定的集,并且使用 FullOuterJoin 作为 + 一个 为 FullOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的完全外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个指定联接条件的表达式。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它以结构化形式检索指定实体的引用。 + 检索对指定实体的引用的一个新的 DbEntityRefExpression。 + 提供实体的表达式。此表达式必须具有实体结果类型。 + + 为 null。 + + 没有实体结果类型。 + + + 创建一个新的 ,它以结构化形式检索指定引用的键值。 + 检索指定引用的键值的一个新的 DbRefKeyExpression。 + 提供引用的表达式。此表达式的引用类型必须具有实体元素类型。 + + 为 null。 + + 没有实体结果类型。 + + + 创建一个新的 ,它确定左边参数是否大于右边参数。 + 表示大于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它确定左边参数是否大于或等于右边参数。 + 表示大于或等于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + left 或 right 为 null。 + left 与 right 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 对指定参数创建一个新的 + 一个新的组聚合,它表示按给定参数引用的组的元素。 + 通过其执行嵌套运算的参数。 + + 为 null。 + + + 创建一个新的组表达式绑定,该绑定使用生成的变量名称和组变量名称来绑定给定的表达式。 + 一个新的组表达式绑定,该绑定具有指定的表达式以及生成的变量名称和组变量名称。 + 要绑定的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它使用指定的变量名称和组变量名称来绑定给定的表达式。 + 具有指定的表达式、变量名称和组变量名称的一个新的组表达式绑定。 + 要绑定的表达式。 + 应该用于绑定的变量名称。 + 在分组表达式中使用新的组表达式绑定时应该用于引用该组的变量名称。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它根据指定的组键对输入集的元素进行分组并应用给定的聚合。 + 具有指定的输入集、分组键和聚合的一个新的 DbGroupByExpression。 + 指定输入集的 。 + 定义分组列的字符串表达式对的列表。 + 指定要应用的聚合的表达式列表。 + + 为 null, 包含为 null 的键列名称或表达式,或者聚合包含为 null 的聚合列名称或 + + 均为空,或指定了无效或重复的列名称。 + + + 创建一个 ,它将指定表达式的结果与指定列表中常量表达式的结果进行匹配。 + 如果 DbConstantExpression 列表非空,则为具有指定参数的一个新的 DbInExpression;否则为 false 常量表达式。 + 要匹配的 DbExpression。 + 要针对某一匹配进行测试的 DbConstantExpression 的列表。 + + 为 null。 + + 的结果类型与来自 的表达式的结果类型不同。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 InnerJoin 作为 + 一个 InnerJoin 为 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的内部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个表示联接条件的方法。此方法必须生成一个具有布尔结果类型的表达式,该表达式提供联接条件的逻辑。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 InnerJoin 作为 + 一个 InnerJoin 为 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的内部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个指定联接条件的表达式。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它计算左边集参数和右边集参数的交集。 + 一个新的 DbIntersectExpression,它表示左边参数和右边参数的交集。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 或 right 为 + + 之间不存在任何常用集合结果类型。 + + + 创建一个新的 ,它表示对给定参数应用指定的 Lambda 函数。 + 表示 Lambda 函数应用的一个新的 DbLambdaExpression。 + 一个 实例,它表示要应用的 Lambda 函数。 + 提供参数的表达式列表。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它表示对给定参数应用指定的 Lambda 函数。 + 表示 Lambda 函数应用的一个新的 DbLambdaExpression。 + 一个 实例,它表示要应用的 Lambda 函数。 + 提供参数的表达式。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它表示使用给定的参数调用指定的函数。 + 表示函数调用的一个新的 DbFunctionExpression。 + 要调用的函数的元数据。 + 为函数提供参数的表达式列表。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它表示使用给定的参数调用指定的函数。 + 表示函数调用的一个新的 DbFunctionExpression。 + 要调用的函数的元数据。 + 为函数提供参数的表达式。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它确定指定的集参数是否为空集。 + 具有指定参数的一个新的 DbIsEmptyExpression。 + 一个指定输入集的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它确定指定的参数是否为 null。 + 具有指定参数的一个新的 DbIsNullExpression。 + 指定参数的表达式。 + + 为 null。 + + 有一个集合结果类型。 + + + 创建一个新的 ,它确定给定的参数是否为指定的类型或子类型。 + 具有指定的实例和类型以及 DbExpressionKind IsOf 的一个新的 DbIsOfExpression。 + 指定实例的表达式。 + 类型元数据,它指定应与实例的结果类型进行比较的类型。 + + 为 null。 + + 的结果类型不处于相同的类型层次结构中。 + + + 创建一个新的 表达式,该表达式确定给定的参数是否属于指定的类型且只属于该类型(而非子类型)。 + 具有指定的实例和类型以及 DbExpressionKind IsOfOnly 的一个新的 DbIsOfExpression。 + 指定实例的表达式。 + 类型元数据,它指定应与实例的结果类型进行比较的类型。 + + 为 null。 + + 的结果类型不处于相同的类型层次结构中。 + + + 创建一个新的 ,它基于指定的外部键和内部键之间的相等条件联接外部表达式和内部表达式指定的集,并且使用 InnerJoin 作为 + 一个 InnerJoin 为 的新的 DbJoinExpression,它表示基于比较外部键值和内部键值是否相等的联接条件应用于左边输入集和右边输入集的内部联接运算。 + 指定外部集参数的 。 + 指定内部集参数的 。 + 一个方法,它指定如何从外部集的元素派生外部键值。 + 一个方法,它指定如何从内部集的元素派生内部键值。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不能比较是否相等。 + + + 创建一个新的 ,它对外部和内部表达式指定的集投影指定的选择器,基于指定的外部键和内部键之间的相等条件进行联接,并且使用 InnerJoin 作为 + 一个新的 DbProjectExpression,它使用指定的选择器作为其投影并且使用一个新的 DbJoinExpression 作为其输入。输入 DbJoinExpression 是使用 InnerJoin 的 创建的,它表示基于比较外部键值和内部键值是否相等的联接条件应用于左边输入集和右边输入集的内部联接运算。 + 指定外部集参数的 。 + 指定内部集参数的 。 + 一个方法,它指定如何从外部集的元素派生外部键值。 + 一个方法,它指定如何从内部集的元素派生内部键值。 + 一个方法,它指定如何从内部和外部集的元素派生结果集的元素。此方法必须生成与 Join 兼容且可以解析为 的类型的实例。备注中说明了针对 的兼容性要求。 + 选择器的类型。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + 在转换为 DbExpression 之后 的结果为 null。 + + 生成的表达式不能比较是否相等。 + + 的结果与 SelectMany 不兼容。 + + + 使用指定的内联 Lambda 函数实现和形参创建 + 一个新的 DbLambda,它描述具有指定主体和形参的内联 Lambda 函数。 + 一个定义 Lambda 函数的逻辑的表达式。 + 一个 集合,该集合表示 Lambda 函数的形参。这些变量可以有效地在 表达式中使用。 + + 为 null 或包含 null,或者 为 null。 + + 包含多个具有相同变量名称的元素。 + + + 使用指定的内联 Lambda 函数实现和形参创建 + 一个新的 DbLambda,它描述具有指定主体和形参的内联 Lambda 函数。 + 一个定义 Lambda 函数的逻辑的表达式。 + 一个 集合,该集合表示 Lambda 函数的形参。这些变量可以有效地在 body 表达式中使用。 + + 为 null 或包含 null,或者 为 null。 + + 包含多个具有相同变量名称的元素。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 LeftOuterJoin 作为 + 一个 为 LeftOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的左外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个表示联接条件的方法。此方法必须生成一个具有布尔结果类型的表达式,该表达式提供联接条件的逻辑。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式绑定和右边表达式绑定指定的集,并且使用 LeftOuterJoin 作为 + 一个 为 LeftOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的左外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个指定联接条件的表达式。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它确定左边参数是否小于右边参数。 + 表示小于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它确定左边参数是否小于或等于右边参数。 + 表示小于或等于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它将指定的输入字符串与给定的模式进行比较。 + 具有指定输入、模式和 null 转义的一个新的 DbLikeExpression。 + 指定输入字符串的表达式。 + 指定模式字符串的表达式。 + + 为 null。 + + 不具有字符串结果类型。 + + + 创建一个新的 ,它使用可选转义符将指定的输入字符串与给定的模式进行比较。 + 具有指定的输入、模式和转义符的一个新的 DbLikeExpression。 + 指定输入字符串的表达式。 + 指定模式字符串的表达式。 + 指定转义字符串的可选表达式。 + + 或转义符为 + + 或转义符不具有字符串结果类型。 + + + 创建一个新的 ,它将参数集合中的元素数目限制为指定的计数限值。输出中不包括等值结果。 + 一个新的 DbLimitExpression,它具有指定参数以及不包括等值结果的计数限值。 + 一个指定输入集合的表达式。 + 指定限值的表达式。 + + 为 null。 + + 不具有集合结果类型,或者 不具有等同于或可提升为 64 位整数类型的结果类型。 + + + 创建一个新的 ,它从左边参数中减去右边参数。 + 表示减法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它计算左边参数除以右边参数所得的余数。 + 表示取模运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它用左边参数乘以右边参数。 + 表示乘法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它表示组合或关联的导航。 + 一个新的 DbRelationshipNavigationExpression,它表示从指定的导航源实例的指定关系类型的指定源和目标关系端的导航。 + 一个表达式,它指定应作为导航起点的实例。 + 属性的元数据,表示作为导航的源的关系端。 + 属性的元数据,表示作为导航的目标的关系端。 + + 为 null。 + + 不是由相同关系类型声明的,或者 的结果类型与 的属性类型不兼容。 + + + 创建一个新的 ,它表示组合或关联的导航。 + 一个新的 DbRelationshipNavigationExpression,它表示从指定的导航源实例的指定关系类型的指定源和目标关系端的导航。 + 表示关系的关系类型的元数据。 + 关系类型的属性名称,它表示作为导航的源的关系端。 + 关系类型的属性名称,它表示作为导航的目标的关系端。 + 一个表达式,它指定应作为导航起点的实例。 + + + 为 null。 + + 与此命令目录树的元数据工作区不关联,或者 与其他命令目录树相关联,或者 未声明具有 名称的关系端属性,或者 具有与 不兼容的结果类型。 + + + 创建一个新的 ,它对参数值求反。 + 表示求反运算的一个新的 DbArithmeticExpression。 + 指定参数的表达式。 + + 为 null。 + 不存在针对 的任何数值结果类型。 + + + 创建一个新的 。如果类型参数为集合类型,则参数将指定集合的元素。否则,参数将用作新实例中的属性值或列值。 + 具有指定的类型和参数的一个新的 DbNewInstanceExpression。 + 新实例的类型。 + 指定新实例的值的表达式,根据实例的类型对其进行解释。 + + 为 null,或者 包含 null。 + + 为空,或者包含的表达式的结果类型与 的要求不匹配(在备注部分中进行了说明)。 + + + 创建一个新的 。如果类型参数为集合类型,则参数将指定集合的元素。否则,参数将用作新实例中的属性值或列值。 + 具有指定的类型和参数的一个新的 DbNewInstanceExpression。 + 新实例的类型。 + 指定新实例的值的表达式,根据实例的类型对其进行解释。 + instanceTypeargumentsarguments + + 为 null,或者 包含 null。 + + + 创建一个新的 ,它构造一个包含指定元素的集合。集合的类型基于元素的通用类型。如果不存在通用元素类型,将引发异常。 + 具有指定的集合类型和参数的一个新的 DbNewInstanceExpression。 + 提供集合元素的表达式列表。 + + 为 null 或包含 null。 + + 为空,或包含不存在通用结果类型的表达式。 + + + 创建一个新的 ,它构造一个包含指定元素的集合。集合的类型基于元素的通用类型。如果不存在通用元素类型,将引发异常。 + 具有指定的集合类型和参数的一个新的 DbNewInstanceExpression。 + 提供集合元素的表达式列表。 + + 为 null 或包含 null。 + + 为空,或包含不存在通用结果类型的表达式。 + + + 创建一个新的 ,它构造指定集合类型的空集合。 + 具有指定的集合类型和空 Arguments 列表的一个新的 DbNewInstanceExpression。 + 要创建的集合的类型元数据。 + + 为 null。 + + 不是集合类型。 + + + 创建一个新的 ,它生成具有指定的命名列和给定值并且指定为表达式的一行。 + 表示行的构造的一个新的 DbNewInstanceExpression。 + 定义行的结构和值的字符串-DbExpression 键/值对的列表。 + + 为 null,或者包含具有 null 列名或表达式的元素。 + + 为空,或包含重复的或无效的列名称。 + + + 创建一个 ,它对给定的参数执行逻辑求反运算。 + 使用指定参数的一个新的 DbNotExpression。 + 一个指定参数的布尔表达式。 + + 为 null。 + 参数不具有布尔结果类型。 + + + 创建一个新的 ,它比较左边参数和右边参数是否不相等。 + 表示不相等比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行相等比较的结果类型。 + + + 创建一个新的 ,它表示类型化的 null 值。 + DbNullExpression 的实例。 + null 值的类型。 + + 为 null。 + + + 创建一个新的 ,它生成一个集,该集由属于指定类型的给定输入集的元素构成。 + 具有指定的集参数和类型以及 为 ExpressionKind 的一个新的 DbOfTypeExpression。 + 指定输入集的 。 + 要使输入集的元素包括在结果集中,这些元素必须具有的类型的类型元数据。 + + 为 null。 + + 不具有集合结果 ,或者类型所处于的类型层次结构与 的集合结果类型的元素类型不同。 + + + 创建一个新的 ,它生成一个集,该集由恰好属于指定类型的给定输入集的元素构成。 + 具有指定的集参数和类型以及 为 ExpressionKind 的一个新的 DbOfTypeExpression。 + 指定输入集的 。 + 要使输入集的元素包括在结果集中,这些元素必须严格匹配的类型的类型元数据。 + + 为 null。 + + 不具有集合结果 ,或者类型所处于的类型层次结构与 的集合结果类型的元素类型不同。 + + + 创建一个 ,它对左边参数和右边参数执行逻辑或运算。 + 具有指定参数的一个新的 DbOrExpression。 + 指定左边参数的布尔表达式。 + 指定右边参数的布尔表达式。 + leftright + leftright + + + 创建一个新的 ,它使用升序排序顺序和默认排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的结果类型。 + + + 创建一个新的 ,它使用升序排序顺序和指定排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 创建一个新的 ,它使用降序排序顺序和默认排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + + 创建一个新的 ,它使用降序排序顺序和默认排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。其 计算结果为空集的行具有值为 null 的 apply 列值。 + 具有指定的输入和应用绑定且 OuterApply 为 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个方法,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + 没有集合结果类型。 + apply 的结果包含为 null 的名称或表达式。 + apply 的结果包含在表达式绑定中无效的名称或表达式。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。其 计算结果为空集的行具有值为 null 的 apply 列值。 + 具有指定的输入和应用绑定且 OuterApply 为 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个 ,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + + 创建一个新的 ,它使用指定的名称和类型引用参数。 + 表示对具有指定名称和类型的参数的引用的 DbParameterReferenceExpression;表达式的结果类型将与 相同。 + 引用参数的类型。 + 引用参数的名称。 + + + 创建一个新的 ,它将左边参数与右边参数相加。 + 表示加法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + left 与 right 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它对给定的输入集投影指定的表达式。 + 表示投影运算的一个新的 DbProjectExpression。 + 一个指定输入集的表达式绑定。 + 要对集投影的表达式。 + + 为 null。 + + + 创建一个新的 ,它表示对指定属性的检索。 + 表示属性检索的一个新的 DbPropertyExpression。 + 要从中检索属性的实例。如果该属性是静态的,则可能为 null。 + 要检索的属性的元数据。 + + 为 null,或者 为 null 并且属性不是静态的。 + + + 创建一个新的 ,它表示对指定导航属性的检索。 + 表示导航属性检索的一个新的 DbPropertyExpression。 + 要从中检索导航属性的实例。 + 要检索的导航属性的元数据。 + + 为 null 或 为 null。 + + + 创建一个新的 ,它表示对指定关系端成员的检索。 + 表示关系端成员检索的一个新的 DbPropertyExpression。 + 要从中检索关系端成员的实例。 + 要检索的关系端成员的元数据。 + + 为 null,或者 为 null 并且属性不是静态的。 + + + 创建一个新的 ,它表示从给定实例中检索具有指定名称的实例属性。 + 表示属性检索的一个新的 DbPropertyExpression。 + 要从中检索属性的实例。 + 要检索的属性的名称。 + + 为 null,或者 为 null 并且属性不是静态的。 + 没有具有指定名称的属性是由 类型声明的。 + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 一个 ,它使用与引用的实体类型的 Key 属性在数目、类型和顺序上相匹配的列构造一个记录。 + + 为 null。 + keyRow + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 一个 ,它使用与引用的实体类型的 Key 属性在数目、类型和顺序上相匹配的列构造一个记录。 + 引用应针对的实体的类型。 + + 为 null。 + + 与实体集的实体类型不处于相同的类型层次结构,或者 不具有与引用的实体集的实体类型的键属性匹配的记录结果类型。 + + + 创建一个新的 ,它引用指定的实体集或关系集。 + 基于指定的实体或关系集的一个新的 DbScanExpression。 + 要引用的实体或关系集的元数据。 + + 为 null。 + + + 创建一个新的 ,它对给定的输入集选择指定的表达式。 + 表示选择运算的一个新的 DbProjectExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生投影的表达式。此方法必须生成与 Select 兼容且可以解析为 的类型的实例。备注中说明了针对 的兼容性要求。 + + 的方法结果类型。 + + 为 null + + 的结果为 null。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。然后创建了 ,它对每一行选择指定的 ,并且生成结果的整个集合。 + 一个新的 DbProjectExpression,它从具有指定输入和应用绑定且 CrossApply 为 的一个新的 DbApplyExpression 中选择 apply 列。 + 指定输入集的 。 + 一个方法,它表示要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有集合类型。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。然后创建了 ,它对每一行选择指定的 ,并且生成结果的整个集合。 + 一个新的 DbProjectExpression,它从具有指定输入和应用绑定且 CrossApply 为 的一个新的 DbApplyExpression 中选择给定选择器的结果。 + 指定输入集的 。 + 一个方法,它表示要对输入集的每个成员计算一次的逻辑。 + 一个方法,它指定如何在给定输入集和应用集的元素的情况下派生结果集的元素。此方法必须生成与 SelectMany 兼容且可以解析为 的类型的实例。备注中说明了针对 的兼容性要求。 + + 的方法结果类型。 + + 为 null。 + 生成的表达式为 null。 + 在转换为 DbExpression 时 的结果为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有集合类型。 + + + 创建一个表示将属性设置为值的新 + 新创建的 set 子句。 + 要设置的属性。 + 要将属性设置为的值。 + + + 创建一个新的 ,它在跳过指定数目的元素之前,按照指定的排序规范对给定的输入集进行排序。 + 表示跳过操作的一个新的 DbSkipExpression。 + 一个指定输入集的表达式绑定。 + 确定应如何对输入集元素进行排序的排序规范列表。 + 一个表达式,它指定要在有序集中跳过的元素数目。 + + 为 null,或者 包含 null。 + + 为空,或者 不是 ,或者具有不等同于或不能提升为 64 位整数类型的结果类型。 + + + 创建一个新的 ,它从给定的有序输入集中跳过指定数目的元素。 + 表示跳过操作的一个新的 DbSkipExpression。 + 指定有序输入集的 。 + 一个表达式,它指定要在有序集中跳过的元素数目。 + + 为 null。 + + 不是 ,或者具有不等同于或不能提升为 64 位整数类型的结果类型。 + + + 创建一个新的 ,它按照指定的排序规范对给定的输入集进行排序。 + 表示排序运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式绑定。 + 确定应如何对输入集元素进行排序的排序规范列表。 + + 为 null,或者 包含 null。 + + 为空。 + + + 创建一个新的 ,它将参数集合中的元素数目限制为指定的计数限值。输出中不包括等值结果。 + 一个新的 DbLimitExpression,它具有指定参数以及不包括等值结果的计数限值。 + 一个指定输入集合的表达式。 + 指定限值的表达式。 + + 为 null。 + + 不具有集合结果类型,或者 不具有等同于或可提升为 64 位整数类型的结果类型。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按升序排序顺序的指定排序键和默认排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的结果类型。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按升序排序顺序的指定排序键和指定的排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按降序排序顺序的指定排序键和默认排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的结果类型。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按降序排序顺序的指定排序键和指定的排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 使用升序排序顺序和默认排序规则创建一个新的 + 使用给定的排序关键字和升序排序顺序的一个新的排序子句。 + 定义排序键的表达式。 + + 为 null。 + + 不具有可比较顺序的结果类型。 + + + 使用升序排序顺序和指定的排序规则创建一个新的 + 具有给定的排序键和排序规则以及升序排序顺序的一个新的排序语句。 + 定义排序键的表达式。 + 排序所依据的排序规则。 + + 为 null。 + + 为空,或者只包含空白字符。 + + 不具有可比较顺序的结果类型。 + + + 使用降序排序顺序和默认排序规则创建一个新的 + 具有给定排序键和降序排序顺序的一个新的排序语句。 + 定义排序键的表达式。 + + 为 null。 + + 不具有可比较顺序的结果类型。 + + + 使用降序排序顺序和指定的排序规则创建一个新的 + 具有给定的排序键和排序规则以及降序排序顺序的一个新的排序语句。 + 定义排序键的表达式。 + 排序所依据的排序规则。 + + 为 null。 + + 为空,或者只包含空白字符。 + + 不具有可比较顺序的结果类型。 + + + 创建一个新的 + 具有指定的参数和类型的一个新的 DbTreatExpression。 + 指定实例的表达式。 + treat-as 类型的类型元数据。 + + 为 null。 + + 的结果类型不处于相同的类型层次结构中。 + + + 使用布尔值 true 创建一个 + 带布尔值 true 的 + + + 创建一个新的 ,它对参数值求反。 + 表示求反运算的一个新的 DbArithmeticExpression。 + 指定参数的表达式。 + + 为 null。 + 不存在针对 的任何数值结果类型。 + + + 创建一个新的 ,它计算左边集参数和右边集参数的并集并且删除了重复项。 + 一个新的 DbExpression,它计算左边参数和右边参数的并集,并且不含重复项。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 为 null。 + + 之间不存在具有可进行相等比较的元素类型的任何常用集合结果类型。 + + + 创建一个新的 ,它计算左边集参数和右边集参数的并集且不删除重复项。 + 一个新的 DbUnionAllExpression,它是左边参数和右边参数的并集并且包括重复项。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 为 null。 + + 之间不存在任何常用集合结果类型。 + + + 创建一个新的 ,它使用指定的名称和类型引用变量。 + 一个 DbVariableReferenceExpression,它表示对具有指定名称和类型的变量的引用;表达式的结果类型将与 相同。 + 引用变量的类型。 + 引用变量的名称。 + + + 创建一个新的 ,它使用指定的谓词筛选给定输入集中的元素。 + 表示 Any 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式。 + 一个方法,它表示要为输入集的每个成员计算的谓词。此方法必须生成一个表达式,该表达式具有提供谓词逻辑的 Boolean 结果类型。 + + 为 null。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 提供一个用于构造调用规范 EDM 函数的 的 API,并且允许该 API 作为针对表达式类型本身的扩展方法来访问。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有数值结果类型)调用规范“Abs”函数。表达式的结果类型与 的结果类型相同。 + 返回 的绝对值的一个新的 DbFunctionExpression。 + 一个指定数值的表达式。 + + 为 null。 + 没有规范“Abs”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime 或 DateTimeOffset 以及整数结果类型)调用规范“AddDays”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的天数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的天数。 + + 为 null。 + 没有规范“AddDays”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddHours”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的小时数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的小时数。 + + 为 null。 + 没有规范“AddHours”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddMicroseconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的微秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的微秒数。 + + 为 null。 + 没有规范“AddMicroseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddMilliseconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的毫秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的毫秒数。 + + 为 null。 + 没有规范“AddMilliseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddMinutes”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的分钟数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的分钟数。 + + 为 null。 + 没有规范“AddMinutes”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime 或 DateTimeOffset 以及整数结果类型)调用规范“AddMonths”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的月份数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的月份数。 + + 为 null。 + 没有规范“AddMonths”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddNanoseconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的纳秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的纳秒数。 + + 为 null。 + 没有规范“AddNanoseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddSeconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的秒数。 + + 为 null。 + 没有规范“AddSeconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime 或 DateTimeOffset 以及整数结果类型)调用规范“AddYears”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的年份数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的年份数。 + + 为 null。 + 没有规范“AddYears”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Avg”函数。表达式的结果类型与集合的元素类型相同。 + 生成平均值的新的 DbFunctionExpression。 + 一个表达式,它指定应计算平均值的集合。 + + 为 null。 + 没有规范“Avg”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有相同的整数结果类型)调用规范“BitwiseAnd”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位与运算生成的值。 + 指定第一个操作数的表达式。 + 指定第二个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseAnd”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有整数结果类型)调用规范“BitwiseNot”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位取非运算生成的值。 + 指定第一个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseNot”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有相同的整数结果类型)调用规范“BitwiseOr”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位或运算生成的值。 + 指定第一个操作数的表达式。 + 指定第二个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseOr”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有相同的整数结果类型)调用规范“BitwiseXor”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位异或(异或)运算生成的值。 + 指定第一个操作数的表达式。 + 指定第二个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseXor”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有单精度、双精度或十进制结果类型)调用规范“Ceiling”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回不小于 的最小整数值。 + 一个指定数值的表达式。 + + 为 null。 + 没有规范“Ceiling”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“Concat”函数。表达式的结果类型为字符串。 + 一个生成串联字符串的新的 DbFunctionExpression。 + 一个表达式,它指定在串连结果字符串中应在最前面出现的字符串。 + 一个表达式,它指定在串连结果字符串中应在第二位出现的字符串。 + + 为 null。 + 没有规范“Concat”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“Contains”函数。表达式的结果类型为 Boolean。 + 一个新的 DbFunctionExpression,它返回指示 是否在 之内出现的布尔值。 + 一个表达式,它指定要从中搜索出现的任何 的字符串。 + 一个表达式,它指定要在 中搜索的字符串。 + + 为 null。 + 没有规范“Contains”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Count”函数。表达式的结果类型为 Edm.Int32。 + 生成计数值的新的 DbFunctionExpression。 + 一个表达式,它指定应对其计算计数值的集合。 + + 为 null。 + 没有规范“Count”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数调用规范“CreateDateTime”函数。 必须具有结果类型 Edm.Double,所有其他参数必须具有结果类型 Edm.Int32。表达式的结果类型为 Edm.DateTime。 + 一个新 DbFunctionExpression,它基于指定的值返回新的 DateTime。 + 一个表达式,它为新的 DateTime 实例提供年份值。 + 一个表达式,它为新的 DateTime 实例提供月份值。 + 一个表达式,它为新的 DateTime 实例提供日期值。 + 一个表达式,它为新的 DateTime 实例提供小时值。 + 一个表达式,它为新的 DateTime 实例提供分钟值。 + 一个表达式,它为新的 DateTime 实例提供秒钟值。 + + 为 null。 + 没有规范“CreateDateTime”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数调用规范“CreateDateTimeOffset”函数。 必须具有结果类型 Edm.Double,所有其他参数必须具有结果类型 Edm.Int32。表达式的结果类型为 Edm.DateTimeOffset。 + 一个新 DbFunctionExpression,它基于指定的值返回新的 DateTimeOffset。 + 一个表达式,它为新的 DateTimeOffset 实例提供年份值。 + 一个表达式,它为新的 DateTimeOffset 实例提供月份值。 + 一个表达式,它为新的 DateTimeOffset 实例提供日期值。 + 一个表达式,它为新的 DateTimeOffset 实例提供小时值。 + 一个表达式,它为新的 DateTimeOffset 实例提供分钟值。 + 一个表达式,它为新的 DateTimeOffset 实例提供秒钟值。 + 一个表达式,它为新的 DateTimeOffset 实例按时区偏移量值提供分钟数。 + + 为 null。 + 没有规范“CreateDateTimeOffset”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数调用规范“CreateTime”函数。 必须具有结果类型 Edm.Double,所有其他参数必须具有结果类型 Edm.Int32。表达式的结果类型为 Edm.Time。 + 一个新 DbFunctionExpression,它基于指定的值返回新的时间。 + 一个表达式,它为新的 DateTime 实例提供小时值。 + 一个表达式,它为新的 DateTime 实例提供分钟值。 + 一个表达式,它为新的 DateTime 实例提供秒钟值。 + + 为 null。 + 没有规范“CreateTime”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它调用规范“CurrentDateTime”函数。 + 一个新的 DbFunctionExpression,它将当前日期和时间作为 Edm.DateTime 实例返回。 + + + 创建一个 ,它调用规范“CurrentDateTimeOffset”函数。 + 一个新的 DbFunctionExpression,它将当前日期和时间作为 Edm.DateTimeOffset 实例返回。 + + + 创建一个 ,它调用规范“CurrentUtcDateTime”函数。 + 一个新的 DbFunctionExpression,它将当前 UTC 日期和时间作为 Edm.DateTime 实例返回。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“Day”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数日期值。 + 一个表达式,它指定应从中检索日期的值。 + + 为 null。 + 没有规范“Day”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DayOfYear”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回年份值的整数日期。 + 一个表达式,它指定应从中检索日期(以一年中的第几天表示)的值。 + + 为 null。 + 没有规范“DayOfYear”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DiffDays”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的天数差。 + 一个表达式,它指定第一个 DateTime 或 DateTimeOffset 值。 + 一个表达式,它指定应为其计算距离 的天数差的 DateTime 或 DateTimeOffset。 + + 为 null。 + 没有规范“DiffDays”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffHours”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的小时差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的小时差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffHours”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffMicroseconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的微秒差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的微秒差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffMicroseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffMilliseconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的毫秒差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的毫秒差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffMilliseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffMinutes”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的分钟差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的分钟差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffMinutes”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DiffMonths”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的月份差。 + 一个表达式,它指定第一个 DateTime 或 DateTimeOffset 值。 + 一个表达式,它指定应为其计算距离 的月份差的 DateTime 或 DateTimeOffset。 + + 为 null + 没有规范“DiffMonths”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffNanoseconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的纳秒差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的纳秒差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffNanoseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffSeconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的秒钟差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的秒钟差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffSeconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DiffYears”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的年份差。 + 一个表达式,它指定第一个 DateTime 或 DateTimeOffset 值。 + 一个表达式,它指定应为其计算距离 的年份差的 DateTime 或 DateTimeOffset。 + + 为 null。 + 没有规范“DiffYears”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“EndsWith”函数。表达式的结果类型为 Boolean。 + 一个新的 DbFunctionExpression,它指示 是否以 结尾。 + 一个表达式,指定要在其中查找指定的 的字符串。 + 一个表达式,指定应在 中查找的后缀。 + + 为 null。 + 没有规范“EndsWith”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有单精度、双精度或十进制结果类型)调用规范“Floor”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回不大于 的最大整数值。 + 一个指定数值的表达式。 + + 为 null。 + 没有规范“Floor”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTimeOffset 结果类型)调用规范“GetTotalOffsetMinutes”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 相对于 GMT 的偏移分钟数。 + 一个表达式,它指定应从中检索相对于 GMT 的偏移分钟数的 DateTimeOffset 值。 + + 为 null。 + 没有规范“GetTotalOffsetMinutes”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Hour”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数小时值。 + 一个表达式,它指定应从中检索小时的值。 + + 为 null。 + 没有规范“Hours”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“IndexOf”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 的第一个索引。 + 一个表达式,它指定要在 中搜索的字符串。 + 一个表达式,它指定应检查的位于 内的字符串。 + + 为 null。 + 没有规范“IndexOf”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串和整数结果类型)调用规范“Left”函数。表达式的结果类型为字符串。 + 一个新的 DbFunctionExpression,它从 中返回长度为 的最左侧子字符串。 + 一个表达式,它指定要从中提取最左侧子字符串的字符串。 + 一个表达式,它指定要从 中提取的最左侧子字符串的长度。 + + 为 null。 + 没有规范“Left”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“Length”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回 的长度。 + 一个表达式,它指定应计算其长度的字符串。 + + 为 null。 + 没有规范“Length”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“BigCount”函数。表达式的结果类型为 Edm.Int64。 + 生成计数值的新的 DbFunctionExpression。 + 一个表达式,它指定应对其计算计数值的集合。 + + 为 null。 + 没有规范“BigCount”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Max”函数。表达式的结果类型与集合的元素类型相同。 + 生成最大值的新的 DbFunctionExpression。 + 一个表达式,它指定应从中检索最大值的集合。 + + 为 null。 + 没有规范“Max”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Millisecond”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 中返回整数毫秒值。 + 一个表达式,它指定应从中检索毫秒的值。 + + 为 null。 + 没有规范“Millisecond”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Min”函数。表达式的结果类型与集合的元素类型相同。 + 生成最小值的新的 DbFunctionExpression。 + 一个表达式,它指定应从中检索最小值的集合。 + + 为 null。 + 没有规范“Min”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Minute”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数分钟值。 + 一个表达式,它指定应从中检索分钟的值。 + + 为 null。 + 没有规范“Minute”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“Month”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数月份值。 + 一个表达式,它指定应从中检索月份的值。 + + 为 null。 + 没有规范“Month”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它调用规范“NewGuid”函数。 + 返回新的 GUID 值的新的 DbFunctionExpression。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有数值结果类型)调用规范“Power”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回按 指定的幂次执行幂运算的 的值。 + 一个表达式,它指定要计算给定幂次的数值。 + 一个表达式,它指定应对 进行幂运算的幂值。 + + 为 null。 + 没有规范“Power”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“Replace”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它基于 返回一个新字符串,其中,出现的每个 都会被 替代。 + 一个表达式,它指定要在其中执行替代操作的字符串。 + 指定要替代的字符串的表达式。 + 指定替代字符串的表达式。 + + 为 null。 + 没有规范“Replace”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“Reverse”函数。表达式的结果类型也为字符串。 + 一个 DbFunctionExpression,它生成 的颠倒顺序的值。 + 指定要颠倒顺序的字符串的表达式。 + + 为 null。 + 没有规范“Reverse”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串和整数结果类型)调用规范“Right”函数。表达式的结果类型为字符串。 + 一个新的 DbFunctionExpression,它从 中返回长度为 的最右侧子字符串。 + 一个表达式,它指定要从中提取最右侧子字符串的字符串。 + 一个表达式,它指定要从 中提取的最右侧子字符串的长度。 + + 为 null。 + 没有规范“Right”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有单精度、双精度或十进制结果类型)调用规范“Round”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将指定的参数舍入为最接近的整数值。 + 指定要舍入的数值的表达式。 + + 为 null。 + 没有规范“Round”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有单精度、双精度或十进制以及整数结果类型)调用规范“Round”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它按照 指定的精度将指定的参数舍入为最接近的整数值。 + 指定要舍入的数值的表达式。 + 一个表达式,它指定在舍入时要使用的精度的位数。 + + 为 null + 没有规范“Round”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Second”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数秒钟值。 + 一个表达式,它指定应从中检索秒钟的值。 + + 为 null。 + 没有规范“Second”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“StartsWith”函数。表达式的结果类型为 Boolean。 + 一个新的 DbFunctionExpression,它指示 是否以 开头。 + 一个表达式,指定要在其中查找指定的 的字符串。 + 一个表达式,指定应在 中查找的前缀。 + + 为 null。 + 没有规范“StartsWith”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的非 null 成员调用规范“StDev”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它对集合的非 null 成员生成标准偏差值。 + 一个表达式,它指定应计算标准偏差的集合。 + + 为 null。 + 没有规范“StDev”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的总体调用规范“StDevP”函数。表达式的结果类型为 Edm.Double。 + 生成标准偏差值的新的 DbFunctionExpression。 + 一个表达式,它指定应计算标准偏差的集合。 + + 为 null。 + 没有规范“StDevP”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串和整数结果类型)调用规范“Substring”函数。表达式的结果类型为字符串。 + 一个新的 DbFunctionExpression,它从 中返回以 开头的长度为 的子字符串。 + 一个表达式,它指定要从中提取子字符串的字符串。 + 一个表达式,它指定要从其获取子字符串的起始索引。 + 一个表达式,它指定子字符串的长度。 + + 为 null。 + 没有规范“Substring”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Sum”函数。表达式的结果类型与集合的元素类型相同。 + 生成总和的新的 DbFunctionExpression。 + 一个表达式,它指定应计算总和的集合。 + + 为 null。 + 没有规范“Sum”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“ToLower”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回转换为小写的 的值。 + 一个表达式,它指定应转换为小写的字符串。 + + 为 null。 + 没有规范“ToLower”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“ToUpper”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回转换为大写的 的值。 + 一个表达式,它指定应转换为大写的字符串。 + + 为 null。 + 没有规范“ToUpper”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“Trim”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回删除了前导和尾随空格的 的值。 + 一个表达式,它指定应删除其前导和尾随空格的字符串。 + + 为 null。 + 没有规范“Trim”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“RTrim”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回删除了尾随空格的 的值。 + 一个表达式,它指定应删除其尾随空格的字符串。 + + 为 null。 + 没有规范“RTrim”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“LTrim”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回删除了前导空格的 的值。 + 一个表达式,它指定应删除其前导空格的字符串。 + + 为 null。 + 没有规范“LTrim”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有单精度、双精度或十进制以及整数结果类型)调用规范“Truncate”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它按照 指定的精度将指定的参数截断为最接近的整数值。 + 一个表达式,它指定要截断的数值。 + 一个表达式,它指定要在截断时要使用的精度位数。 + + 为 null。 + 没有规范“Truncate”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“TruncateTime”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回其时间设置为零的 的值。 + 一个表达式,它指定应截断其时间部分的值。 + + 为 null。 + 没有规范“TruncateTime”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的非 null 成员调用规范“Var”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它生成集合的非 null 成员的方差值。 + 一个表达式,它指定应计算其方差的集合。 + + 为 null。 + 没有规范“Var”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的总体调用规范“VarP”函数。表达式的结果类型为 Edm.Double。 + 生成方差值的新的 DbFunctionExpression。 + 一个表达式,它指定应计算其方差的集合。 + + 为 null。 + 没有规范“VarP”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“Year”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数年份值。 + 一个表达式,它指定应从中检索年份的值。 + + 为 null。 + 没有规范“Year”函数的重载接受结果类型为 的参数。 + + + 表示 Row 类,它旨在提供用于调用 <see cref="M:System.Data.Entity.Core.Common.CommandTrees.ExpressionBuilder.DbExpressionBuilder.NewRow(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Data.Entity.Core.Common.CommandTrees.DbExpression}})" /> 的类似构造函数的方法。 + + + 使用指定的第一列值和可选的连续列值来初始化 类的新实例。 + 提供新的行实例中的第一列的键/值对(必需)。 + 提供新的行实例中的任何后续列的键/值对(可选)。 + + + 将一个 Row 对象转换成 + 表示转换后的 Row 对象的 + Row 对象。 + + + 创建一个新的 ,它基于此行实例中包含的列构造一个新行。 + 一个新的 DbNewInstanceExpression,它使用与此行实例相同的列名和 DbExpression 值构造一行。 + + + 提供一个 API 以便构造调用空间相关的规范 EDM 函数的 ,并且在适用时允许该 API 作为针对表达式类型本身的扩展方法来访问。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Area”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的区域,如果 spatialValue 不是图面,则返回 null。 + 一个表达式,它指定应为其计算面积的空间表面值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“AsBinary”函数。表达式的结果类型为 Edm.Binary。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的已知二进制表示形式。 + 一个表达式,它指定应从其生成已知二进制表示形式的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“AsGml”函数。表达式的结果类型为 Edm.String。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的地理标记语言 (GML) 表示形式。 + 一个表达式,它指定应从其生成地理标记语言 (GML) 表示形式的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“AsText”函数。表达式的结果类型为 Edm.String。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的已知文本表示形式。 + 一个表达式,它指定应从其生成已知文本表示形式的空间值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“Centroid”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的形心点(可能不在图面本身上),如果 geometryValue 不是图面,则返回 null。 + 一个表达式,它指定应从其检索形心的几何表面值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“CoordinateSystemId”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 spatialValue 返回整数 SRID 值。 + 一个表达式,它指定应从其检索坐标系 ID (SRID) 的值。 + + + 创建一个 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Distance”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue1 和 spatialValue1 最近两点之间的距离。 + 指定第一个空间值的表达式。 + 一个表达式,它指定将测量其与 spatialValue1 之间距离的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Elevation”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的海拔值,如果 spatialValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索海拔(Z 坐标)值的空间点值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“EndPoint”函数。结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的结束点,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索端点的空间曲线值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“ExteriorRing”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回多边形 geometryValue 的外部环,如果 geometryValue 不是多边形,则返回 null。 + 几何值。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyCollectionFromBinary”函数。geographyCollectionWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理集合值。 + 提供地理集合值的已知二进制表示形式的表达式。 + 提供地理集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyCollectionFromText”函数。geographyCollectionWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理集合值。 + 提供地理集合值的已知文本表示形式的表达式。 + 提供地理集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有二进制结果类型)调用规范“GeographyFromBinary”函数。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的二进制值返回新的地理值。 + 提供地理值的已知二进制表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyFromBinary”函数。wellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的已知二进制表示形式的表达式。 + 提供地理值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeographyFromGml”函数。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于具有基础提供程序的默认坐标系 ID (SRID) 的指定值返回新的地理值。 + 提供地理值的地理标记语言 (GML) 表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyFromGml”函数。geographyMarkup 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的地理标记语言 (GML) 表示形式的表达式。 + 提供地理值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeographyFromText”函数。表达式的结果类型为 Edm.Geography。其值具有基础提供程序的默认坐标系 ID (SRID)。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的已知文本表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyFromText”函数。wellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的已知文本表示形式的表达式。 + 提供地理值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyLineFromBinary”函数。lineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理线条值。 + 提供地理线条值的已知二进制表示形式的表达式。 + 提供地理线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyLineFromText”函数。lineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理线条值。 + 提供地理线条值的已知文本表示形式的表达式。 + 提供地理线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiLineFromBinary”函数。multiLineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多线条值。 + 提供地理多线条值的已知二进制表示形式的表达式。 + 提供地理多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiLineFromText”函数。multiLineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多线条值。 + 提供地理多线条值的已知文本表示形式的表达式。 + 提供地理多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPointFromBinary”函数。multiPointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多点值。 + 提供地理多点值的已知二进制表示形式的表达式。 + 提供地理多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPointFromText”函数。multiPointWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多点值。 + 提供地理多点值的已知文本表示形式的表达式。 + 提供地理多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPolygonFromBinary”函数。multiPolygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多多边形值。 + 提供地理多多边形值的已知二进制表示形式的表达式。 + 提供地理多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPolygonFromText”函数。multiPolygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多多边形值。 + 提供地理多多边形值的已知文本表示形式的表达式。 + 提供地理多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPointFromBinary”函数。pointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理点值。 + 提供地理点值的已知二进制表示形式的表达式。 + 提供地理多点值的 systempointWellKnownBinaryValue 的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPointFromText”函数。 + 规范的“GeographyPointFromText”函数。 + 提供地理点值的已知文本表示形式的表达式。 + 提供地理点值的坐标 systempointWellKnownTextValue 的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPolygonFromBinary”函数。polygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多边形值。 + 提供地理多边形值的已知二进制表示形式的表达式。 + 提供地理多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPolygonFromText”函数。polygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多边形值。 + 提供地理多边形值的已知文本表示形式的表达式。 + 提供地理多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryCollectionFromBinary”函数。geometryCollectionWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何集合值。 + 提供几何集合值的已知二进制表示形式的表达式。 + 提供几何集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryCollectionFromText”函数。geometryCollectionWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何集合值。 + 提供几何集合值的已知文本表示形式的表达式。 + 提供几何集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有二进制结果类型)调用规范“GeometryFromBinary”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的二进制值返回新的几何值。 + 提供几何值的已知二进制表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryFromBinary”函数。wellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的已知二进制表示形式的表达式。 + 提供几何值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeometryFromGml”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于具有基础提供程序的默认坐标系 ID (SRID) 的指定值返回新的几何值。 + 提供几何值的地理标记语言 (GML) 表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryFromGml”函数。geometryMarkup 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的地理标记语言 (GML) 表示形式的表达式。 + 提供几何值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeometryFromText”函数。表达式的结果类型为 Edm.Geometry。其值具有基础提供程序的默认坐标系 ID (SRID)。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的已知文本表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryFromText”函数。wellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的已知文本表示形式的表达式。 + 提供几何值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryLineFromBinary”函数。lineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何线条值。 + 提供几何线条值的已知二进制表示形式的表达式。 + 提供几何线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryLineFromText”函数。lineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何线条值。 + 提供几何线条值的已知文本表示形式的表达式。 + 提供几何线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiLineFromBinary”函数。multiLineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多线条值。 + 提供几何多线条值的已知二进制表示形式的表达式。 + 提供几何多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiLineFromText”函数。multiLineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多线条值。 + 提供几何多线条值的已知文本表示形式的表达式。 + 提供几何多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPointFromBinary”函数。multiPointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多点值。 + 提供几何多点值的已知二进制表示形式的表达式。 + 提供几何多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPointFromText”函数。multiPointWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多点值。 + 提供几何多点值的已知文本表示形式的表达式。 + 提供几何多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPolygonFromBinary”函数。multiPolygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多多边形值。 + 提供几何多多边形值的已知二进制表示形式的表达式。 + 提供几何多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPolygonFromText”函数。multiPolygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多多边形值。 + 提供几何多多边形值的已知文本表示形式的表达式。 + 提供几何多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPointFromBinary”函数。pointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何点值。 + 提供几何点值的已知二进制表示形式的表达式。 + 提供几何点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPointFromText”函数。pointWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何点值。 + 提供几何点值的已知文本表示形式的表达式。 + 提供几何点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPolygonFromBinary”函数。polygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多边形值。 + 提供几何多边形值的已知二进制表示形式的表达式。 + 提供几何多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPolygonFromText”函数。polygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多边形值。 + 提供几何多边形值的已知文本表示形式的表达式。 + 提供几何多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“InteriorRingAt”函数。第一个参数必须具有 Edm.Geometry 结果类型。第二个参数必须具有整数结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 中位置 indexValue 处的内部环,如果 geometryValue 不是多边形,则返回 null。 + 几何值。 + 一个表达式,它指定要从多边形中检索的内部环的位置。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“InteriorRingCount”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回多边形 geometryValue 中的内部环数,如果 geometryValue 不是多边形,则返回 null。 + 几何值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“IsClosedSpatial”函数。结果类型是 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue 是否闭合的布尔值,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索 IsClosedSpatial 值的空间曲线值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“IsEmptySpatial”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue 是否为空的布尔值。 + 一个表达式,它指定应从其检索 IsEmptySptiaal 值的空间值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“IsRing”函数。结果类型是 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue 是否为圆环(闭合和简单)的布尔值,如果 geometryValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索 IsRing 值的几何曲线值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“IsSimpleGeometry”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue 是否为简单几何图形的布尔值。 + 几何值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“IsValidGeometry”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue 是否有效的布尔值。 + 指定应进行空间有效性测试的几何值的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geography 结果类型)调用规范“Latitude”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geographyValue 的纬度值,如果 geographyValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 Latitude 值的地理点值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geography 结果类型)调用规范“Longitude”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geographyValue 的经度值,如果 geographyValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 Longitude 值的地理点值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Measure”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的度量值,如果 spatialValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索测量 (M) 坐标值的空间点值。 + + + 创建一个 ,它使用指定的参数调用规范“PointAt”函数。第一个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型。第二个参数必须具有整数结果类型。表达式的结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中位置 indexValue 处的点,如果 spatialValue 不是线串,则返回 null。 + 指定空间线串值的表达式。 + 指定要从线串内检索的点的位置的表达式。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“PointCount”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中点的数目,如果 spatialValue 不是线串,则返回 null。 + 一个表达式,它指定应从其检索点的数目的空间线串值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“PointOnSurface”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回保证位于图面 geometryValue 上的点,如果 geometryValue 不是图面,则返回 null。 + 一个表达式,它指定应从其检索点的几何表面值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialBoundary”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的边界。 + 一个表达式,它指定应从其检索 SpatialBoundary 值的几何值。 + + + 创建 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 和 Edm.Double 结果类型)调用规范“SpatialBuffer”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回一个几何值,该值表示小于或等于与 spatialValue 的距离的所有点。 + 一个指定空间值的表达式。 + 一个指定缓冲距离的表达式。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialContains”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否在空间上包含 geometryValue2 的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialConvexHull”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的凸包。 + 一个表达式,它指定应从其检索凸包值的几何值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialCrosses”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否与 geometryValue2 相交的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialDifference”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 与 spatialValue2 之间的差异的几何值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应计算与 spatialValue1 之间的差异的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialDimension”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 spatialValue 返回维度值。 + 一个表达式,它指定应从其检索 Dimension 值的值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialDisjoint”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue1 与 spatialValue2 是否在空间上不相交的布尔值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应与 spatialValue1 进行不相交性比较的空间值。 + + + 创建一个 ,它使用指定的参数调用规范“SpatialElementAt”函数。第一个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型。第二个参数必须具有整数结果类型。表达式的结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中位置 indexValue 处的集合元素,如果 spatialValue 不是集合,则返回 null。 + 一个表达式,它指定地理或几何集合值。 + 一个表达式,它指定要从几何或地理集合中检索的元素的位置。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialElementCount”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中元素的数目,如果 spatialValue 不是集合,则返回 null。 + 一个表达式,它指定应从其检索某个数目的元素的地理或几何集合值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialEnvelope”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的最小边框。 + 一个表达式,它指定应从其检索 Envelope 值的值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialEquals”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue1 是否与 spatialValue2 相等的布尔值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应与 spatialValue1 比较是否相等的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialIntersection”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 和 spatialValue2 的交集的空间值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定要计算与 spatialValue1 的交集的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialIntersects”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue1 是否与 spatialValue2 相交的布尔值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应与 spatialValue1 进行相交性比较的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialLength”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的长度,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索长度的空间曲线值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialOverlaps”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否在空间上与 geometryValue2 重叠的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建 ,它使用指定参数(参数必须具有 Edm.Geometry 和字符串结果类型)调用规范“SpatialRelate”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回一个布尔值,该值根据 intersectionPatternMatrix 指定的空间关系指示 geometryValue1 在空间上是否与 geometryValue2 相关。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + 一个表达式,它指定用于比较 geometryValue1 和 geometryValue2 的维度扩展九交模型 (DE-9IM) 交集模式的文本表示形式。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialSymmetricDifference”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 与 spatialValue2 之间的对称差异的几何值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应计算与 spatialValue1 之间的对称差异的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialTouches”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否与 geometryValue2 接触的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialTypeName”函数。表达式的结果类型为 Edm.String。 + 一个新的 DbFunctionExpression,它从 spatialValue 中返回字符串几何类型名称。 + 一个表达式,它指定应从中检索几何类型名称的值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialUnion”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 和 spatialValue2 的并集的空间值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应计算与 spatialValue1 的并集的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialWithin”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否在 geometryValue2 空间内的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“StartPoint”函数。结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的起始点,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索起点的空间曲线值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“XCoordinate”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的 X 坐标值,如果 geometryValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 X 坐标值的几何点值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“YCoordinate”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的 Y 坐标值,如果 geometryValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 Y 坐标值的几何点值。 + + + 公共实体 SQL 分析器类。 + + + 分析具有指定参数的指定查询。 + 包含 以及描述内联函数定义的信息(如果有)。 + 要分析的 EntitySQL 查询。 + 可选查询参数。 + + + 分析具有特定设置变量的特定查询并生成 + 包含 以及描述内联函数定义的信息(如果有)。 + 要分析的查询。 + 可选查询变量。 + + + 实体 SQL 查询内联函数定义,作为 的一部分返回。 + + + eSQL 查询文本中函数定义的结束位置。 + + + 函数体和参数。 + + + 函数名。 + + + eSQL 查询文本中函数定义的起始位置。 + + + 实体 SQL 分析器结果信息。 + + + 在分析过程中生成的命令目录树。 + + + 描述查询内联函数定义的 对象的列表。 + + + 表示概念层的命令的类 + + + 使用指定的值初始化 类的新实例。 + + + 使用指定的语句初始化 类的新实例。 + 命令的文本。 + + + 使用指定的语句和连接初始化 类的新实例。 + 命令的文本。 + 与数据源的连接。 + + + 使用指定的语句、连接和事务初始化 类的新实例。 + 命令的文本。 + 与数据源的连接。 + 在其中执行命令的事务。 + + + 构造具有给定 eSQL 语句以及要使用的连接对象的 EntityCommand 对象 + 要执行的 eSQL 命令文本 + 连接对象 + 用于解析 DbProviderServices 的解析程序 + + + 取消执行 + + + 获取或设置指定要执行的命令或存储过程的实体 SQL 语句。 + 指定要执行的命令或存储过程的实体 SQL 语句。 + + + 获取或设置超时前要等待的时间长度。 + 等待命令执行所需的时间(以秒为单位)。 + + + 获取或设置要执行的命令目录树;只能设置命令目录树或命令文本中的其中一个,而不能同时设置二者。 + 要执行的命令目录树。 + + + 获取或设置一个值,该值指示如何解释 属性。 + + 枚举值之一。 + + + 获取或设置 使用的 + 由实体命令使用的连接。 + + + 创建并返回一个新的参数对象,该对象表示 eSQL 语句中的参数 + 参数对象。 + + + 创建 对象的新实例。 + + 对象的一个新实例。 + + + 用于执行命令的连接对象 + + + 此命令的参数集合 + + + 此命令要在其中执行的事务 + + + 获取或设置一个值,该值指示命令对象在 Windows 窗体设计器控件中是否应该可见。 + 如果该命令对象应在 Windows 窗体设计器中可见,则为 true;否则为 false。 + + + 获取或设置一个值,该值指示查询计划缓存是否启用。 + 如果查询计划缓存已启用,则为 true;否则为 false。 + + + 执行命令并且返回用于读取结果的数据读取器 + DbDataReader 对象 + 执行命令时要使用的行为 + + + 异步执行命令并且返回用于读取结果的数据读取器 + 表示异步操作的任务。任务结果包含一个 DbDataReader 对象。 + 执行命令时要使用的行为 + 针对取消请求监视的标记 + + + 执行当前命令。 + 受影响的行数。 + + + 异步执行此命令并且放弃从此命令返回的任何结果 + 表示异步操作的任务。任务结果包含受影响的行数。 + 等待任务完成期间要观察的 。 + + + 执行命令并返回一个数据读取器。 + 包含结果的 + + + 编译成命令目录树,并将其传递到基础存储区提供程序以供执行,然后使用指定的 根据生成的结果集生成一个 + 包含结果的 + + 值之一。 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 执行命令时要使用的行为 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 执行命令时要使用的行为 + 等待任务完成期间要观察的 。 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 等待任务完成期间要观察的 。 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 执行命令,并返回结果集中第一行的第一列。其他列或行将被忽略。 + 结果集中第一行的第一列;如果结果集为空,则为空引用(在 Visual Basic 中为 Nothing)。 + + + 获取实体 SQL 语句或存储过程的参数。 + 实体 SQL 语句或存储过程的参数。 + + + 编译实体级别的命令并创建该命令的预制版本。 + + + 编译实体级别的命令并返回存储命令文本。 + 存储命令文本。 + + + 获取或设置在其中执行 的事务。 + 在其中执行 的事务。 + + + 获取或设置向正在更新的行应用命令结果的方式。 + + 值之一。 + + + 表示概念层的连接的类。一个实体连接只能被初始化一次(通过打开该连接)。之后将无法更改连接字符串、附加新的存储连接或更改存储连接字符串。 + + + 初始化 类的新实例。 + + + 使用指定的 来初始化 类的新实例。 + 与此 关联的 。 + 对象的基础数据源连接。 + workspace 或 connection 参数为 null。 + 工作区缺少概念模型。-或-工作区缺少映射文件。-或-工作区缺少存储模型。-或-连接未处于关闭状态。 + connection 并非来自与 ADO.NET Entity Framework 兼容的提供程序。 + + + 从内存中加载的元数据构造 EntityConnection + 包含元数据信息的工作区。 + 存储连接。 + 如果设置为 true,则释放实体连接时将释放该存储连接;否则调用方必须释放该存储连接。 + + + 基于连接字符串初始化 类的新实例。 + 提供程序特定的连接字符串。 + 提供的连接字符串关键字无效,或未提供所需的连接字符串关键字。 + + + 开始一个数据库事务 + 表示新事务的对象 + 事务的隔离级别 + + + 使用基础提供程序开始一个事务。 + 一个新的 。返回的 实例以后可以与 关联以执行该事务下的命令。 + 基础提供程序未知。-或-对已具有当前事务的 调用 。-或- 的状态不是 + + + 使用基础提供程序开始一个具有指定隔离级别的事务。 + 一个新的 。返回的 实例以后可以与 关联以执行该事务下的命令。 + 事务的隔离级别。 + 基础提供程序未知。-或-对已具有当前事务的 调用 。-或- 的状态不是 + + + 不提供支持。 + 不提供支持。 + 调用该方法时。 + + + 关闭与数据库之间的连接。 + 关闭连接时出错。 + + + 获取或设置 连接字符串。 + 建立与数据源的初始连接所需的连接字符串。默认值为一个空字符串。连接关闭时,将返回当前设置的值。如果未设置任何值,则将返回一个空字符串。 + + + 获取从尝试建立连接到结束尝试并生成错误需要等待的秒数。 + 等待连接打开所需的时间(以秒为单位)。默认值为基础数据提供程序的默认超时值。 + + + 设置为此 的情况下创建 的新实例。 + 一个 对象。 + 基础数据提供程序的名称未知。 + + + 创建使用此连接对象的新命令对象 + 命令对象。 + + + 获取此连接在其中登记的当前事务。可能为 null。 + + + 获取当前数据库或将在连接打开后使用的数据库的名称。 + 基础数据提供程序的 Database 属性值。 + + + 获取要连接到的数据源的名称或网络地址。 + 数据源的名称。默认值为一个空字符串。 + + + 获取与此 EntityConnection 关联的提供程序工厂 + + + 清除此连接对象 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源 + + + 在指定的事务中登记此 + 要在其中进行登记的事务对象。 + + 的状态不是 + + + 返回与此 关联的 + 与此 关联的 + 内联连接字符串包含一个无效的 Metadata 关键字值。 + + + 通过调用基础数据提供程序的 Open 方法建立到数据源的连接。 + 打开连接时出错,或基础数据提供程序的名称未知。 + 内联连接字符串包含一个无效的 Metadata 关键字值。 + + + 通过在基础数据提供程序上调用 Open 方法以异步方式建立与数据存储的连接 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取一个字符串,该字符串包含客户端连接到的数据源的版本。 + 提供程序连接字符串中包含的数据源的版本。 + + + 获取 EntityConnection 的状态,它设置为跟踪此 EntityConnection 包装的基础数据库连接的状态。 + + + 提供对 对象使用的基础数据源连接的访问。 + 数据源连接的 + + + 表示实体客户端提供程序的连接字符串生成器的类 + + + 初始化 类的新实例。 + + + 使用提供的连接字符串初始化 类的新实例。 + 一个指向基础数据源的提供程序特定的连接字符串。 + + + 清除 实例的内容。 + + + 确定 是否包含特定的键。 + 如果 包含具有指定键的元素,则返回 true;否则返回 false。 + 要在 中定位的键。 + + + 获取一个值,指示 是否具有固定大小。 + 无论在何种情况下,都将返回 true,因为 始终提供固定大小的关键字/值对集合。 + + + 获取或设置与指定的键关联的值。在 C# 中,此属性为索引器。 + 与指定的键相关联的值。 + + + 获取包含 中的键的 + 一个 ,包含 中的键。 + + + 获取或设置连接字符串中的元数据位置。 + 获取或设置连接字符串中的元数据位置。 + + + 获取或设置配置文件中定义的节名称。 + 配置文件中的节名称。 + + + 获取或设置连接字符串中的基础 .NET Framework 数据提供程序的名称。 + 基础 .NET Framework 数据提供程序的固定名称。 + + + 获取或设置提供程序特定的内部连接字符串。 + 提供程序特定的内部连接字符串。 + + + 实例中移除具有指定的键的项。 + 如果该键存在于连接字符串中并被移除,则返回 true;如果该键不存在,则返回 false。 + 要从此 中的连接字符串删除的关键字/值对的键。 + 关键字为 null(在 Visual Basic 中为 Nothing) + + + 从此 中检索与提供的键相对应的值。 + 如果在连接字符串中找到 keyword,则返回 true;否则返回 false。 + 要检索的项的键。 + 与 keyword 相对应的值。 + keyword 包含一个 null 值(在 Visual Basic 中为 Nothing)。 + + + 实体客户端提供程序的数据读取器类 + + + 关闭 对象。 + + + 获取此 + 数据记录信息。 + + + 获取一个值,该值指示当前行的嵌套深度。 + 当前行的嵌套深度。 + + + 释放由此 占用的资源并调用 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 获取当前行中的列数。 + 当前行中的列数。 + + + 以布尔值的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以字节的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在指定列中从 dataIndex 指示的位置开始,将字节流读入缓冲区,读入缓冲区的起始位置由 bufferIndex 指示。 + 读取的实际字节数。 + 从零开始的列序号。 + 行中作为读取操作起始位置的索引。 + 要将数据复制到的缓冲区。 + 要将数据复制到的位置的缓冲区索引。 + 要读取的最多字符数。 + + + 以单个字符的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在指定列中从 dataIndex 指示的位置开始,将字符流读入缓冲区,读入缓冲区的起始位置由 bufferIndex 指示。 + 读取的实际字符数。 + 从零开始的列序号。 + 行中作为读取操作起始位置的索引。 + 要将数据复制到的缓冲区。 + 要将数据复制到的位置的缓冲区索引。 + 要读取的最多字符数。 + + + 对象的形式返回嵌套的读取器。 + 作为 对象嵌套的读取器。 + 列的序号。 + + + 返回嵌套的 + 嵌套的数据记录。 + 要返回的 DbDataRecord 的编号。 + + + 获取指定列的数据类型的名称。 + 数据类型的名称。 + 从零开始的列序号。 + + + 对象的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 为可用提供程序特定的实现重写的已请求的列序号返回一个 对象。 + 数据读取器。 + 从零开始的列序号。 + + + 对象的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以双精度浮点数字的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 返回一个可用于循环访问数据读取器中的行的 + 一个 ,可用于循环访问数据读取器中的行。 + + + 获取指定列的数据类型。 + 指定列的数据类型。 + 从零开始的列序号。 + + + 以单精度浮点数字的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以全局唯一标识符 (GUID) 的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以 16 位有符号整数的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以 32 位有符号整数的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以 64 位有符号整数的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在给定从零开始的列序号时获取该列的名称。 + 指定列的名称。 + 从零开始的列序号。 + + + 在给定列名时获取相应的列序号。 + 从零开始的列序号。 + 列的名称。 + 指定的名称不是有效的列名。 + + + 返回指定列的提供程序特定的字段类型。 + 描述指定列的数据类型的 对象。 + 从零开始的列序号。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在当前行的集合中获取提供程序特定的所有属性列。 + 数组中的 实例数。 + 要将属性列复制到的 数组。 + + + 返回一个描述 的列元数据的 + 一个描述列元数据的 + + + 实例的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 使用当前行的列值来填充对象数组。 + 数组中的 实例数。 + 要将属性列复制到的 数组。 + + + 获取一个值,该值指示此 是否包含一个或多个行。 + 如果 包含一行或多行,则为 true;否则为 false。 + + + 获取一个值,该值指示 是否已关闭。 + 如果 已关闭,则为 true;否则为 false。 + + + 获取一个值,该值指示列中是否包含不存在或丢失的值。 + 如果指定的列等效于 ,则为 true;否则为 false。 + 从零开始的列序号。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + + + 在读取一批语句的结果时,使读取器前进到下一个结果。 + 如果存在其他结果集,则为 true;否则为 false。 + + + 在读取一批语句时,以异步方式将读取器移到下一结果集 + 表示异步操作的任务。如果存在其他结果集,则任务结果将包含 true;否则为 false。 + 等待任务完成期间要观察的 。 + + + 使读取器前进到结果集中的下一条记录。 + 如果存在其他行,则为 true;否则为 false。 + + + 以异步方式将读取器移到当前结果集的下一行 + 表示异步操作的任务。如果存在其他行,则任务结果将包含 true;否则为 false。 + 等待任务完成期间要观察的 。 + + + 获取通过执行 SQL 语句更改、插入或删除的行数。 + 更改、插入或删除的行数。如果是 SELECT 语句,则返回 -1;如果未影响任何行或语句失败,则返回 0。 + + + 获取 中未隐藏的字段的数目。 + 未隐藏的字段的数目。 + + + 表示在 EntityCommand 中使用的参数的类 + + + 使用默认值初始化 类的新实例。 + + + 使用指定的参数名称和数据类型初始化 类的新实例。 + 参数名。 + + 值之一。 + + + 使用指定的参数名称、数据类型和大小初始化 类的新实例。 + 参数名。 + + 值之一。 + 参数的大小。 + + + 使用指定的属性初始化 类的新实例。 + 参数名。 + + 值之一。 + 参数的大小。 + + 值之一。 + 若为 true,则指示参数接受 null 值,否则为 false。 + 用于表示值的位数。 + 值所解析的小数位数。 + 源列的名称。 + + 值之一。 + 参数的值。 + + + 使用指定的属性初始化 类的新实例。 + 参数名。 + + 值之一。 + 参数的大小。 + 源列的名称。 + + + 获取或设置参数的 + + 值之一。 + + + 获取或设置参数的方向。 + + 值之一。 + + + 获取或设置表示为 EdmType 的参数类型。 + 表示为 EdmType 的参数的类型。 + + + 获取或设置一个值,该值指示参数是否接受 null 值。 + 如果接受 null 值,则为 true;否则为 false。 + + + 获取或设置实体参数的名称。 + 实体参数的名称。 + + + 获取或设置用于表示 属性的位数。 + 用于表示值的位数。 + + + 重置与 关联的类型。 + + + 获取或设置所解析的 的小数位数。 + 值所解析的小数位数。 + + + 获取或设置列内数据的最大大小。 + 列内数据的最大大小。 + + + 获取或设置源列的名称,该源列映射到 并用于加载或返回 + 映射到数据集并用于加载或返回值的源列的名称。 + + + 获取或设置一个值,该值指示源列是否可以为 null。 + 如果源列可以为 null,则为 true;否则为 false。 + + + 获取或设置在加载值时要使用的 + + 值之一。 + + + 返回参数的字符串表示形式。 + 参数的字符串表示形式。 + + + 获取或设置参数的值。 + 参数的值。 + + + 表示在 EntityCommand 中使用的参数集合的类 + + + 将指定的 对象添加到 中。 + 一个新的 对象。 + 要添加到集合中的 。 + 值参数中指定的 已添加到这个或其他 中。 + 传递的参数不是 + value 参数为 null。 + + + 将指定的对象添加到 中。 + 新的 对象的索引。 + 一个 。 + + + 在给定参数名称和数据类型时向 中添加一个 + 一个新的 对象。 + 参数名。 + + 值之一。 + + + 使用给定的参数名称、数据类型和列长度向 中添加一个 + 一个新的 对象。 + 参数名。 + + 值之一。 + 列的长度。 + + + 的末尾添加一个值数组。 + 要添加的 值。 + + + 的末尾添加一个 值数组。 + 要添加的 值。 + + + 的末尾添加一个值。 + + 对象。 + 参数名。 + 要添加的值。 + + + 中删除所有的 对象。 + + + 确定指定的 是否在此 中。 + 如果 包含该值,则为 true;否则为 false。 + + 值。 + + + 确定指定的 是否在此 中。 + 如果 包含该值,则为 true;否则为 false。 + + 值。 + + + 将当前 的所有元素复制到指定的一维 中,并以指定的目标 索引位置作为复制到的起始位置。 + 作为当前 中的元素的复制目标的一维 。 + 一个 32 位整数,表示 中开始复制的位置的索引。 + + + 将当前 的所有元素复制到指定的 中,并以指定的目标索引位置作为复制到的起始位置。 + 作为当前 中的元素的复制目标的 。 + 一个 32 位整数,表示 中开始复制的位置的索引。 + + + 获取一个包含 中的元素数的整数。 + 以整数形式表示的 中的元素数。 + + + 返回一个循环访问 的枚举器。 + 用于 + + + 获取指定的 在集合中的位置。 + 作为集合中的 的指定 的位置(从零开始)。如果 中不存在该对象,则返回 -1。 + 要查找的 。 + + + 获取指定的 在集合中的位置。 + 作为集合中的 的指定 的位置(从零开始)。如果 中不存在该对象,则返回 -1。 + 要查找的 。 + + + 获取具有指定名称的指定 的位置。 + 具有指定名称(区分大小写)的指定 的位置(从零开始)。如果 中不存在该对象,则返回 -1。 + 要查找的 的名称(区分大小写)。 + + + 中的指定索引处插入一个 对象。 + 应将值插入到的位置的索引(从零开始)。 + 要插入到 中的 对象。 + + + 插入 的指定索引处。 + 应将值插入到的位置的索引(从零开始)。 + 要插入到 中的 。 + + + 获取一个值,指示 是否具有固定大小。 + 如果 具有固定大小,则返回 true;否则返回 false。 + + + 获取一个值,指示 是否是只读的。 + 如果 是只读的,则返回 true;否则返回 false。 + + + 获取一个值,该值指示 是否已同步。 + 如果 已同步,则返回 true;否则返回 false。 + + + 获取位于指定索引处的 + 指定索引处的 + + + 获取具有指定名称的 + 具有指定名称的 + + + 从集合中移除指定的 + 要从集合中移除的 对象。 + 该参数不是 + 集合中不存在该参数。 + + + 从集合中移除指定的参数。 + 要从集合中移除的 对象。 + + + 的指定索引处移除 + 要移除的 对象的索引(从零开始)。 + + + 中移除具有指定参数名称的 + 要移除的 的名称。 + + + 获取可用于同步对 的访问的对象。 + 可用于同步对 的访问的对象。 + + + 类,表示实体客户端提供程序的提供程序工厂 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 引发 。当前不支持该方法。 + 当前不支持该方法。 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 引发 。当前不支持该方法。 + 当前不支持该方法。 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 引发 。当前不支持该方法。 + 当前不支持该方法。 + 当前不支持该方法。 + + + 实体客户端提供程序工厂对象的单一实例对象。这保留一个公共字段(而非属性),因为 DbProviderFactory 应为字段。 + + + 返回请求的 类。 + + 的一个新实例。支持的类型是 。对于所有其他类型均返回 null(在 Visual Basic 中为 Nothing)。 + 要返回的 。 + + + 表示概念层的事务的类 + + + 提交基础事务。 + + + 获取此 + 一个指向基础数据源的 + + + 拥有此事务对象的连接对象 + + + 清除此事务对象 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源 + + + 获取此 的隔离级别。 + 一个 枚举值,表示基础事务的隔离级别。 + + + 回滚基础事务。 + + + 获取基础提供程序事务的 DbTransaction。 + + + 表示 CS 空间中某一 AssociationSet 的映射元数据。 + + + 初始化新的 AssociationSetMapping 实例。 + 要映射的关联集。 + 要映射的存储实体集。 + 父容器映射。 + + + 添加属性映射条件。 + 要添加的条件。 + + + 获取映射的关联集。 + + + 获取包含的关联类型映射。 + + + 获取属性映射条件。 + + + 获取或设置相应的函数映射。可以为 null。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 获取或设置源端属性映射。 + + + 获取映射的存储实体集。 + + + 获取或设置目标端属性映射。 + + + 描述关联集的修改函数映射。 + + + 初始化新的 实例。 + 关联集。 + 删除函数映射。 + 插入函数映射。 + + + 获取关联集。 + 关联集。 + + + 获取删除函数映射。 + 删除函数映射。 + + + 获取插入函数映射。 + 插入函数映射。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 表示 CS 空间中关联类型映射的映射元数据。 + + + 创建 AssociationTypeMapping 实例。 + 包含此 AssociationTypeMapping 的 AssociationSetMapping。 + + + 获取包含此 AssociationTypeMapping 的 AssociationSetMapping。 + + + 获取要映射的关联类型。 + + + 获取单个映射片段。 + + + 复杂属性的映射元数据。 + + + 构造一个新的复杂属性映射对象 + 表示此复杂成员的 MemberMetadata 对象 + + + 添加与嵌套复杂类型对应的类型映射。 + 要添加的复杂类型映射。 + + + 删除与嵌套复杂类型对应的类型映射。 + 要删除的复杂类型映射。 + + + 获取与嵌套复杂类型对应的类型映射的只读集合。 + + + 复杂类型的映射元数据。 + + + 创建 ComplexTypeMapping 实例。 + 要映射的 ComplexType。 + + + 添加属性映射条件。 + 要添加的属性映射条件。 + + + 添加属性映射。 + 要添加的属性映射。 + + + 获取要映射的 ComplexType。 + + + 获取属性映射条件的只读集合。 + + + 获取属性映射的只读集合。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 删除属性映射。 + 要删除的属性映射。 + + + 某一类型上条件属性映射的映射元数据。条件属性映射在 C 侧属性或 S 侧属性上指定条件。 + + + 获取指定已映射列的 EdmProperty。 + + + 获取指定已映射属性的 EdmProperty。 + + + 某一关联的 End 属性的映射元数据。 + + + 创建关联端属性映射。 + 指定要映射的关联端的 AssociationEndMember。 + + + 添加子属性列映射。 + 指定要添加的属性列映射的 ScalarPropertyMapping。 + + + 获取指定映射的关联端的 AssociationEndMember。 + + + 获取指定此关联端属性映射的子级的 ScalarPropertyMapping 的 ReadOnlyCollection。 + + + 删除子属性列映射。 + 指定要删除的属性列映射的 ScalarPropertyMapping。 + + + 表示 CS 空间中 EntityContainer 映射的映射元数据。 + + + 初始化 类的新实例。 + 要映射的概念实体容器。 + 要映射的存储实体容器。 + 父映射项集合。 + 指示是否生成更新视图的标志。 + + + 添加函数导入映射。 + 要添加的函数导入映射。 + + + 添加关联集映射。 + 要添加的关联集映射。 + + + 添加实体集映射。 + 要添加的实体集映射。 + + + 获取关联集映射。 + 关联集映射。 + + + 获取此项的类型种类。 + 此项的类型种类。 + + + 获取概念实体容器。 + 概念实体容器。 + + + 获取实体集映射。 + 实体集映射。 + + + 获取函数导入映射。 + 函数导入映射。 + + + 获取指示是否生成更新视图的标志。 + 若为 true,则生成更新视图;否则为 false。 + + + 获取父映射项集合。 + 父映射项集合。 + + + 删除函数导入映射。 + 要删除的函数导入映射。 + + + 删除关联集映射。 + 要删除的关联集映射。 + + + 删除关联集映射。 + 要删除的关联集映射。 + + + 获取存储实体容器。 + 存储实体容器。 + + + 表示 CS 空间中某一范围的映射元数据。 + + + 获取父容器映射。 + + + 获取或设置与此映射关联的查询视图。 + + + 表示 CS 空间中某一 EnitytSet 的映射元数据。 + + + 初始化新的 EntitySetMapping 实例。 + 要映射的实体集。 + 父容器映射。 + + + 添加函数映射。 + 要添加的函数映射。 + + + 添加类型映射。 + 要添加的类型映射。 + + + 获取映射的实体集。 + + + 获取包含的实体类型映射。 + + + 获取相应的函数映射。 + + + 删除函数映射。 + 要删除的函数映射。 + + + 删除类型映射。 + 要删除的类型映射。 + + + 实体类型的映射元数据。如果 EntitySet 表示多种类型的实体,则对于 EntitySet,我们将具有多个 EntityTypeMapping(例如:如果 PersonSet 实体范围表示 Person 和 Customer 类型的实体,则我们在 PersonSet 的映射下将具有两个 EntityType 映射)。 + + + 创建 EntityTypeMapping 实例。 + 包含此 EntityTypeMapping 的 EntitySetMapping。 + + + 添加映射片段。 + 要添加的映射片段。 + + + 将实体类型层次结构添加到映射中。层次结构由指定的根实体类型表示。 + 要添加的层次结构的根 EntityType。 + + + 将实体类型添加到映射中。 + 要添加的 EntityType。 + + + 获取包含此 EntityTypeMapping 的 EntitySetMapping。 + + + 获取要映射的单个 EntityType。如果发生层次结构类型映射,则引发异常。 + + + 获取映射的实体类型。 + + + 获取映射片段的只读集合。 + + + 获取指示这是否是类型层次结构映射的标志。 + + + 获取层次结构映射的已映射基类型。 + + + 删除映射片段。 + 要删除的映射片段。 + + + 从映射中删除实体类型层次结构。层次结构由指定的根实体类型表示。 + 要删除的层次结构的根 EntityType。 + + + 从映射中删除实体类型。 + 要删除的 EntityType。 + + + 描述实体集内的实体类型的修改函数映射。 + + + 初始化 类的新实例。 + EDM 实体类型。 + 功能删除的映射。 + 功能插入的映射。 + 功能更新的映射。 + + + 获取功能删除的映射。 + 功能删除的映射。 + + + 获取 EDM 实体类型。 + EDM 实体类型。 + + + 获取功能插入的映射。 + 功能插入的映射。 + + + 返回 对象的字符串表示形式。 + + 对象的字符串表示形式。 + + + 获取功能更新的映射。 + 功能更新的映射。 + + + 在设计时创建的、用于存储生成的视图的类型的基类。 + + + 初始化 类的新实例。 + + + 获取或设置 的名称。 + 容器名称。 + + + 返回指定索引处的键/值对,其中包含视图和其键。 + 索引处的键/值对,其中包含视图以及视图的键。 + 视图的索引。 + + + 视图的哈希值。 + 哈希值。 + + + 哈希值。 + 哈希值。 + + + 获取或设置存储架构中的 + 容器名称。 + + + 获取或设置视图计数。 + 视图计数。 + + + 用于标记包含生成的视图类型的程序集的特性。 + + + 初始化 类的新实例。 + 视图的类型。 + + + 获取视图的 T:System.Type。 + 视图的 T:System.Type。 + + + 表示函数导入结果的复杂类型映射。 + + + 初始化新的 FunctionImportComplexTypeMapping 实例。 + 返回类型。 + 函数导入的结果类型的属性映射。 + + + 获取返回类型。 + + + 表示函数导入实体类型映射。 + + + 初始化新的 FunctionImportEntityTypeMapping 实例。 + 要映射的类型层次结构的基础实体类型。 + 要映射的实体类型。 + 函数导入的结果类型的属性映射。 + 映射条件。 + + + 获取映射条件。 + + + 获取要映射的实体类型。 + + + 获取要映射的层次结构的基础实体类型。 + + + 表示函数导入结果的映射条件。 + + + 获取用于计算条件的列的名称。 + 用于计算此条件的列的名称。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 此当前实例的字符串表示形式。 + + + 表示通过检查 null 或非 null 来进行计算的函数导入的结果的映射条件。 + + + 初始化新的 FunctionImportEntityTypeMappingConditionIsNull 实例。 + 用于计算此条件的列的名称。 + 指示是执行 null 还是非 null 检查的标志。 + + + 获取指示是执行 null 还是非 null 检查的标志。 + + + 表示函数导入的结果的映射条件,通过与指定值作比较来计算此条件。 + + + 初始化新的 FunctionImportEntityTypeMappingConditionValue 实例。 + 用于计算此条件的列的名称。 + 要与之作比较的值。 + + + 获取用于比较的值。 + + + 表示从模型函数导入到存储可组合或不可组合函数的映射。 + + + 获取模型函数(或者映射的源) + + + 获取存储函数(或者映射的目标) + + + 表示从模型函数导入到存储可组合函数的映射。 + + + 初始化新的 FunctionImportMappingComposable 实例。 + 模型函数导入。 + 可组合的存储函数。 + 函数导入的结果映射。 + 父容器映射。 + + + 获取函数导入的结果映射。 + + + 表示从模型函数导入到不可组合的存储函数的映射。 + + + 初始化新的 FunctionImportMappingNonComposable 实例。 + 模型函数导入。 + 存储不可组合函数。 + 函数导入结果映射。 + 父容器映射。 + + + 获取函数导入结果映射。 + + + 表示函数导入的结果映射。 + + + 初始化 类的新实例。 + + + 添加类型映射。 + 要添加的类型映射。 + + + 删除类型映射。 + 要删除的类型映射。 + + + 获取类型映射。 + 类型映射。 + + + 用于映射函数导入返回类型的属性的基类。 + + + 将函数导入返回类型属性映射到表列。 + + + 初始化新的 FunctionImportReturnTypeScalarPropertyMapping 实例。 + 映射的属性名称。 + 映射的列名称。 + + + 获取映射的列名称。 + + + 获取映射的属性名称。 + + + 指定函数导入结构类型映射。 + + + 获取函数导入的结果类型的属性映射。 + + + 指定通过检查属性/列的值是否为 null 来进行计算的映射条件。 + + + 创建 IsNullConditionMapping 实例。 + 指定属性或列的 EdmProperty。 + 指示是执行 null 还是非 null 检查的布尔值。 + + + 获取指定是通过执行 null 检查还是非 null 检查来计算条件的布尔值。 + + + 表示所有映射元数据的项基类 + + + 表示映射片段的元数据。一组映射片段构成 Set 映射(EntitySet、AssociationSet 或 CompositionSet)。每个 MappingFragment 都为映射到单个表的类型的这些属性提供映射。 + + + 创建 MappingFragment 实例。 + 与要映射的表或视图对应的 EntitySet。 + 包含此 MappingFragment 的 TypeMapping。 + 指示在生成查询时是否包括“DISTINCT”的标志。 + + + 添加属性映射条件。 + 要添加的属性映射条件。 + + + 添加属性映射。 + 要添加的属性映射。 + + + 获取属性映射条件的只读集合。 + + + 获取指示在生成查询时是否包括“DISTINCT”的标志。 + + + 获取属性映射的只读集合。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 删除属性映射。 + 要删除的属性映射。 + + + 获取与要映射的表或视图对应的 EntitySet。 + + + 获取包含此 MappingFragment 的 TypeMapping。 + + + 表示映射空间 (DataSpace.CSSpace) 中项的基类。 + + + 初始化 类的新实例。 + + + 表示 Edm 空间中映射项的集合的类。 + + + 描述用于实体或关联的更改处理的修改函数绑定。 + + + 初始化 类的新实例。 + 实体或关联集。 + 实体或关联类型。 + 我们应绑定到的函数的元数据。 + 函数参数的绑定。 + 生成受影响行数的输出参数。 + 函数计算结果的绑定 + + + 获取我们应绑定到的函数的元数据。 + 我们应绑定到的函数的元数据。 + + + 获取函数参数的绑定。 + 函数参数的绑定。 + + + 获取函数计算的结果的绑定。 + 函数计算结果的绑定。 + + + 获取生成受影响行数的输出参数。可能为 null。 + 生成受影响行数的输出参数。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的字符串表示形式。 + + + 描述成员在实体或关联类型结构中的位置。 + + + 初始化 类的新实例。 + 从结构的叶(要绑定的成员)到根的路径中的成员。 + 我们通过此成员导航到的关联集。如果值为 null,则这不是导航成员路径。 + + + 获取我们通过此成员导航到的关联集。如果值为 null,则这不是导航成员路径。 + 我们通过此成员导航到的关联集。 + + + 获取从结构的叶(要绑定的成员)到根的路径中的成员。 + 从结构的叶(要绑定的成员)到根的路径中的成员。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 表示将修改函数参数绑定到要修改的实体或关联的成员。 + + + 初始化 类的新实例。 + 采用值的参数。 + 定义值的实体或关联成员的路径。 + 如果绑定当前或原始的成员值,则为 true;否则为 false。 + + + 获取指示是绑定当前的还是原始的成员值的标志。 + 如果绑定了当前或原始的成员值,则为 true;否则为 false。 + + + 获取定义值的实体或关联成员的路径。 + 定义值的实体或关联成员的路径。 + + + 获取采用值的参数。 + 采用值的参数。 + + + 使用指定格式将此实例的值转变为其等效字符串表示形式。 + 格式所指定的此实例的值的字符串表示形式。 + + + 定义从命名结果集列到采用值的成员的绑定。 + + + 初始化 类的新实例。 + 要从函数结果集绑定的列的名称。 + 要在实体上设置的属性。 + + + 获取要从函数结果集绑定的列的名称。 + 要从函数结果集绑定的列的名称。 + + + 获取要在实体上设置的属性。 + 要在实体上设置的属性。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 属性映射的所有类型的映射元数据。 + + + 获取指定已映射属性的 EdmProperty。 + + + 标量属性的映射元数据。 + + + 在简单属性和列之间创建映射。 + 要映射的属性。 + 要映射的列。 + + + 获取指定已映射列的 EdmProperty。 + + + 表示存储映射(CS 映射)空间中的项集合。 + + + 使用指定的 和 XML 读取器初始化 类的新实例。 + 此映射要使用的 。 + 此映射要使用的 。 + 此映射要使用的 XML 读取器。 + + + 使用指定的 以及指示元数据文件路径的字符串的集合初始化 类的新实例。 + 此映射要使用的 。 + 此映射要使用的 。 + 此映射要使用的文件路径。 + + + 计算集合中单个容器映射的哈希值。 + 指定计算出的哈希值的字符串。 + + + 计算由已映射容器的名称指定的容器映射的哈希值。 + 指定计算出的哈希值的字符串。 + 概念模型中容器的名称。 + 存储模型中容器的名称。 + + + 创建一个 + 如果未遇到错误,则为 实例。否则为 null。 + 要映射的 EDM 元数据集合。不得为 null。 + 要映射的存储元数据集合。不得为 null。 + 要加载的 MSL 项目。不得为 null。 + MSL 项目的路径。用于错误消息中。可为 null,在此情况下 XmlReader 的基 Uri 将用作路径。 + 加载时遇到的错误的集合。 + + + 为集合中的单个容器映射创建(范围、生成的视图)字典。 + 用于指定生成的视图()的字典。 + 积累潜在错误的列表。 + + + 为由已映射容器的名称指定的容器映射创建(范围,生成的视图)字典。 + 用于指定生成的视图()的字典。 + 概念模型中容器的名称。 + 存储模型中容器的名称。 + 积累潜在错误的列表。 + + + 获取此 表示的版本。 + 表示的版本。 + + + 获取或设置一个 ,它用于创建在检索预生成的映射视图时使用的 实例。 + 创建用于检索预生成的映射视图的 实例的 + + + 指定结构类型映射。 + + + 初始化 类的新实例。 + + + 添加属性映射条件。 + 要添加的属性映射条件。 + + + 添加属性映射。 + 要添加的属性映射。 + + + 获取属性映射条件的只读集合。 + + + 获取属性映射的只读集合。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 删除属性映射。 + 要删除的属性映射。 + + + 表示 CS 空间中类型映射的映射元数据。 + + + 指定通过将属性或列的值与给定值作比较来进行计算的映射条件。 + + + 创建 ValueConditionMapping 实例。 + 指定属性或列的 EdmProperty。 + 指定要与之作比较的值的对象。 + + + 获取指定要检查的值的对象。 + + + 表示关联类型的端 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 创建一个只读的 AssociationEndMember 实例。 + 新创建的 AssociationEndMember 实例。 + 关联端成员的名称。 + 端的引用类型。 + 端的多重性。 + 指示端的删除行为的标志。 + 要与该实例相关联的元数据属性。 + 指定的名称为 null 或空。 + 指定的引用类型为 null。 + + + 表示关联集的类 + + + 获取此 的 End。 + 一个 类型的集合,其中包含此 的 End。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 从指定的参数创建一个只读 AssociationSet 实例。 + 新创建的 AssociationSet 实例。 + 关联集的名称。 + 关联集中元素的关联类型。 + 源关联集端的实体集。 + 目标关联集端的实体集。 + 要与该实例相关联的元数据属性。 + 指定的名称为 null 或空。 + 指定的关联类型为 null。 + 指定的关联类型的其中一端的实体类型与相应实体集端的实体类型不匹配。 + + + 获取与此 有关的关联。 + 一个 对象,表示与此 有关的关联。 + + + 表示 AssociationSet 端的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取与此 对象相对应的 End 成员。 + 一个 对象,表示与此 对象相对应的 End 成员。 + + + 获取由此 End 角色引用的实体集。 + 一个 对象,表示由此 End 角色引用的实体集。 + + + 获取此 的 End 名称。 + 的 End 名称。 + + + 获取此 的父关联集。 + 一个 对象,表示此 的父关联集。 + + + 获取此 的 End 角色名称。 + 的 End 角色名称。 + + + 返回此 的 End 角色名称。 + 的 End 角色名称。 + + + 描述概念模型中两个实体之间的关联/关系,或者描述存储模型中两个表之间的外键关系。在概念模型中,相关类不一定定义外键属性。如果定义了某一外键,则 属性将为 true,并且 属性将包含外键的详细信息 + + + 获取此 的端的列表。 + 一个 类型的集合,其中包含此 的 End 列表。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取或设置引用约束。 + 引用约束。 + + + 从指定的参数创建一个只读 AssociationType 实例。 + 新创建的 AssociationType 实例。 + 关联类型的名称。 + 关联类型的命名空间。 + 指示外键 (FK) 关系的标志。 + 关联类型的数据空间。 + 源关联端成员。 + 目标关联端成员。 + 一个引用约束。 + 要与该实例相关联的元数据属性。 + 指定的名称为 null 或空。 + 指定的命名空间为 null 或空。 + + + 获取一个布尔属性值,该值指定列是否为外键。 + 一个指定列是否为外键的布尔值。如果为 true,则列是外键。如果为 false(默认值),则列不是外键。 + + + 获取此 的约束列表。 + 一个 类型的集合,其中包含此 的约束列表。 + + + 所有内置类型的列表 + + + 关联类型种类 + + + AssociationSet 种类 + + + AssociationSetEnd 种类 + + + 关联类型种类 + + + 集合种类 + + + 集合类型种类 + + + 复杂类型种类 + + + 文档种类 + + + EdmFunction 种类 + + + EdmMember 类型种类 + + + EdmProperty 类型种类 + + + Edm 类型种类 + + + 实体容器种类 + + + 实体集种类 + + + EntitySetBase 种类 + + + 实体类型种类 + + + 实体类型基种类 + + + 枚举成员种类 + + + 枚举类型种类 + + + 方面种类 + + + 函数参数种类 + + + 全局项类型种类 + + + 元数据项类型种类 + + + 元数据属性种类 + + + 导航属性种类 + + + DeleteAction 类型种类 + + + 参数模式种类 + + + 基元类型种类 + + + 基元类型种类 + + + ProviderManifest 类型种类 + + + 引用约束类型种类 + + + Ref 类型种类 + + + RelationshipEnd 类型种类 + + + 关系多重性类型种类 + + + RelationshipEnd 类型种类 + + + 关系类型 + + + 行类型种类 + + + 简单类型种类 + + + 结构化类型种类 + + + 类型信息种类 + + + 集合的种类(适用于属性) + + + 集合具有包语义(允许未排序和重复项) + + + 集合具有列表语义(顺序明确并且允许重复项) + + + 属性不是集合 + + + 表示 Edm 集合类型 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取 类的一个实例,其中包含此当前 对象所包括的元素的类型以及该类型的各个方面。 + + 类的一个实例,其中包含此当前 对象所包括的元素的类型以及该类型的各个方面。 + + + 表示 Edm 复杂类型。这可用于从概念空间基于模型的约定配置复杂类型。在存储模型中不支持复杂类型。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 创建 类型的新实例。 + + 类型的新实例。 + 复杂类型的名称。 + 复杂类型的命名空间。 + 复杂类型属于的数据空间。 + 复杂类型的成员。 + 要与该实例相关联的元数据属性。 + 在 name、namespace 或 members 参数为 null 时引发。 + + + 获取此 的属性列表。 + 一个 类型的集合,其中包含此 的属性列表。 + + + 属性的并发模式。 + + + 固定并发模式:在写入时间始终验证属性 + + + 默认并发模式:在写入时间从不验证属性 + + + 将符合单个 CSDL 架构文件限制的 序列化到 XML 编写器。要序列化的模型必须包含单个 + + + 初始化 类的新实例。 + + + 当序列化模型过程中遇到错误时发生。 + + + 序列化到 XmlWriter。 + 如果模型有效,则为 true;否则为 false。 + 要序列化的 EdmModel。 + 要序列化到的 XmlWriter。 + 已序列化的模型的命名空间。 + + + 表示有关处理实体框架模型时所发生的错误的信息。 + + + 初始化 类的新实例。 + + + 获取描述所引发的错误的可选描述性消息。 + 描述所引发的错误的可选描述消息。 + + + 获取一个值,用于指示导致引发此事件的 + 如果 可引发此事件,则为 true;否则为 false。 + + + 获取一个可选值,用于指示导致引发此事件的源项的属性。 + 指示导致引发此事件的源项的属性。 + + + DataSpace + + + CSpace 指示 CSpace 中的项 - edm 基元类型 + 在 csdl 中定义的类型 + + + CSpace 和 SSpace 之间的映射 + + + OSpace 和 CSpace 之间的映射 + + + OSpace 指示 clr 空间中的项 + + + SSpace 指示 SSpace 中的项 + + + + 的扩展方法。 + + + 从指定 DbModel 获取概念模型。 + 表示概念模型的 EdmModel 的实例。 + 实现 IEdmModelAdapter 的类的实例(例如DbModel)。 + + + 从指定 DbModel 获取存储模型。 + 表示存储模型的 EdmModel 的实例。 + 实现 IEdmModelAdapter 的类的实例(例如DbModel)。 + + + 表示与某一项相关联的文档的类 + + + 初始化新的 Documentation 实例。 + 摘要字符串。 + 长描述字符串。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取一个值,该值指示此 对象是否只包含一个 null(即空的) 和一个 + 如果此 对象只包含一个 null(即空的) 和一个 ,则为 true;否则为 false。 + + + 获取有关此 的详细说明。 + 有关此 的详细说明。 + + + 获取此 的摘要。 + 的摘要。 + + + 返回此 的摘要。 + 的摘要。 + + + 此类包装有关一般性 EDM 错误的错误信息。 + + + 获取错误消息。 + 错误消息。 + + + 表示某一函数的类 + + + 向此函数添加参数。 + 要添加的参数。 + + + 获取此函数的聚合特性。 + + + 获取一个值,该值指示此函数中是否存在内置特性。 + 如果存在内置特性,则为 true;否则为 false。 + + + 获取此 的内置类型种类。 + + 枚举的枚举值之一。 + + + 获取采用数据库管理系统或存储模型所使用的语言的查询。 + 采用数据库管理系统或存储模型所使用语法的一个字符串值,其中包含 的查询或更新语句。 + + + 构造该 对象的工厂方法。 + + 类型的新的只读实例。 + 函数的名称。 + 函数的命名空间。 + 函数所属的命名空间。 + 其他函数特性和属性。 + 将添加到该函数的元数据属性。可以为 null。 + + + 返回此类型的全名(命名空间加名称)。 + 类型的全名。 + + + 获取是将此实例映射到函数还是映射到存储过程的信息。 + 如果将此实例映射到函数,则为 true;如果将此实例映射到存储过程,则为 false。 + + + 获取一个值,该值指示此实例是否来自提供程序清单。 + 如果此实例来自提供程序清单,则为 true;否则为 false。 + + + 获取一个值,该值指示此函数是否为 niladic 函数(不接受任何参数的函数)。 + 如果此函数为 niladic 函数,则为 true;否则为 false。 + + + 获取此 的参数。 + 一个 类型的集合,其中包含此 的参数。 + + + 获取此函数的参数类型语义特性。 + + + 获取此 的返回参数。 + 一个 对象,表示此 的返回参数。 + + + 获取此 的返回参数。 + 一个 类型的集合,表示 的返回参数。 + + + 获取或设置与函数关联的架构。 + 与函数关联的架构。 + + + 获取此函数的存储函数名称特性。 + + + 包含 的其他特性和属性。 + + + 初始化 类的新实例。 + + + 获取或设置与函数关联的命令文本。 + 与函数关联的命令文本。 + + + 获取或设置函数的实体集。 + 函数的实体集。 + + + 获取指示这是否为聚合函数的值。 + 如果这是聚合函数,则为 true;否则为 false。 + + + 获取或设置此函数是否为内置函数的信息。 + 如果此函数为内置函数,则为 true;否则为 false。 + + + 获取或设置此函数是否为缓存存储函数的信息。 + 如果此函数为缓存的存储函数,则为 true;否则为 false。 + + + 获取或设置此函数是否可以组合的信息。 + 如果此函数可以组合,则为 true;否则为 false。 + + + 获取或设置此函数是否来自提供程序清单的信息。 + 如果此函数来自提供程序清单,则为 true;否则为 false。 + + + 获取或设置此函数是否为函数导入的信息。 + 如果此函数为函数导入,则为 true;否则为 false。 + + + 获取或设置函数是否不包含参数的信息。 + 如果函数不包含参数,则为 true;否则为 false。 + + + 获取或设置函数参数。 + 函数参数。 + + + 获取或设置参数类型语义。 + 参数类型语义。 + + + 获取或设置返回参数。 + 返回参数。 + + + 获取或设置函数架构。 + 函数架构。 + + + 获取或设置存储函数名称。 + 存储函数名称。 + + + 表示 Edm 空间中项的集合的类。 + + + 使用概念架构定义语言 (CSDL) 文件所在的 XMLReader 对象的集合初始化 类的新实例。 + 概念架构定义语言 (CSDL) 文件所在的 XMLReader 对象的集合。 + + + 初始化 类的新实例。 + 实体数据模型。 + + + 使用概念架构定义语言 (CSDL) 文件所在的路径初始化 类的新实例。 + 概念架构定义语言 (CSDL) 文件所在的路径。 + + + 创建 的工厂方法。 + 如果未遇到错误,则为 实例。否则为 null。 + 要加载的 CSDL 项目。不得是 null。 + CSDL 项目的路径。用于错误消息中。可为 null,在此情况下,XmlReader 的基 Uri 将用作路径。 + 加载时遇到的错误的集合。 + + + 获取此集合的概念模型版本。 + 此集合的概念模型版本。 + + + 返回一个由 对象构成的集合。 + 一个 ReadOnlyCollection 对象,表示 对象的集合。 + + + 返回具有指定的概念模型版本的 对象的集合。 + 一个 ReadOnlyCollection 对象,表示 对象的集合。 + 概念模型版本。 + + + 表示 edm 成员类 + + + 获取已对其声明此成员的类型。 + 一个 对象,表示已对其声明此成员的类型。 + + + 指示此成员是否在 EDM 定义中标记为计算成员 + + + 指示此成员的存储生成的模式是否在 EDM 定义中标记为标识 + + + 获取或设置属性的名称。从存储空间模型约定对此进行设置将更改此属性的数据库列的名称。在概念模型中,这应该与来自实体类的相应属性保持一致并且不应更改。 + 此成员的名称。 + + + 返回此成员的名称。 + 此成员的名称。 + + + 获取既包含此成员的类型又包含该类型的各个方面的 类实例。 + 一个 对象,其中既包含此成员的类型又包含该类型的各个方面。 + + + 表示概念模型或存储模型。该类可用于访问与模型的形状有关的信息以及对其进行配置的方式。 + + + 将关联类型添加到模型中。 + 要添加的 AssociationType 实例。 + + + 将复杂类型添加到模型中。 + 要添加的 ComplexType 实例。 + + + 将函数添加到模型中。 + 要添加的 EdmFunction 实例。 + + + 将实体类型添加到模型中。 + 要添加的 EntityType 实例。 + + + 将枚举类型添加到模型中。 + 要添加的 EnumType 实例。 + + + 获取模型中的关联类型。 + + + 获取此类型的内置类型种类。 + 一个 对象,表示此类型的内置类型种类。 + + + 获取模型中的复杂类型。 + + + 获取存储实体和关联集以及函数导入的容器。 + + + 获取与此模型关联的数据空间,该数据空间指示它是概念模型 (DataSpace.CSpace) 还是存储模型 (DataSpace.SSpace)。 + + + 获取模型中的实体类型。 + + + 获取模型中的枚举类型。 + + + 获取模型中的函数。 + + + 获取与模型关联的全局项。 + 与模型关联的全局项。 + + + 从模型中删除关联类型。 + 要删除的 AssociationType 实例。 + + + 从模型中删除复杂类型。 + 要删除的 ComplexType 实例。 + + + 从模型中删除函数。 + 要删除的 EdmFunction 实例。 + + + 从模型中删除实体类型。 + 要删除的 EntityType 实例。 + + + 从模型中删除枚举类型。 + 要删除的 EnumType 实例。 + + + 在概念空间中,EdmProperty 表示某个实体的属性。在存储空间中,EdmProperty 表示某个表中的列。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取或设置此模型的集合种类。 + 此模型的集合种类。 + + + 获取此属性的复杂类型信息。 + 此属性的复杂类型信息。 + + + 获取或设置属性的并发模式。 + 属性的并发模式。 + + + 创建 EdmProperty 类型的新实例。 + EdmProperty 类型的新实例 + 属性的名称。 + 属性 + + + 新建复杂属性。 + 新创建的属性。 + 属性的名称。 + 属性的类型。 + + + 新建枚举属性。 + 新创建的属性。 + 属性的名称。 + 属性的类型。 + + + 新建基元属性。 + 新创建的属性。 + 属性的名称。 + 属性的类型。 + + + 获取此 的默认值。 + 的默认值。 + + + 获取此属性的枚举类型信息。 + 此属性的枚举类型信息。 + + + 获取属性是否为集合类型属性的信息。 + 如果属性为集合类型属性,则为 true;否则为 false。 + + + 获取此属性是否为复杂类型属性的信息。 + 如果此属性为复杂类型属性,则为 true;否则为 false。 + + + 获取此属性是否为枚举类型属性的信息。 + 如果此属性为枚举类型属性,则为 true;否则为 false。 + + + 获取或设置此属性的长度是否是固定的信息。 + 如果此属性的长度是固定的,则为 true;否则为 false。 + + + 获取固定长度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取或设置此属性是否使用提供程序支持的最大长度的信息。 + 如果此属性使用提供程序支持的最大长度,则为 true;否则为 false。 + + + 获取最大长度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取精度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取此属性是否为基元类型的信息。 + 如果此属性为基元类型,则为 true;否则为 false。 + + + 获取小数位数方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取此属性是否为基础基元类型的信息。 + 如果此属性为基础基元类型,则为 true;否则为 false。 + + + 获取或设置此属性是否为 Unicode 属性的信息。 + 如果此属性为 Unicode 属性,则为 true;否则为 false。 + + + 获取 Unicode 方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获得或设置属性的最大长度。 + 属性的最大长度。 + + + 获取一个值,该值指示此 的值是否可以为 null。 + 如果此 的值可以为 null,则为 true;否则为 false。 + + + 获取或设置此属性的精度。 + 此属性的精度。 + + + 获取此属性的基元类型信息。 + 此属性的基元类型信息。 + + + 获取或设置此属性的小数位数。 + 此属性的小数位数。 + + + 设置元数据属性。 + 要设置的元数据属性。 + + + 获取或设置与此属性相关联的数据库列的生成方法 + 属性的存储生成模式。 + + + 获取属性的类型名称。 + 属性的类型名称。 + + + 获取此属性的基础基元类型信息。 + 此属性的基础基元类型信息。 + + + 该类包装已遇到的架构错误的错误信息。 + + + 构造 EdmSchemaError 对象。 + 该错误的说明。 + 与此错误关联的代码。 + 错误的严重级别。 + + + 获取发生错误的列。 + 发生错误的列。 + + + 获取错误代码。 + 错误代码。 + + + 获取发生错误的行号。 + 发生错误的行号。 + + + 获取包含错误的架构的位置。此字符串还包括位于末尾的架构的名称。 + 包含错误的架构所在的位置。 + + + 获取包含错误的架构的名称。 + 包含错误的架构的名称。 + + + 获取错误的严重级别。 + + 值之一。默认值为 + + + 获取发生错误时的堆栈跟踪的字符串表示形式。 + 发生错误时的堆栈跟踪的字符串表示形式。 + + + 返回错误消息。 + 错误消息。 + + + 定义在验证实体框架模型时可能出现的错误的不同严重级别。 + + + 导致无法使用模型的错误。 + + + 不会导致无法使用模型的警告。 + + + 用于所有模型类型的 EdmType 基类 + + + 获取一个值,该值指示此类型是否为抽象的。 + 如果此类型是抽象的,则为 true;否则为 false。 + + + 获取此类型的基类型。 + 此类型的基类型。 + + + 获取此类型的全名。 + 此类型的全名。 + + + 返回其元素类型属于此类型的 的实例。 + 其元素类型属于此类型的 对象。 + + + 获取此类型的名称。 + 此类型的名称。 + + + 获取此类型的命名空间。 + 此类型的命名空间。 + + + 返回此类型的全名。 + 此类型的全名。 + + + 表示某一实体容器的类 + + + 创建具有指定名称和数据空间的实体容器。 + 实体容器名称。 + 实体容器数据空间。 + name 参数为 null 时引发。 + name 参数为空字符串时引发。 + + + 将指定的实体集添加到容器。 + 要添加的实体集。 + + + 将函数导入添加到容器中。 + 要添加的函数导入。 + + + 获取此实体容器的关联集。 + 此实体容器的关联集。 + + + 获取此 包括的实体集和关联集的列表。 + 一个 对象,其中包含此 包括的实体集和关联集的列表。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 用于构造 EntityContainer 对象的工厂方法。 + EntityContainer 对象。 + 要创建的实体容器的名称。 + 此实体容器所属的 DataSpace。 + 将包含在新容器中的实体集。可以为 null。 + 将包含在新容器中的函数。可以为 null。 + 要与该实例相关联的元数据属性。 + 在名称参数为 null 或是空字符串时引发。 + + + 获取此实体容器的实体集。 + 此实体容器的实体集。 + + + 指定 元素的集合。每个函数都包含数据库中存在的存储过程的详细信息,或映射到实体及其属性的等效 CommandText 的详细信息。 + 一个包含 元素的 + + + 使用实体集的指定名称返回一个 对象。 + 一个 对象,表示具有指定名称的实体集。 + 要搜索的实体集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用关系集的指定名称返回一个 对象。 + 一个 对象,表示具有指定名称的关系集。 + 要搜索的关系集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 获取此 的名称。 + 的名称。 + + + 从容器中删除特定实体集。 + 要删除的实体集。 + + + 返回此 的名称。 + 的名称。 + + + 使用实体集的指定名称返回一个 对象。 + 如果存在与搜索条件匹配的实体集,则为 true;否则为 false。 + 要搜索的实体集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,包含一个 对象。如果不存在实体集,此输出参数将包含 null。 + + + 使用关系集的指定名称返回一个 对象。 + 如果存在与搜索条件匹配的关系集,则为 true;否则为 false。 + 要搜索的关系集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,包含一个 对象。 + + + 表示在 EntityType 中定义的结构的特定用法。在概念模型中,这表示可以查询和存储实体的集。在存储模型中,它表示一个表。从存储空间模型约定中,它可用来通过 属性配置表名称,通过 属性配置表架构。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 EntitySet 对象的工厂方法。 + EntitySet 对象。 + EntitySet 的名称。 + db 架构。可以为 null。 + db 表。可以为 null。 + 应该用于检索此 EntitySet 的数据的提供程序特定的查询。可以为 null。 + 此实体集类型包含的实体的实体类型。 + 将添加到新创建的 EntitySet 的元数据属性。可以为 null。 + 在名称参数为 null 或是空字符串时引发。 + + + 获取此 的实体类型。 + 一个 对象,表示此 的实体类型。 + + + 表示某一实体集的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取描述此实体集的已转义提供程序特定的 SQL。 + + + 获取此 的实体类型。 + 一个 对象,表示此 的实体类型。 + + + 获取当前实体集或关系集的实体容器。 + 一个 对象,表示当前实体集或关系集的实体容器。 + + + 获取或设置当前实体集或关系集的名称。如果从存储空间更改此属性,则也必须更新映射层,以便反映新名称。若要更改存储空间 的表名称,请使用 Table 属性。 + 当前实体集或关系集的名称。 + + + 获取或设置此实体集的数据库架构。 + + + 获取或设置此实体集的数据库表名称。 + + + 返回当前实体集或关系集的名称。 + 当前实体集或关系集的名称。 + + + 表示 的结构。在概念模型中,这表示某一实体的形状和结构。在存储模型中,这表示表的结构。若要更改架构和表名称,请使用 EntitySet。 + + + 将指定的导航属性添加到此类型的成员。添加导航属性,而与只读标志无关。 + 要添加的导航属性。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 EntityType 对象的工厂方法。 + EntityType 对象。 + 实体类型的名称。 + 此实体类型的命名空间。 + 此 EntityType 属于的数据空间。 + 该类型的键成员的名称。 + 该实体类型的成员(基元和导航属性)。 + 要与该实例相关联的元数据属性。 + 在 name 或 namespace 参数为 null 时引发。 + + + 构造该 EntityType 对象的工厂方法。 + EntityType 对象。 + 实体类型的名称。 + 此实体类型的命名空间。 + 此 EntityType 属于的数据空间。 + 基类型。 + 该类型的键成员的名称。 + 该实体类型的成员(基元和导航属性)。 + 要与该实例相关联的元数据属性。 + 在 name 或 namespace 参数为 null 时引发。 + + + 获取实体类型的已声明成员的集合。 + 实体类型的已声明成员的集合。 + + + 获取与实体类型关联的已声明导航属性。 + 与实体类型关联的已声明导航属性。 + + + 获取实体类型的已声明属性的列表。 + 实体类型的已声明属性。 + + + 返回一个引用此 对象。 + 一个引用此 对象。 + + + 获取此 的导航属性。 + 一个 类型的集合,其中包含此 的导航属性列表。 + + + 获取此 的属性列表。 + 一个 类型的集合,其中包含此 的属性列表。 + + + 表示实体类型 + + + 将指定的属性添加到当前实体的键的列表。 + 要添加的属性。 + 如果成员参数为 null + 在 EntityType 具有另一个 EntityTypeBase 的基类型时引发。在此情形下,KeyMembers 应该作为基类型添加 + 如果 EntityType 实例处于 ReadOnly 状态 + + + 获取当前实体或关系类型的所有键成员的列表。 + 一个 对象,表示当前实体或关系类型的键成员的列表。 + + + 获取此实体类型的所有键属性的列表。 + 此实体类型的所有键属性的列表。 + + + 从集合中删除指定的键成员。 + 要删除的键成员。 + + + 表示一个枚举成员。 + + + 获取此类型的种类。 + 此类型的种类。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 获取该枚举成员的名称。 + 此枚举成员的名称。 + + + 重写 System.Object.ToString 以提供针对此类型的更好的字符串表示形式。 + 此枚举成员的名称。 + + + 获取该枚举成员的值。 + 此枚举成员的值。 + + + 表示一个枚举类型。 + + + 返回类型的种类 + + + 创建一个只读的 EnumType 实例。 + 新创建的 EnumType 实例。 + 枚举类型的名称。 + 枚举类型的命名空间。 + 枚举类型的基础类型。 + 指示是否可以将枚举类型视为位域;即标志集。 + 枚举类型的成员。 + 要与枚举类型相关联的元数据属性。 + underlyingType 为 null。 + name 为 null 或为空。-或- namespaceName 为 null 或为空。-或- underlyingType 不是支持的基础类型。-或- 指定成员的名称不唯一。-或- 指定成员的值不在基础类型的范围内。 + + + 获取一个值,该值指示 enum 类型是否已定义为标志(即,可被视为位域) + + + 获取此枚举类型的枚举成员的集合。 + + + 获取此枚举类型的基础类型。 + + + 表示某一 Facet 对象的类。此对象是不可变的(不是仅设置为只读)并且系统的某些部分正依赖于该行为 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取有关此 的说明。 + + 对象,表示有关此 的说明。 + + + 获取此 的类型。 + + 对象,表示此 的类型。 + + + 获取一个值,该值指示是否未绑定方面的值。 + 如果未绑定方面的值,则为 true;否则为 false。 + + + 获取此 的名称。 + 的名称。 + + + 返回此 的名称。 + 的名称。 + + + 获取此 的值。 + 的值。 + + + 表示 FacetDescription 对象的类 + + + 获取具有此方面说明的方面的默认值。 + 具有此方面说明的方面的默认值。 + + + 获取此方面的名称。 + 此方面的名称。 + + + 获取此方面的类型。 + 一个 对象,表示此方面的类型。 + + + 获取一个值,该值指示此方面的值是否为常量。 + 如果此方面是一个常量,则为 true;否则为 false。 + + + 获取一个值,该值指示此方面是否为必需的方面。 + 如果此方面是必需的方面,则为 true;否则为 false。 + + + 获取此方面的最大值。 + 此方面的最大值。 + + + 获取此方面的最小值。 + 此方面的最小值。 + + + 返回此方面的名称。 + 此方面的名称。 + + + 表示函数参数的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 对象的工厂方法。 + + 类型的新的只读实例。 + 参数名。 + 参数的 EdmType。 + 参数的 。 + + + 获取已对其声明此参数的 + 一个 对象,表示已对其声明此参数的函数。 + + + 获取此参数是否使用数据库提供程序支持的最大长度的信息。 + 如果此参数使用数据库提供程序支持的最大长度,则为 true;否则为 false。 + + + 获取最大长度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取精度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取小数位数方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取参数的最大长度。 + 参数的最大长度。 + + + 获取此 的模式。 + + 值之一。 + + + 获取此 的名称。 + 的名称。 + + + 获取参数的精度值。 + 参数的精度值。 + + + 获取参数的小数位数值。 + 参数的小数位数值。 + + + 返回此 的名称。 + 的名称。 + + + 获取此参数的类型名称。 + 此参数的类型名称。 + + + 获取既包含该参数的类型又包含该类型的各个方面的 类实例。 + 一个 对象,其中既包含该参数的类型又包含该类型的各个方面。 + + + 表示所有元数据的项基类 + + + 用于获取 的基础存储和概念模型的接口。 + + + 获取概念模型。 + + + 获取存储模型。 + + + 表示项的集合的类。该集合的实际维护的大部分实现由 MetadataCollection 完成 + + + 获取与此项集合关联的数据模型。 + 与此项集合关联的数据模型。 + + + 使用指定的实体容器名称返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + + + 使用指定的实体容器名称返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的名称从此项集合中返回所有函数重载。 + 一个 ReadOnlyCollection 类型的集合,其中包含具有指定名称的所有函数。 + 一个函数字典。 + 函数的全名。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的名称从此项集合中返回所有函数重载。 + 一个 类型的集合,其中包含具有指定名称的所有函数。 + 函数的全名。 + + + 使用指定的名称从此项集合中返回所有函数重载。 + 一个 类型的集合,其中包含具有指定名称的所有函数。 + 函数的全名。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的标识返回一个强类型的 对象。 + 由标识指定的项。 + 项的标识。 + 由方法返回的类型。 + + + 通过使用指定的标识进行区分大小写或不区分大小写的搜索,返回一个强类型的 对象。 + 由标识指定的项。 + 项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 由方法返回的类型。 + + + 从此项集合中返回属于指定类型的所有项。 + 一个 类型的集合,其中包含属于指定类型的所有项。 + 由方法返回的类型。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 一个 对象,表示此项集合中与指定的类型名称和命名空间名称匹配的类型。如果不存在匹配的类型,此方法将返回 null。 + 类型名称。 + 类型的命名空间。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 一个 对象,表示此项集合中与指定的类型名称和命名空间名称匹配的类型。如果不存在匹配的类型,此方法将返回 null。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的实体容器名称返回一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将包含第一个实体容器。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 它在此方法返回时会包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将包含第一个实体容器。 + + + 使用指定的实体容器名称返回一个 对象。如果不存在实体容器,该输出参数将包含 null;否则,它将包含第一个实体容器。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 它在此方法返回时会包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将包含第一个实体容器。 + + + 使用指定的标识从此项集合中返回一个强类型的 对象。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,此输出参数会包含一个 对象。如果项集合中不存在具有指定标识的全局项,此输出参数将包含 null。 + 由方法返回的类型。 + + + 使用指定的标识从此项集合中返回一个强类型的 对象。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 项的标识。 + 在此方法返回时,此输出参数会包含一个 对象。如果项集合中不存在具有指定标识的全局项,此输出参数将包含 null。 + 由方法返回的类型。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,此输出参数会包含一个 对象。如果此项集合中不存在具有指定的名称和命名空间名称的类型,此输出参数将包含 null。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 在此方法返回时,此输出参数会包含一个 对象。如果此项集合中不存在具有指定的名称和命名空间名称的类型,此输出参数将包含 null。 + + + 表示所有元数据的项基类 + + + 添加或更新具有指定名称和值的批注。 + 批注属性的名称。 + 批注属性的值。 + + + 获取此类型的内置类型种类。 + 一个 对象,表示此类型的内置类型种类。 + + + 获取或设置与此类型关联的文档。 + 一个 对象,表示介绍此类型的文档。 + + + 返回一个与 值之一匹配的概念模型内置类型。 + 一个 对象,表示 EDM 中的内置类型。 + + 值之一。 + + + 返回有关指定类型的常规方面的说明列表。 + 一个 对象,表示有关指定类型的常规方面的说明列表。 + + + 获取当前类型的属性列表。 + 一个 类型的集合,其中包含当前类型的属性列表。 + + + 删除具有指定名称的批注。 + 如果删除了批注,则为 true;否则为 false。 + 批注属性的名称。 + + + 表示某一项的元数据特性的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 MetadataProperty 对象的工厂方法。 + MetadataProperty 对象。 + 元数据属性的名称。 + 该元数据属性的类型用法。 + 元数据属性的值。 + + 为 null 时引发。 + + + 创建具有指定名称和值的元数据批注。 + 表示创建的批注的 MetadataProperty 实例。 + 批注名称。 + 批注值。 + + + 获取指示元数据属性是否为注释的布尔值。 + + + 获取此 的名称。 + 的名称。 + + + 获取此 的值。 + 的值。 + + + 获取既包含此 的类型又包含该类型的各个方面的 类实例。 + 一个 对象,其中既包含此 的类型又包含该类型的各个方面。 + + + 获取此 的值。 + 的值。 + + + 运行时元数据工作区 + + + 初始化 类的新实例。 + + + 使用指定的路径和程序集初始化 类的新实例。 + 工作区元数据的路径。 + 用于构造工作区的程序集的名称。 + + + 使用来自传统 EDMX 映射的所有项集合 () 的加载程序构造一个 。将使用默认的 o-space 和 o/c 映射集合。首次使用给定集合时,会惰式执行项集合委托。可以传递一个委托,以便在集合从不会被使用时返回 null,但极少这样做,因为在这种情况下,EF 使用集合的任何尝试都将导致异常。 + 委托以返回 c-space (CSDL) 项集合。 + 委托以返回 s-space (SSDL) 项集合。 + 委托以返回 c/s 映射 (MSL) 项集合。 + + + 使用 EF 所需的所有项集合 () 的加载程序构造一个 ,o/c 映射除外,将基于给定的 o-space 和 c-space 加载程序自动创建该映射。首次使用给定集合时,会惰式执行项集合委托。可以传递一个委托,以便在集合从不会被使用时返回 null,但极少这样做,因为在这种情况下,EF 使用集合的任何尝试都将导致异常。 + 委托以返回 c-space (CSDL) 项集合。 + 委托以返回 s-space (SSDL) 项集合。 + 委托以返回 c/s 映射 (MSL) 项集合。 + 委托以返回 o-space 项集合。 + + + 清除所有的元数据缓存条目。 + + + 创建配置为使用 数据空间的 + 创建的分析器对象。 + + + 基于指定的查询表达式,创建限定为此元数据工作区的新 + 使用指定表达式作为其 属性的新 + 一个定义查询的 。 + 如果 为 null + 如果 包含在此元数据工作区无法解析的元数据 + 如果 因为包含无法解析的变量引用导致结构无效 + + + 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 一个表示 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个在对象空间中提供类型的 。 + + + 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 一个表示 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个在对象空间中提供类型的 。 + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索实体容器的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + 要从中搜索实体容器的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的名称、命名空间名称和数据模型返回所有函数重载。 + 一个 类型的集合,其中包含给定命名空间和数据模型中与指定名称匹配的所有函数。 + 函数的名称。 + 函数的命名空间。 + 要从中搜索函数的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的名称、命名空间名称和数据模型返回所有函数重载。 + 一个 类型的集合,其中包含给定命名空间和数据模型中与指定名称匹配的所有函数。 + 函数的名称。 + 函数的命名空间。 + 要从中搜索函数的概念模型。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的标识和数据模型返回一个项。 + 指定的数据模型中与给定标识匹配的项。 + 项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 由方法返回的类型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的标识和数据模型返回一个项。 + 指定的数据模型中与给定标识匹配的项。 + 项的标识。 + 要从中搜索项的概念模型。 + 由方法返回的类型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 获取 项。 + + 项。 + 要从其中检索项的 。 + + + 获取指定数据模型中的所有项。 + 一个 类型的集合,其中包含指定数据模型中的所有项。 + 需要其项列表的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 获取指定数据模型中的所有项。 + 一个 类型的集合,其中包含指定数据模型中的所有项。 + 需要其项列表的概念模型。 + 由方法返回的类型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 返回一个 对象,该对象表示与参数 edmSpaceType 提供的类型匹配的对象空间类型。 + 一个表示对象空间类型的 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个表示 对象。 + + + 返回一个 对象,该对象表示与参数 edmSpaceType 提供的类型匹配的对象空间类型。 + 一个表示对象空间类型的 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个表示 对象。 + + + 返回指定数据模型中的基元类型列表。 + 一个 类型的集合,其中包含指定数据模型中的所有基元类型。 + 需要获取其基元类型列表的数据模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 返回在修改实体时需要对其使用原始值的给定 / 的成员。 + 需要原始值的 + 属于 C-Space 的 。 + 参与给定 。 + 如果可以部分更新实体,则为 true;否则为 false。 + + + 从实体集和实体类型获取原始值成员。 + 实体集和实体类型中的原始值成员。 + 从中检索原始值的实体集。 + 对其检索原始值的实体类型。 + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 一个 对象。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索类型的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 一个 对象,表示指定的数据模型中与给定的类型名称和命名空间名称匹配的类型。如果不存在匹配的类型,此方法将返回 null。 + 类型名称。 + 类型的命名空间。 + 要从中搜索类型的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + 用于记录加载消息的委托。 + + + 运行时将支持的最高 EDM 版本。 + + + 在每个关联的数据模型中注册项集合。 + 需要填充的输出参数集合。 + + + 通过输出参数 edmSpaceType 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 如果成功,则为 true;如果失败,则为 false。 + 一个表示对象空间类型的 对象。 + 在此方法返回时,包含一个表示 对象。此参数未经初始化即被传递。 + + + 通过输出参数 edmSpaceType 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示对象空间类型的 对象。 + 在此方法返回时,包含一个表示 对象。此参数未经初始化即被传递。 + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索实体容器的概念模型。 + 在此方法返回时,包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将返回第一个实体容器。此参数未经初始化即被传递。 + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 要从中搜索实体容器的概念模型。 + 在此方法返回时,包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将返回第一个实体容器。此参数未经初始化即被传递。 + + + 使用指定的标识和数据模型返回一个项。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + 由方法返回的类型。 + + + 使用指定的标识和数据模型返回一个项。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 要从中搜索项的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + 由方法返回的类型。 + + + 测试对 的检索。 + 如果检索成功,则为 true,否则为 false。 + 从中尝试 检索的 。 + 在此方法返回时,包含项集合。此参数未经初始化即被传递。 + + + 通过输出参数 objectSpaceType 返回一个 对象,该对象表示与参数 edmSpaceType 提供的 匹配的类型。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示 对象。 + 此方法返回时,包含一个 对象,该对象表示对象空间类型。此参数未经初始化即被传递。 + + + 通过输出参数 objectSpaceType 返回一个 对象,该对象表示与参数 edmSpaceType 提供的 匹配的类型。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示 对象。 + 此方法返回时,包含一个 对象,该对象表示对象空间类型。此参数未经初始化即被传递。 + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索类型的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 要从中搜索类型的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + + + 表示 edm 导航属性类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 从指定的参数创建一个 NavigationProperty 实例。 + 新创建的 NavigationProperty 实例。 + 导航属性的名称。 + 指定导航属性类型及其方面。 + 导航的关系类型。 + 导航中的源端成员。 + 导航中的目标端成员。 + 导航属性的元数据属性。 + + + 获取此导航中的“源”关系 End 成员。 + 此导航中的“源”关系 End 成员。 + + + 在给定的导航属性位于引用约束的依赖端时,返回外键属性。否则,返回空集。我们将按主体端键属性的顺序返回这些成员。 + 外键属性的集合。 + + + 获取此导航属性操作的关系类型。 + 此导航属性操作的关系类型。 + + + 获取此导航的“目标”关系 End 成员。 + 此导航的“目标”关系 End 成员。 + + + 表示对象层的项集合的类。该集合的实际维护的大部分实现由 ItemCollection 完成 + + + 初始化 类的新实例。 + + + 该方法返回指定 OSpace 类型参数的基础 CLR 类型。如果该参数的 DataSpace 不为 OSpace,则引发 ArgumentException。 + OSpace 参数的 CLR 类型。 + 要查找的 OSpace 类型。 + + + 返回与 objectSpaceType 参数提供的 相对应的 CLR 类型。 + OSpace 参数的 CLR 类型。 + 一个表示对象空间类型的 。 + + + 从此项集合中返回属于指定类型的所有项。 + 一个 类型的集合,其中包含属于指定类型的所有项。 + 由方法返回的类型。 + + + 返回基元类型对象集合。 + 基元类型对象的集合。 + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + + + 从指定的程序集加载元数据。 + 将加载其元数据的程序集。 + O space 元数据的 EDM 元数据源。 + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + O space 元数据的 EDM 元数据源。 + 将向其发送日志消息的委托。 + + + 返回指定的枚举类型参数的基础 CLR 类型。如果该参数的 DataSpace 不为 OSpace,则此方法返回 false 并将 out 参数设置为 null。 + 如果成功,则为 true;如果失败,则为 false + 要查找的 OSpace 枚举类型 + OSpace 参数的 CLR 枚举类型 + + + 返回与 objectSpaceType 参数提供的 相对应的 CLR 类型。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示对象空间类型的 。 + CLR 类型。 + + + 表示针对删除操作的可能操作的列表 + + + 级联到其他端 + + + 不执行任何操作 + + + 定义参数的模式的枚举 + + + In 参数 + + + in 和 out 参数 + + + Out 参数 + + + 返回参数 + + + 定义用于解析函数重载的类型语义的枚举。这些标志是在提供程序清单中根据函数定义来定义的。 + + + 允许在给定参数类型和形参类型(默认值)之间进行隐式转换。 + + + 允许在给定参数类型和形参类型之间进行类型提升。 + + + 仅使用严格等效。 + + + 表示基元类型的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 返回与此 等效的公共语言运行时 (CLR) 类型。请注意, 属性始终返回不可以为 null 的类型值。 + 一个 对象,表示与此 等效的公共语言运行时 (CLR) 类型。 + + + 获取有关此 各方面的说明列表。 + 一个 类型的集合,其中包含有关此 的方面说明列表。 + + + 返回与此 等效的 + 一个与此 等效的 对象。 + + + 返回 的等效 + 一个 对象,该对象是指定的 的等效项。 + 一个 类型的值。 + + + 返回基元类型的列表。 + 一个 类型的集合,其中包含基元类型的列表。 + + + 获取一个 枚举值,该值指示此 的基元类型。 + 一个指示此 的基元类型的 枚举值。 + + + EDM 定义的基元类型 + + + Binary 类型种类 + + + Boolean 类型种类 + + + Byte 类型种类 + + + DateTime 类型种类 + + + DateTimeOffset 类型种类 + + + Decimal 类型种类 + + + Double 类型种类 + + + Geography 类型种类 + + + Geographic 集合类型种类 + + + Geographic 线性环类型种类 + + + Geographic 多线性环类型种类 + + + Geographic 多点类型种类 + + + Geographic 多多边形类型种类 + + + Geographic 单点类型种类 + + + Geographic 多边形类型种类 + + + Geometry 类型种类 + + + Geometric 集合类型种类 + + + Geometric 线性环类型种类 + + + Geometric 多线性环类型种类 + + + Geometric 多点类型种类 + + + Geometric 多多边形类型种类 + + + Geometric 单点类型种类 + + + Geometric 多边形类型种类 + + + Guid 类型种类 + + + Int16 类型种类 + + + Int32 类型种类 + + + Int64 类型种类 + + + SByte 类型种类 + + + Single 类型种类 + + + String 类型种类 + + + Time 类型种类 + + + 指定概念模型中项特性的种类。 + + + 一个指示项特性为 Extended 的枚举成员。 + + + 一个指示项特性为 System 的枚举成员 + + + 表示 MetadataCollection 周围的只读包装的类 + 此集合中项的类型 + + + 确定集合中是否包含具有指定标识的项。 + 如果集合中包含要搜索的项,则为 true;否则为 false。默认值为 false。 + 项的标识。 + + + 返回一个可循环访问此集合的枚举器。 + 一个可用于循环访问此 + + + 使用指定的标识从此集合中检索一个项。 + 此集合中的一个项。 + 要搜索的项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 返回指定的值在此集合中的索引。 + 指定的值在此集合中的索引。 + 要搜寻的值。 + + + 获取一个值,该值指示此集合是否是只读的。 + 如果此集合是只读的,则为 true;否则为 false。 + + + 使用指定的标识从此集合中获取一个项。 + 此集合中的一个项。 + + + 使用指定的标识从此集合中检索一个项。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 要搜索的项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,此输出参数会包含集合中的一个项。如果不存在匹配的项,此输出参数将包含 null。 + + + MetadataCollection 的枚举器 + + + 获取位于当前位置的成员。 + 位于当前位置的成员。 + + + 释放此枚举器。 + + + 移至 类型的集合中的下一个成员。 + 如果枚举器在 类型的集合中发生了移动,则为 true;否则为 false。 + + + 将枚举器定位在 类型的集合中的第一个位置之前。 + + + 获取位于当前位置的成员 + + + 该类表示指定关系的“to”和“from”端的两个实体之间的引用约束。 + + + 在该关系上构造一个新约束 + 该关系源自的角色 + 该关系链接到/针对的角色 + 参与约束的目标角色的实体类型上的属性 + 参与约束的源角色的实体类型上的属性 + 如果任何参数为 null,则引发参数 Null 异常 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取定义此 时使用的“源角色”的属性列表。 + 一个 类型的集合,其中包含定义此 时使用的“源角色”的属性列表。 + + + 获取参与此 的“源角色”。 + 一个 对象,表示参与此 的“源角色”。 + + + 获取定义此 时使用的“目标角色”的属性列表。 + 一个 类型的集合,其中包含定义此 时使用的“目标角色”的属性列表。 + + + 获取参与此 的“目标角色”。 + 一个 对象,表示参与此 的“目标角色”。 + + + 返回 的名称组合。 + + 的名称组合。 + + + 表示引用类型的类。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取此 引用的实体类型。 + 一个 对象,表示此 引用的实体类型。 + + + 确定指定对象等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 初始化 RelationshipEndMember 类的新实例 + + + 获取此关系 End 成员的操作行为。 + + 值之一。默认值为 + + + 访问关联中的 EndMember 的 EntityType。 + 关联中的 EndMember 的 EntityType。 + + + 获取此关系 End 成员的重数。 + + 值之一。 + + + 表示与关系类型的端有关的多重性信息 + + + 下限为 0,上限为 null + + + 下限和上限均为 1 + + + 下限为 0,上限为 1 + + + 表示关系集的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取此 的关系类型。 + 一个 对象,表示此 的关系类型。 + + + 表示关系类型 + + + 获取此关系类型的 End 列表。 + 一个 类型的集合,其中包含此关系类型的 End 列表。 + + + 表示 Edm 行类型 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 对象的工厂方法。 + + 对象的新的只读实例。 + 行类型对象的属性。 + 将添加到该函数的元数据属性。可以为 null。 + + + 获取由当前类型定义的属性集合。 + 由当前类型定义的属性集合。 + + + 获取此 的属性列表。 + 一个 类型的集合,其中包含此 的属性列表。 + + + 表示简单类型的类 + + + 提供用于将 的存储(数据库)部分序列化到 XML 的方法。 + + + 初始化 类的新实例。 + + + 当序列化模型过程中遇到错误时发生。 + + + 序列化到 + 如果模型可以序列化,则为 true;否则为 false。 + 要序列化的 EdmModel。 + 架构元素上的命名空间名称。 + 架构元素上的提供程序信息。 + 架构元素上的 ProviderManifestToken 信息。 + 要序列化到的 XmlWriter。 + 指示在将可为空的属性设置为默认值时是否对其进行序列化的值。 + + + 序列化到 + 如果模型可以序列化,则为 true;否则为 false。 + 要序列化的 EdmModel。 + 架构元素上的提供程序信息。 + 架构元素上的 ProviderManifestToken 信息。 + 要序列化到的 XmlWriter。 + 指示在将可为空的属性设置为默认值时是否对其进行序列化的值。 + + + 服务器生成的属性的模式。 + + + 执行 INSERT 和 UPDATE 时都将生成一个值。 + + + 执行 INSERT 时生成一个值,但在执行 UPDATE 时保持不变。 + + + 不是服务器生成的属性。这是默认值。 + + + 表示存储空间中项的集合的类。 + + + 使用指定的 XMLReader 初始化 类的新实例。 + 用于创建元数据的 XMLReader。 + + + 初始化 类的新实例。 + + 的模型。 + + + 使用指定的文件路径初始化 类的新实例。 + 用于创建元数据的文件路径。 + + + 创建 的工厂方法。 + 如果未遇到错误,则为 实例。否则为 null。 + 要加载的 SSDL 项目。不得是 null。 + SSDL 项目的路径。用于错误消息中。可为 null,在此情况下,XmlReader 的基 Uri 将用作路径。 + 自定义解析程序。目前用于解析 DbProviderServices 实现。如果为 null,将使用默认解析程序。 + 加载时遇到的错误的集合。 + + + 返回一个由 对象构成的集合。 + 一个 对象,表示 对象的集合。 + + + 获取 StoreItemCollection 的提供程序工厂。 + StoreItemCollection 的提供程序工厂。 + + + 获取 StoreItemCollection 的固定名称。 + StoreItemCollection 的固定名称。 + + + 获取 StoreItemCollection 的提供程序清单。 + StoreItemCollection 的提供程序清单。 + + + 获取 StoreItemCollection 的清单标记。 + StoreItemCollection 的清单标记。 + + + 获取此集合的存储架构版本。 + 此集合的存储架构版本。 + + + 表示结构化类型 + + + 向此类型添加成员 + 要添加的成员 + + + 获取此类型的成员列表。 + 一个 类型的集合,其中包含此类型的一组成员。 + + + 从此类型删除成员。 + 要删除的成员。 + + + 表示某一项的类型信息的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 用于创建具有指定 EdmType 和方面的 TypeUsage 的工厂方法 + 新的 TypeUsage 实例 + 要为其创建类型用法的 EdmType + 要复制到新的 TypeUsage 中的方面 + + + 创建一个使用指定方面值描述二进制类型的 对象。 + 一个使用指定方面值描述二进制类型的 对象。 + 要为其创建 对象的 。 + 如果将二进制类型的长度设置为固定数值,则为 true;否则为 false。 + + + 创建一个使用指定方面值描述二进制类型的 对象。 + 一个使用指定方面值描述二进制类型的 对象。 + 要为其创建 对象的 。 + 如果将二进制类型的长度设置为固定数值,则为 true;否则为 false。 + 二进制类型的最大长度。 + + + 创建参数所描述类型的 对象。 + + 对象。 + 用于定义偏移的度量单位的简单类型。 + 用秒的小数部分(基于支持的小数位数)表示的 DateTimeOffset 的粒度。例如,精度为 3 表示支持的粒度为毫秒。 + + + 创建参数所描述类型的 对象。 + + 对象。 + 用于定义 DateTime 对象的度量单位的简单类型。 + 用秒的小数部分(基于支持的小数位数)表示的 DateTimeOffset 的粒度。例如,精度为 3 表示支持的粒度为毫秒。 + + + 创建一个用无限精度和小数位数方面值描述十进制类型的 对象。 + 一个使用无限精度和小数位数方面值描述十进制类型的 对象。 + 要为其创建 对象的 。 + + + 创建一个使用指定方面值描述十进制类型的 对象。 + 一个使用指定方面值描述十进制类型的 对象。 + 要为其创建 对象的 。 + 十进制类型(以 类型表示)的精度。 + 十进制类型(以 类型表示)的小数位数。 + + + 创建一个具有指定概念模型类型的 对象。 + 一个具有指定 的默认方面值的 对象。 + 要为其创建 对象的 。 + + + 创建一个使用指定方面值和无限 MaxLength 描述字符串类型的 对象。 + 一个使用指定方面和无限 MaxLength 描述字符串类型的 对象。 + 要为其创建 对象的 。 + 如果将字符串类型的字符编码标准设置为 Unicode,则为 true;否则为 false。 + 如果将字符串类型的长度设置为固定数值,则为 true;否则为 false + + + 创建一个使用指定方面值描述字符串类型的 对象。 + 一个使用指定方面值描述字符串类型的 对象。 + 要为其创建 对象的 。 + 如果将字符串类型的字符编码标准设置为 Unicode,则为 true;否则为 false。 + 如果将字符串类型的字符编码标准设置为 Unicode,则为 true;否则为 false。 + 如果将字符串类型的长度设置为固定数值,则为 true;否则为 false。 + + + 创建参数所描述类型的 对象。 + + 对象。 + 用于定义 DateTime 对象的度量单位的简单类型。 + 用秒的小数部分(基于支持的小数位数)表示的 DateTimeOffset 的粒度。例如,精度为 3 表示支持的粒度为毫秒。 + + + 获取由此 描述的类型信息。 + 一个 对象,表示由此 描述的类型信息。 + + + 获取由此 描述的类型的方面列表。 + 一个 类型的集合,其中包含由此 描述的类型的方面列表。 + + + 检查此 是否为指定 的子类型。 + 如果此 是指定 的子类型,则为 true;否则为 false。 + 要检查的 对象。 + + + 返回某一提供程序类型的模型类型用法 + 模型 (CSpace) 类型用法 + + + 返回由此 描述的类型的全名。 + 描述的类型的全名(采用字符串的形式)。 + + + 缓存 ELinq 查询 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg13 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg13 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg14 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg13 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg14 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg15 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 当前赋给实体的各个属性的值。 + + + 提供对对象数据的原始值的访问。DbUpdatableDataRecord 实现可用于更新对象的原始值的方法。 + + + 获取数据记录信息。 + + 对象。 + + + 获取记录中的字段数。 + 整数值字段数。 + + + 检索布尔值形式的字段值。 + 布尔值形式的字段值。 + 字段的序号。 + + + 检索字节形式的字段值。 + 字节形式的字段值。 + 字段的序号。 + + + 检索字节数组形式的字段值。 + 已复制的字节数。 + 字段的序号。 + 开始复制数据的位置的索引。 + 将数据复制到其中的目标缓冲区。 + 目标缓冲区中开始复制的位置的索引。 + 要复制的字节数。 + + + 检索字符形式的字段值。 + 字符形式的字段值。 + 字段的序号。 + + + 检索字符数组形式的字段值。 + 已复制的字符数。 + 字段的序号。 + 开始复制数据的位置的索引。 + 将数据复制到其中的目标缓冲区。 + 目标缓冲区中开始复制的位置的索引。 + 要复制的字符数。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索字段数据类型的名称。 + 字段数据类型的名称。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索十进制形式的字段值。 + 十进制形式的字段值。 + 字段的序号。 + + + 检索双精度值形式的字段值。 + 双精度值形式的字段值。 + 字段的序号。 + + + 检索字段的类型。 + 字段类型。 + 字段的序号。 + + + 检索浮点形式的字段值。 + 浮点形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索字段的名称。 + 字段的名称。 + 字段的序号。 + + + 使用字段名检索字段的序号。 + 字段的序号。 + 字段的名称。 + + + 检索字段的值。 + 字段值。 + 字段的序号。 + + + 检索字符串形式的字段值。 + 字段值。 + 字段的序号。 + + + 检索字段的值。 + 字段值。 + 字段的序号。 + + + 使用当前记录的字段值来填充对象数组。 + 返回的字段值的数目。 + 用于存储字段值的对象数组。 + + + 返回指定字段是否设置为 + 如果字段设置为 ,则为 true;否则为 false。 + 字段的序号。 + + + 返回具有给定字段序号的值。 + 具有给定字段序号的值。 + + + 获取具有给定字段名称的值。 + 字段值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 将一个字段设置为 值。 + 字段的序号。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中的字段值。 + 已设置的字段数。 + 字段的值。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 提供在 LINQ to Entities 查询中使用的公开 EDM 规范函数的公共语言运行时 (CLR) 方法。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为非 Unicode 字符串处理的运算符。 + 作为非 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为 Unicode 字符串处理的运算符。 + 作为 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTime EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTimeOffset EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + 新日期的时区偏移量部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateTime EDM 函数以创建新的 对象。 + 新的时间跨度。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个时间跨度间隔的小时数。 + 第一个时间跨度和第二个时间跨度间隔的小时数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个时间跨度间隔的微秒数。 + 第一个时间跨度和第二个时间跨度间隔的微秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个时间跨度间隔的毫秒数。 + 第一个时间跨度和第二个时间跨度间隔的毫秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个时间跨度间隔的分钟数。 + 第一个时间跨度和第二个时间跨度间隔的分钟数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个时间跨度间隔的纳秒数。 + 第一个时间跨度和第二个时间跨度间隔的纳秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个时间跨度间隔的秒数。 + 第一个时间跨度和第二个时间跨度间隔的秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 GetTotalOffsetMinutes EDM 函数以返回指定的日期/时间偏移 UTC 的分钟数。该值通常介于 +780 到 -780 之间(+ 或 - 13 小时)。 + 输入对 UTC 的偏移量。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Left 函数以返回字符串中最左侧指定数目的字符。 + 包含从输入字符串左侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Reverse 函数以返回其字符顺序反转的指定字符串。 + 以反转字符顺序显示的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Right 函数以返回字符串中最右侧指定数目的字符。 + 包含从输入字符串右侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 表示查询执行的选项。 + + + 创建 的新实例。 + 要用于实体结果的合并选项。 + + + 创建 的新实例。 + 要用于实体结果的合并选项。 + 如果流式处理查询,则为 true;否则为 false。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取用于实体结果的合并选项。 + 要用于实体结果的合并选项。 + + + 确定指定的对象是否相等。 + 如果两个对象相等,则为 true;否则为 false。 + 要比较的左侧对象。 + 要比较的右侧对象。 + + + 确定指定的对象是否不相等。 + 如果两个对象不相等,则为 true;否则为 false。 + 要比较的左侧对象。 + 要比较的右侧对象。 + + + 获取指示查询是否是流式处理还是缓存的一个值。 + 如果查询是流式处理,则为 true;否则为 false。 + + + 定义 IQueryable 实现的行为,该实现允许修改结果集的成员资格。 + 从查询返回的实体类型。 + + + 通知对象集,必须将表示新实体的对象添加到该集中。 + 要添加到集中的新对象。 + + + 通知对象集,必须将表示现有实体的对象添加到该集中。 + 要添加到集中的现有对象。 + + + 通知对象集,必须从中删除表示现有实体的对象。 + 要从集中删除的现有对象。 + + + 通知对象集,必须从中分离表示现有实体的对象。 + 要从对象集中分离的对象。 + + + 可将从数据库加载的新对象与内存中现有对象合并的不同方法。 + + + 将仅追加新的(顶级唯一)行。这是默认行为。 + + + 将不修改缓存。 + + + 与 LoadOption.OverwriteChanges 的行为相同。 + + + 与 LoadOption.PreserveChanges 的行为相同。 + + + ObjectContext 是封装 CLR 和数据库之间的连接的顶级元素,充当“创建”、“读取”、“更新”和“删除”操作的网关。 + + + 使用给定的连接初始化 类的新实例。在构造过程中,从 对象提取元数据工作区。 + 一种包含对模型和数据源连接的引用的 。 + connection 为 null。 + connection 无效或元数据工作区无效。 + + + 使用给定的连接和元数据工作区创建 ObjectContext。 + 与存储区的连接 + 如果设置为 true,则释放上下文时将释放该连接;否则调用方必须释放该连接。 + + + 使用给定连接和实体容器名称初始化 类的新实例。 + 一种包含对模型和数据源连接的引用的 。 + 默认实体容器的名称。通过此方法设置 defaultContainerName 时,该属性为只读属性。 + connection 为 null。 + connection、defaultContainerName 或元数据工作区无效。 + + + 使用给定连接字符串和默认实体容器名称初始化 类的新实例。 + 连接字符串,该连接字符串还提供对元数据信息的访问。 + connectionString 为 null。 + connectionString 无效或元数据工作区无效。 + + + 使用给定连接字符串和实体容器名称初始化 类的新实例。 + 连接字符串,该连接字符串还提供对元数据信息的访问。 + 默认实体容器的名称。通过此方法设置 defaultContainerName 时,该属性为只读属性。 + connectionString 为 null。 + connectionString、defaultContainerName 或元数据工作区无效。 + + + 接受在对象上下文中对对象所做的所有更改。 + + + 将对象添加到对象上下文。 + 表示实体集名称,可以选择通过实体容器名称对它进行限定。 + 要添加的 。 + entity 参数为 null 或 entitySetName 未限定。 + + + 将标量值从提供的对象复制到 中具有相同键的对象中。 + 已更新的对象。 + 对象所属实体集的名称。 + 其属性更新将应用于原始对象的已分离对象。currentEntity 的实体键必须与 中某个项的 属性相匹配。 + 对象的实体类型。 + entitySetName 或 current 为 null。 + 来自 entitySetName 的 与对象 不匹配,或对象不在 中,或对象处于 状态,或所提供对象的实体键无效。 + entitySetName 为空字符串。 + + + 将标量值从提供的对象复制到 中具有相同键的对象的原始值集中。 + 已更新的对象。 + 对象所属实体集的名称。 + 具有要应用于对象的原始值的已分离对象。originalEntity 的实体键必须与 中某个项的 属性相匹配。 + 实体对象的类型。 + entitySetName 或 original 为 null。 + 来自 entitySetName 的 与对象 不匹配,或在 中找不到对象的 ,或对象处于 状态,或所提供对象的实体键无效或属性发生了更改。 + entitySetName 为空字符串。 + + + 将已分离对象的属性更改应用于已附加到对象上下文的对象。 + 对象所属实体集的名称。 + 其属性更新将应用于原始对象的已分离对象。 + 当 entitySetName 为 null 或空字符串时,或当 changed 为 null 时。 + 当来自 entitySetName 的 与对象 不匹配时,或实体未处于 状态时,或原始对象未附加到上下文时。 + 当 changed 对象的类型与原始对象的类型不同时。 + + + 在对象具有实体键时将对象或对象图附加到对象上下文。 + 要附加的对象。 + entity 为 null。 + 无效的实体键。 + + + 将特定实体集中的对象或对象图附加到对象上下文。 + 表示实体集名称,可以选择通过实体容器名称对它进行限定。 + 要附加的 。 + entity 为 null。 + 实体集无效,或对象具有临时键,或对象具有 与作为方法参数传入的实体集不匹配,或对象没有 且未提供任何实体集,或对象图的任意对象具有临时 ,或对象图的任意对象具有无效的 (例如,键中的值与对象中的值不匹配),或无法根据给定的 entitySetName 名称和实体容器名称找到实体集,或对象图的任意对象已存于其他状态管理器中。 + + + 获取或设置所有对象上下文操作的超时值(以秒为单位)。null 值指示将使用基础提供程序的默认值。 + 作为超时值的 值(以秒为单位)。 + + + 获取对象上下文使用的连接。 + 一个作为连接的 对象。 + + + 获取 实例,该实例包含影响 行为的选项。 + + 实例,该实例包含影响 的行为的选项。 + + + 使用当前数据源连接和 中的元数据创建数据库。 + + + 生成数据定义语言 (DDL) 脚本,该脚本为 中的元数据创建架构对象(表、主键、外键)。 用于加载存储架构定义语言 (SSDL) 文件中的元数据。 + 一个 DDL 脚本,该脚本为 中的元数据创建架构对象。 + + + 为特定对象创建实体键,如果实体键已存在,则返回该键。 + 对象的 + 实体对象所属实体集的完全限定名称。 + 要为其检索实体键的对象。 + 当任一参数为 null 时。 + 当 entitySetName 为空时,或实体对象的类型在实体集中不存在时,或 entitySetName 没有完全限定时。 + 当无法根据提供的参数成功构造实体键时。 + + + 创建并返回所请求的类型的实例。 + 所请求类型 T 的实例,或一个使得 T 能够与实体框架一起使用的派生类型的实例。返回的对象是所请求类型的实例或使得请求的类型能够与实体框架一起使用的派生类型的实例。 + 要返回的对象的类型。 + + + 创建新的 实例,该实例用于查询、添加、修改和删除指定实体类型的对象。 + 新的 实例。 + 所请求的 的实体类型。 + 未在 上设置 属性,或指定的类型属于多个实体集。 + + + 创建新的 实例,该实例用于查询、添加、修改和删除具有指定类型和指定实体集名称的对象。 + 新的 实例。 + 返回的 的实体集的名称。如果未在 上设置 属性,则字符串必须使用默认容器名称进行限定。 + 所请求的 的实体类型。 + 来自 entitySetName 的 与对象 不匹配,或未在 上设置 属性且名称未限定为 entitySetName 参数的一部分,或指定的类型属于多个实体集。 + + + 为提供的枚举中的每个类型生成可与实体框架一同使用的等效类型。 + + 对象的枚举,这些对象表示映射到概念模型的自定义数据类。 + + + 使用指定查询字符串在当前对象上下文中创建 + 具有指定类型的 + 要执行的查询字符串。 + 要传递给查询的参数。 + 返回的 的实体类型。 + queryString 或 parameters 参数为 null。 + + + 检查在当前存储连接中指定为数据库的数据库是否在存储区上存在。大部分实际工作由当前存储连接的 DbProviderServices 实现完成。 + 如果数据库存在,则为 true;否则为 false。 + + + 获取或设置默认容器名称。 + 作为默认容器名称的 + + + 删除在当前数据源连接中指定为数据库的数据库。 + + + 标记对象以备删除。 + 指定待删除实体的对象。该对象可以为任何状态( 除外)。 + + + 从对象上下文移除对象。 + 要分离的对象。仅移除实体;如果存在任何由相同 跟踪的相关对象,则不会自动分离这些对象。 + entity 为 null。 + 实体不与此 关联(例如,是新创建的,仍未与任何上下文关联,或是通过其他上下文获取,或是已分离)。 + + + 确保 更改与由 跟踪的所有对象中的更改进行同步。 + + + 释放对象上下文使用的资源。 + + + 释放对象上下文使用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 对默认容器执行给定的函数。 + 一个表示执行此函数的结果的对象。 + 函数的名称。可能包含容器名称(例如 ContainerName.FunctionName),如果知道 DefaultContainerName,也可以仅包含函数名称。 + 用于执行此函数的选项。 + 要用于函数的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 函数结果的元素类型。 + 如果函数为 null 或为空 + 如果函数无效(语法错误、不存在或引用其返回类型与 T 不兼容的函数) + + + 使用指定的参数和合并选项,执行在数据源中定义并在概念模型中表示的给定存储过程或函数。返回一个类型化的 + 存储过程返回的数据的 + 存储过程或函数的名称。该名称可以包含容器名称,如 <容器名称>.<函数名称>。如果默认容器名称已知,则只需要函数名称。 + 要在执行查询时使用的 。 + 一个 对象数组。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 对数据源执行函数时,将返回 的实体类型。该类型必须实现 + function 为 null 或为空,或未找到 function。 + 实体读取器不支持此函数或读取器和函数的类型不匹配。 + + + 使用指定的参数,执行在数据源中定义并在概念模型中映射的存储过程或函数。返回一个类型化的 + 存储过程返回的数据的 + 存储过程或函数的名称。该名称可以包含容器名称,如 <容器名称>.<函数名称>。如果默认容器名称已知,则只需要函数名称。 + 一个 对象数组。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 对数据源执行函数时,将返回 的实体类型。该类型必须实现 + function 为 null 或为空,或未找到 function。 + 实体读取器不支持此函数或读取器和函数的类型不匹配。 + + + 执行在数据源中定义并在概念模型中表示的存储过程或函数,丢弃该函数返回的任何结果,并返回执行该函数影响的行数。 + 受影响的行数。 + 存储过程或函数的名称。该名称可以包含容器名称,如 <容器名称>.<函数名称>。如果默认容器名称已知,则只需要函数名称。 + 一个 对象数组。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + function 为 null 或为空,或未找到 function。 + 实体读取器不支持此函数或读取器和函数的类型不匹配。 + + + 使用现有连接对数据源直接执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 受影响的行数。 + 对于此命令控制事务的创建。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 受影响的行数。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 对于此命令控制事务的创建。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 对于此命令控制事务的创建。 + 使用服务器的本机查询语言指定的命令。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 使用服务器的本机查询语言指定的命令。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 要在执行查询时使用的 。默认值为 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 用于执行此查询的选项。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 用于执行此查询的选项。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 终结 类的实例。 + + + 返回所有现有代理类型。 + 所有现有代理类型的 + + + 返回具有指定实体键的对象。 + 一个 ,它是实体类型的实例。 + 要查找的对象的键。 + key 参数为 null。 + 和数据源中都未找到对象。 + + + 返回与指定类型的代理对象关联的 POCO 实体的实体类型。 + 关联的 POCO 实体的 + 代理对象的 。 + + + 返回用于此上下文的 + + + 通过指定的导航属性并使用默认合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的实体。 + 可返回要加载的相关对象的导航属性的名称。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 通过指定的导航属性并使用指定的合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的实体。 + 可返回要加载的相关对象的导航属性的名称。 + 在加载相关对象时要使用的 值。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 通过指定的 LINQ 查询并使用默认合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的源对象。 + 定义要加载的相关对象的 LINQ 表达式。 + 实体的类型。 + selector 未提供有效的输入参数。 + selector 为 null。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 通过指定的 LINQ 查询并使用指定的合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的源对象。 + 定义要加载的相关对象的 LINQ 表达式。 + 在加载相关对象时要使用的 值。 + 实体的类型。 + selector 未提供有效的输入参数。 + selector 为 null。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 获取对象上下文使用的元数据工作区。 + 与此 关联的 对象。 + + + 当使用数据源中的数据创建新的实体对象(作为查询或加载操作的一部分)时发生。 + + + 获取对象上下文用于跟踪对象更改的对象状态管理器。 + 使用的 + + + 获取与此对象上下文关联的 LINQ 查询提供程序。 + 由此对象上下文使用的 实例。 + + + 使用数据库中的数据更新对象上下文中的对象集合。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象的 集合。 + collection 为 null。 + refreshMode 无效。 + collection 为空或对象未附加到上下文。 + + + 使用数据库中的数据更新对象上下文中的对象。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象。 + entity 为 null。 + refreshMode 无效。 + 实体未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象集合。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象的 集合。 + collection 为 null。 + refreshMode 无效。 + collection 为空或对象未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象集合。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象的 集合。 + 等待任务完成期间要观察的 。 + collection 为 null。 + refreshMode 无效。 + collection 为空或对象未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象。 + entity 为 null。 + refreshMode 无效。 + 实体未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象。 + 等待任务完成期间要观察的 。 + entity 为 null。 + refreshMode 无效。 + 实体未附加到上下文。 + + + 将所有更新保存到数据库并重置对象上下文中的更改跟踪。 + 在调用 时处于 状态的对象数。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新保存到数据库并可选择重置对象上下文中的更改跟踪。 + 在调用 时处于 状态的对象数。 + 客户端事务支持需要此参数。如果为 true,则所有对象上的更改跟踪都会在 完成后重置。如果为 false,则必须在 之后调用 方法。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新保存到数据库并可选择重置对象上下文中的更改跟踪。 + 在调用 时处于 状态的对象数。 + 一个确定操作的行为的 值。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并可选择重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 一个确定操作的行为的 值。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并可选择重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 一个确定操作的行为的 值。 + 等待任务完成期间要观察的 。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 等待任务完成期间要观察的 。 + 保存更改时发生了开放式并发冲突。 + + + 在将更改保存到数据源时发生。 + + + 返回自身。ObjectContext 实现 以便为 和 ObjectContext(这两者将返回基础 ObjectContext)提供通用接口。 + + + 获取正由此上下文使用的事务处理程序。如果尚未启动任何事务,则可能为 null。 + 事务处理程序。 + + + 将包含实体数据行的 转换为请求的实体类型的对象。 + 类型为 TResult 的对象的枚举。 + 包含要转换为实体对象的实体数据的 。 + 实体类型。 + 当 reader 为 null 时。 + + + 在特定的实体集中,使用指定的合并选项将包含实体数据行的 转换为请求的实体类型的对象。 + 类型为 TResult 的对象的枚举。 + 包含要转换为实体对象的实体数据的 。 + TResult 类型的实体集。 + 在将转换后的对象添加到对象上下文时要使用的 。默认值为 。 + 实体类型。 + 当 reader 为 null 时。 + 当提供的 mergeOption 不是有效的 值时。 + 当提供的 entitySetName 不是 TResult 类型的有效实体集时。 + + + 返回具有指定实体键的对象。 + 如果成功检索到对象,则为 true。如果 key 是临时的、connection 为 null 或值为 null,则为 false。 + 要查找的对象的键。 + 在此方法返回时包含对象。 + 元数据对 key 不兼容。 + key 为 null。 + + + 定义影响 ObjectContext 的行为的选项。 + + + 获取或设置某值,该值确定是否应在事务中始终执行 SQL 函数和命令。 + 默认事务行为。 + + + 获取或设置一个布尔值,该值确定在访问导航属性时是否自动加载相关对象。 + 如果启用了延迟加载,则为 true;否则为 false。 + + + 获取或设置一个布尔值,该值确定是否为持久性未知的自定义数据类创建代理实例。 + 如果创建了代理,则为 true;否则为 false。默认值为 true。 + + + 获取或设置一个布尔值,该值确定是否要使用一致的 NullReference 行为。 + 如果应使用一致的 NullReference 行为,则为 true;否则为 false。 + + + 获取或设置一个布尔值,该值确定是否要使用 C# NullComparison 行为。 + 如果应使用 C# NullComparison 行为,则为 true;否则为 false。 + + + 获取或设置一个布尔值,该值确定是否要使用旧式 PreserveChanges 行为。 + 如果应使用旧式 PreserveChanges 行为,则为 true;否则为 false。 + + + ObjectMaterialized 事件的 EventArgs。 + + + 获取已创建的实体对象。 + 已创建的实体对象。 + + + ObjectMaterialized 事件的委托。 + + + 此类表示对象层的查询参数,它包含 Name、Type 和 Value。 + + + 使用指定的名称和值初始化 类的新实例。 + 参数名称。此名称不应包含“@”参数标记(它用在实体 SQL 语句中),只能为实际名称。表达式的第一个字符必须为字母。表达式中的所有后续字符都必须为字母、数字或下划线 (_) 字符。 + 参数的初始值(及固有类型)。 + 如果任一参数的值为 null。 + 如果名称参数的值无效。参数名称必须以字母开头,并且只能包含字母、数字和下划线。 + + + 利用指定的名称和类型初始化 类的新实例。 + 参数名称。此名称不应包含“@”参数标记(它用在实体 SQL 语句中),只能为实际名称。表达式的第一个字符必须为字母。表达式中的所有后续字符都必须为字母、数字或下划线 (_) 字符。 + 参数的公共语言运行库 (CLR) 类型。 + 如果任一参数的值为 null。 + 如果名称参数的值无效。参数名称必须以字母开头,并且只能包含字母、数字和下划线。 + + + 获取参数名称,该名称只能通过构造函数进行设置。 + 参数名称,它只能通过构造函数进行设置。 + + + 获取参数类型。 + 参数的 + + + 获取或设置参数值。 + 参数值。 + + + 表示对象层上的查询参数集合。 + + + 将指定的 添加到集合。 + 要添加到集合的参数。 + parameter 参数为 null。 + parameter 参数已存在于集合中。此行为与允许重复项的大多数集合的行为不同。-或-与实参同名的另一个形参已存在于集合中。注意,查找是区分大小写的。此行为与大多数集合的行为不同,更类似于 的行为。 + parameter 的类型无效。 + + + 删除集合中的所有 实例。 + + + 按引用检查集合中是否存在指定的 + 如果在集合中找到参数对象,则返回 true;否则返回 false。 + 要在集合中查找的 。 + parameter 参数为 null。 + + + 确定集合中是否存在具有指定名称的 + 如果在集合中找到具有指定名称的参数,则返回 true;否则为 false。 + 要在集合中查找的参数的名称。此名称不应包含“@”参数标记(它用在实体 SQL 语句中),只能为实际名称。 + name 参数为 null。 + + + 允许将集合中的参数复制到提供的数组中(从指定索引处的对象开始)。 + 要将参数复制到其中的数组。 + 数组中开始复制参数的位置的索引。 + + + 获取集合中当前存在的参数的数量。 + 集合中当前存在的 对象的数量。 + + + 返回枚举器实例,这些实例允许循环访问和遍历集合。 + 可用于循环访问集合的 对象。 + + + 获取供调用方按名称检索参数的索引器。 + 供调用方按名称检索参数的索引器。 + 项名称。 + + + 按引用从集合中移除 的实例(如果集合中存在该实例)。 + 如果从集合中找到并删除参数对象,则返回 true;否则为 false。 + 要从集合中移除的对象。 + parameter 参数为 null。 + + + 获取一个值,该值指示 是否为只读。 + 如果 是只读的,则为 true;否则为 false。 + + + 返回集合上的非类型化枚举器。 + 一个 实例。 + + + 此类在对象层实现非类型化的查询。 + + + 返回查询的命令文本。 + 一个字符串值。 + + + 获取与此对象查询相关联的对象上下文。 + 与此 实例关联的 + + + 获取或设置一个值,该值指示是否应缓存查询计划。 + 一个指示是否应缓存查询计划的值。 + + + 使用指定合并选项执行非类型化对象查询。 + 一个 ,它包含查询返回的实体对象的集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定合并选项异步执行非类型化对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定合并选项异步执行非类型化对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + 等待任务完成期间要观察的 。 + + + 返回有关查询的结果类型的信息。 + 一个 值,它包含有关查询的结果类型的信息。 + + + 获取或设置从查询返回的对象添加到对象上下文的方式。 + 查询 + + + 获取此对象查询的参数集合。 + 的参数集合。 + + + 查询是流式处理还是缓存 + + + 返回一个循环访问集合的枚举器。 + 可用于循环访问集合的 + + + 获取一个值,该值指示此查询是否包含查询对象的集合。 + 如果此查询包含查询对象的集合,则为 true;否则为 false。 + + + 返回 形式的集合用于数据绑定。 + 实体对象的 + + + 返回 ,被枚举时它将针对数据库执行给定的 SQL 查询。 + 查询结果。 + + + 获取此查询实例的结果元素类型。 + + + 获取描述此查询的表达式。对于使用 LINQ 生成器模式生成的查询,会返回完全 LINQ 表达式树;否则,返回包装此查询的常量表达式。请注意,默认表达式不进行缓存。这允许用户区分 LINQ 和 Entity-SQL 查询。 + + + 获取与此查询实例关联的 + + + 返回对数据源执行的命令。 + 一个 string,表示查询对数据源执行的命令。 + + + ObjectQuery 在对象层实现强类型化的查询。使用 Entity-SQL 字符串指定查询并可以通过调用由 ObjectQuery 声明的基于 Entity-SQL 的查询生成器方法来创建它们。 + 此 ObjectQuery 的结果类型 + + + 使用指定的实体 SQL 命令作为初始查询来创建新的 实例。 + 实体 SQL 查询。 + 对其执行查询的 。 + + + 使用指定的实体 SQL 命令(作为初始查询)和指定的合并选项创建新的 实例。 + 实体 SQL 查询。 + 对其执行查询的 。 + 指定此查询所检索的实体应如何与以前对同一 的查询所返回的实体合并。 + + + 将查询限制为唯一结果。 + 一个新的 实例,等效于应用了 SELECT DISTINCT 的原始实例。 + + + 此查询生成器方法创建其结果是此查询的所有结果(除了那些也是指定另一个查询结果的一部分之外)的新查询。 + 新的 ObjectQuery 实例。 + 表示要排除的结果的查询。 + 如果查询参数是 null。 + + + 使用指定的合并选项执行对象查询。 + 一个 ,它包含查询返回的实体对象的集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定的合并选项异步执行对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定的合并选项异步执行对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + 等待任务完成期间要观察的 。 + + + 按指定的条件对查询结果进行分组。 + 一个 类型的新 实例,等效于应用了 GROUP BY 的原始实例。 + 作为结果分组依据的键列。 + 用于定义投影的所选属性的列表。 + 此方法中使用的零个或多个参数。 + query 参数为 null 或空字符串,或 projection 参数为 null 或空字符串。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在查询结果中返回的相关对象的列表(以点分隔)。 + path 为 null。 + path 为 empty。 + + + 此查询生成器方法创建其结果同时包含在此查询和指定的另一查询的结果中的新查询。 + 新的 ObjectQuery 实例。 + 表示结果要与其相交的查询。 + 如果查询参数是 null。 + + + 获取或设置此对象查询的名称。 + 一个字符串值,它是此 的名称。 + + + 将查询限制为仅包括特定类型的结果。 + 一个新的 实例,等效于应用了 OFTYPE 的原始实例。 + 使用应用筛选器执行查询时, 的类型返回。 + 指定的类型无效。 + + + 按指定条件对查询结果进行排序。 + 一个新的 实例,等效于应用了 ORDER BY 的原始实例。 + 作为结果排序依据的键列。 + 此方法中使用的零个或多个参数。 + keys 或 parameters 参数为 null。 + key 为空字符串。 + + + 将查询结果限制为仅包含在指定投影中定义的属性。 + 一个 类型的新 实例,等效于应用了 SELECT 的原始实例。 + 用于定义投影的所选属性的列表。 + 此方法中使用的零个或多个参数。 + projection 为 null 或 parameters 为 null。 + projection 为空字符串。 + + + 将查询结果限制为仅包含投影中指定的属性。 + 一个类型与特定投影兼容的新 。返回的 等效于应用了 SELECT VALUE 的原始实例。 + 投影列表。 + 在分析时应在作用域内的一组可选查询参数。 + 方法返回的 的类型。 + projection 为 null 或 parameters 为 null。 + projection 为空字符串。 + + + 按指定条件对查询结果进行排序并跳过指定数目的结果。 + 一个新 实例,等效于同时应用了 ORDER BY 和 SKIP 的原始实例。 + 作为结果排序依据的键列。 + 要跳过的结果数。它可以是常量或参数引用。 + 在分析时应在作用域内的一组可选查询参数。 + 任何参数为 null。 + keys 为空字符串或 count 为空字符串。 + + + 返回 ,被枚举时它将针对数据库执行给定的 SQL 查询。 + 查询结果。 + + + 返回 ,被枚举时它将针对数据库执行给定的 SQL 查询。 + 查询结果。 + + + 将查询结果限制为指定的项数。 + 一个新的 实例,等效于应用了 TOP 的原始实例。 + 字符串形式的结果项数。 + 在分析时应在作用域内的一组可选查询参数。 + count 为 null。 + count 为空字符串。 + + + 此查询生成器方法创建其结果是此查询的所有结果加上另一个查询的所有结果但是不允许重复(即结果是唯一的)的新查询。 + 新的 ObjectQuery 实例。 + 表示要添加的结果的查询。 + 如果查询参数是 null。 + + + 此查询生成器方法创建其结果是此查询的所有结果加上另一个查询的所有结果且包括所有重复项(即结果不一定是唯一的)的新查询。 + 新的 ObjectQuery 实例。 + 表示要添加的结果的查询。 + 如果查询参数是 null。 + + + 将查询限制为包含与指定筛选条件匹配的结果。 + 一个新的 实例,等效于应用了 WHERE 的原始实例。 + 筛选谓词。 + 此方法中使用的零个或多个参数。 + predicate 为 null 或 parameters 为 null。 + predicate 为空字符串。 + + + 此类实现 IEnumerable 和 IDisposable。从 ObjectQuery.Execute 方法返回此类的实例。 + + + 仅当创建将重写具有模拟或伪造行为的成员的测试替身时,才使用此构造函数。将此构造函数用于其他目的可能导致意外的行为,包括但不限于引发 + + + 执行与释放 (free)、释放 (release) 或重置资源关联的任务。 + + + 释放对象结果使用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 在派生类中重写时,获取泛型 的类型。 + 泛型 的类型。 + + + 获取存储过程的下一个结果集。 + 枚举下一个结果集的值的 ObjectResult。如果没有其他值,或 ObjectResult 不是存储过程调用的结果,则为 Null。 + 元素的类型。 + + + 返回一个循环访问查询结果的枚举器。 + 一个循环访问查询结果的枚举器。 + + + IListSource.ContainsListCollection 实现。始终返回 false。 + + + 以数据绑定所用的格式返回结果。 + 实体对象的 + + + 返回一个循环访问查询结果的异步枚举器。 + 一个循环访问查询结果的异步枚举器。 + + + 此类表示 方法的结果。 + 结果的类型。 + + + 仅当创建将重写具有模拟或伪造行为的成员的测试替身时,才使用此构造函数。将此构造函数用于其他目的可能导致意外的行为,包括但不限于引发 + + + 释放由 占用的非托管资源,还可以释放托管资源。 + 如果为 true,则释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 获取 的类型。 + 一个 ,它是 的类型。 + + + 返回一个循环访问查询结果的枚举器。 + 一个循环访问查询结果的枚举器。 + + + 异步获取循环访问 的枚举器。 + 循环访问 的枚举器。 + + + 表示用于执行创建、读取、更新和删除操作的类型化实体集。 + 实体的类型。 + + + 将对象添加到当前实体集中的对象上下文。 + 要添加的对象。 + + + 将标量值从提供的对象复制到 中具有相同键的对象中。 + 已更新的对象。 + 其属性更新将应用于原始对象的已分离对象。currentEntity 的实体键必须与 中某个项的 属性相匹配。 + + + 属性设置为与所提供对象的属性值相匹配。 + 已更新的对象。 + 其属性更新将应用于原始对象的已分离对象。originalEntity 的实体键必须与 中某个项的 属性相匹配。 + + + 将对象或对象图附加到当前实体集中的对象上下文。 + 要附加的对象。 + + + 创建指定类型的实例。 + 所请求类型 T 的实例,或与类型 T 对应的代理类型的实例。 + 要返回的对象的类型。 + + + 创建一个新的实体类型对象。 + 新的实体类型对象,或与实体类型对应的代理类型的实例。 + + + 标记对象以备删除。 + 表示要删除的实体的对象。该对象可以为任何状态( 除外)。 + + + 从对象上下文移除对象。 + 要分离的对象。仅移除实体;如果存在任何由相同 跟踪的相关对象,则不会自动分离这些对象。 + + + 获取用此 实例表示的实体集的元数据。 + 一个 对象。 + + + 表示实体、实体存根或关系 + + + 接受当前值作为原始值。 + + + 设置项的当前值,使其与所提供对象的属性值相匹配。 + 具有要应用于对象的更新值的已分离对象。currentEntity 还可以是对象的实体键。 + + + 设置项的原始值,使其与所提供对象的属性值相匹配。 + 具有要应用于对象的原始值的已分离对象。originalEntity 还可以是对象的实体键。 + + + 将该项的状态更改为指定的 值。 + 要为该项的 属性设置的 值。 + + + 获取与此 关联的对象或关系的当前属性值。 + 一个 ,它包含与此 关联的对象或关系的当前值。 + + + 将实体标记为已删除。 + + + 获取实体对象。 + 实体对象。 + + + 获取实体键。 + 实体键。 + + + 获取该对象或关系的 + 用于对象或关系的 + + + 返回自上次调用 以来已更改的对象属性的名称。 + 一个 集合,包含字符串形式的名称。 + + + 获取与此 关联的对象的原始值的可更新版本。 + 对象数据的可更新原始值。 + + + 使用 DetectChanges 确定具有给定名称的属性的当前值与原始值是否不同。请注意这可能不同于正在标记为“已修改”的属性,因为尚未更改的属性仍可能标记为“已修改”。 + 如果属性已更改,则为 true;否则为 false。 + 属性的名称。 + + + 获取一个值,该值指示 是否表示一个关系。 + 如果 表示一个关系,则为 true;否则为 false。 + + + 获取 + + + + + 获取与此的对象或关系关联的原始值的只读版本。 + 关系集项或实体的原始值的只读版本。 + + + 拒绝自上次加载、附加或保存属性以来对具有给定名称的属性所做的任何更改,或接受更改。存储属性的原始值,且属性将不再标记为“已修改”。 + 要更改的属性的名称。 + + + 获取项所表示的对象的 实例。 + + 对象。 + + + 将对象或关系的状态设置为 modify。 + 如果状态不为“已修改”或“未更改” + + + 将指定属性标记为已修改。 + 属性的名称。 + 如果状态不为“已修改”或“未更改” + + + 获取 的状态。 + + 的状态。 + + + 用于报告复杂属性已更改。现在将在 EntityMemberChanging 期间缓存的属性值添加到 OriginalValues + 已更改的顶级实体属性的名称 + 包含已更改属性的复杂对象 + complexObject 上更改的属性的名称 + + + 用于报告将要更改复杂属性。在调用此方法时,缓存指定属性的当前值。 + 要更改的顶级实体属性的名称 + 包含要更改的属性的复杂对象 + complexObject 上要更改的属性的名称 + + + 用于报告标量实体属性已更改。现在将在 EntityMemberChanging 期间缓存的属性值添加到 OriginalValues + 要更改的实体属性的名称 + + + 用于报告将要更改标量实体属性。在调用此方法时,缓存指定属性的当前值。 + 要更改的实体属性的名称 + + + 从 ObjectStateEntry 返回 EntityState + + + 维护实体类型实例和关系实例的对象状态和标识管理。 + + + 初始化 类的新实例。 + 提供映射和元数据信息的 。 + + + 将特定对象的 状态更改为指定的 entityState。 + 所提供实体的 + 必须更改状态的对象。 + 对象的新状态。 + 当 entity 为 null 时。 + 当对象未分离且在状态管理器没有任何项时,或当您尝试将状态从任何其他 更改为 时,或状态为无效的 值时。 + + + 更改两个实体对象之间的指定关系的状态,其中的关系状态根据两个相关对象和导航属性的名称来指定。 + 已更改的关系的 + 位于关系一端的对象实例或源实体的 。 + 位于关系另一端的对象实例或目标实体的 。 + 源上可返回指定目标的导航属性的名称。 + 请求的所指定关系的 。 + 当 source 或 target 为 null 时。 + 当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当状态为无效的 值时。 + + + 更改两个实体对象之间的指定关系的状态,其中的关系状态根据两个相关对象和关系属性来指定。 + 已更改的关系的 + 位于关系一端的对象实例或源实体的 。 + 位于关系另一端的对象实例或目标实体的 。 + 关系的名称。 + 关系的目标端的角色名称。 + 请求的所指定关系的 。 + 当 source 或 target 为 null 时。 + 当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当状态为无效的 值时。 + + + 更改两个实体对象之间的指定关系的状态,根据两个相关对象和用于定义导航属性的 LINQ 表达式来指定关系。 + 已更改的关系的 + 位于关系一端的对象实例或源实体的 。 + 位于关系另一端的对象实例或目标实体的 。 + 一个 LINQ 表示式,用于选择返回指定 target 的 source 的导航属性。 + 请求的所指定关系的 。 + 源对象的实体类型。 + 当 source、target 或 selector 为 null 时。 + selector 格式不正确或无法返回导航属性。 + 当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当状态为无效的 值时。 + + + 返回具有给定状态的对象或关系的 对象的集合。 + 具有给定 对象的集合。 + 用于筛选返回的 对象的 。 + 当状态为 时。 + + + 返回具有指定键的对象或关系项的 + 给定 的对应 + + 。 + 当 key 为 null 时。 + 在状态管理器中找不到指定的 key 时。 + + 中不存在具有指定 的实体。 + + + 返回指定对象的 + 给定 的对应 + 检索到的 所属的 。 + + 中不存在具有指定 的实体。 + + + 返回指定对象所使用的 + 所指定对象的 + 要为其返回 的对象。 + 实体不实现 IEntityWithRelationships 且不由此 ObjectStateManager 跟踪 + + + 获取与此状态管理器关联的 + 与此 关联的 + + + 在从状态管理器中添加或移除实体时发生。 + + + 尝试检索具有指定 的对象或关系的对应 + 一个布尔值,如果给定的 有对应的 ,则为 true;否则为 false。 + 给定的 。 + 此方法返回时,包含给定 。此参数传递时未经初始化。 + 为 key 提供了一个 null(在 Visual Basic 中为 Nothing)值。 + + + 尝试检索指定的 的对应 + 一个布尔值,如果给定的对象有对应的 ,则为 true;否则为 false。 + 检索到的 所属的 。 + 此方法返回时,包含给定 。此参数传递时未经初始化。 + + + 返回指定对象所使用的 + 如果为提供的实体返回了 实例,则为 true;否则为 false。 + 要为其返回 的对象。 + 此方法返回时将包含实体的 。 + + + 从数据库检索实体时,实体各属性的原始值。 + + + 一个 DataContractResolver,它知道如何将为持久未知的类创建的代理类型解析为基类型。它与 DataContractSerializer 一起使用。 + + + 初始化 类的新实例。 + + + 在反序列化过程中,将任何 xsi:type 信息映射到持久性未知对象的实际类型。 + 返回 xsi:type 映射到的类型。如果找不到与 xsi:type 匹配的已知类型,则返回 null。 + 要映射的 xsi:type 信息。 + xsi:type 的命名空间。 + 已声明的类型。 + + 的一个实例。 + + + 在序列化过程中,将实际类型映射到 xsi:type 信息。 + 如果类型已解析,则为 true;否则为 false。 + 持久性未知对象的实际类型。 + 已声明的类型。 + + 的一个实例。 + 此方法返回时,包含 xsi:type 声明的列表。 + 此方法返回时,包含使用的命名空间的列表。 + + + 定义在从数据库刷新内存中数据时处理已修改属性的不同方法。 + + + 对于未修改的客户端对象,行为与 StoreWins 相同。对于已修改的客户端对象,使用存储值刷新原始值,保留客户端对象上的所有值。下次更新时,所有客户端更改单元将被视为“已修改”,需要更新。 + + + 丢弃客户端上的所有更改并使用存储值刷新值。更新客户端原始值以匹配存储值。 + + + 用于修改 ObjectContext.SaveChanges() 行为的标志 + + + 在保存更改后,调用 AcceptAllChangesAfterSave 方法,该方法会在 ObjectStateManager 中重置更改跟踪。 + + + 在保存更改之前,调用 DetectChanges 方法,使用 ObjectStateManager 中的数据同步附加到对象上下文的对象的属性值。 + + + 保存更改,不调用 DetectChanges 或 AcceptAllChangesAfterSave 方法。 + + + 这是表示在 ADO.NET 中成为某一实体所需的最小接口的接口。 + + + 初始化 类的新实例。 + + + 通知更改跟踪器,某个复杂对象的属性已更改。 + 已更改的属性的名称。 + property 为 null。 + + + 通知更改跟踪器,对复杂对象的属性更改挂起。 + 更改的属性的名称。 + property 为 null。 + + + 针对复杂属性的特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 初始化 类的新实例。 + + + 复杂类型的特性 + + + 初始化 类的新实例。 + + + 标识 Edm 基类的特性 + + + 初始化 类的新实例。 + + + 指示枚举类型的特性。 + + + 初始化 类的新实例。 + + + 指示给定的方法是 EDM 函数的代理。 + + + 创建新的 DbFunctionAttribute 实例。 + 特性化方法所表示的 EDM 函数的命名空间名称。 + 特性化方法所表示的 EDM 函数的函数名称。 + + + 映射到存储元素的属性的基特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 定义两个实体类型之间的基于概念性模型中关联的关系。 + + + 创建 类的实例。 + 此实体所参与的关联的命名空间名称。 + 此实体所参与的关系的名称。 + 关联一端的类型的角色名称。 + + 的值,指示在关联一端的重数,例如一重或多重。 + 关联一端的实体类型。 + 关联另一端的类型的角色名称。 + + 的值,指示在关联另一端的重数,例如一重或多重。 + 关联另一端的实体类型。 + + + 初始化 类的新实例。 + 此实体所参与的关联的命名空间名称。 + 此实体所参与的关系的名称。 + 关联一端的类型的角色名称。 + + 的值,指示在关联一端的重数,例如一重或多重。 + 关联一端的实体类型。 + 关联另一端的类型的角色名称。 + + 的值,指示在关联另一端的重数,例如一重或多重。 + 关联另一端的实体类型。 + 一个指示关系是否基于外键值的值。 + + + 获取一个布尔值,该值指示关系是否基于外键值。 + 如果关系基于外键值,则为 true;否则为 false。 + + + 关系的名称。 + 一个 ,表示此 定义的关系的名称。 + + + 关系的命名空间。 + 表示关系命名空间的 + + + 关系一端的重数。 + 指示重数的 值。 + + + 关系一端的角色名称。 + 表示角色名称的 + + + 关系一端的实体类型。 + 表示关联此端对象类型的 + + + 关系另一端的重数。 + 指示重数的 值。 + + + 关系另一端的角色名称。 + 表示角色名称的 + + + 关系另一端的实体类型。 + 表示关联另一端对象类型的 + + + 标识为 RelationshipSet 定义的端的特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 初始化 类的新实例。 + 关系属性的命名空间名称。 + 关系的名称。关系名称不由命名空间限定。 + 关系另一端的角色名称。 + + + 获取非限定的关系名称。 + 关系名。 + + + 导航属性的命名空间名称。 + 表示命名空间名称的 + + + 获取关系另一端的角色名称。 + 目标角色名称由在概念性模型中定义此关系的关联中的另一个 End 元素的 Role 属性指定。有关更多信息,请参见“关联 (EDM)”。 + + + IEntity 中标量属性的特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 初始化 类的新实例。 + + + 获取或设置一个值,该值指示属性是否为实体键的一部分。 + 一个指示属性是否为实体键的一部分的值。 + + + 获取或设置一个值,该值指示属性是否可以具有 null 值。 + 一个值,该值指示属性是否可以具有 null 值。 + + + 静态类型的特性 + + + 初始化 类的新实例。 + + + 使用对程序集引用的每个模型都唯一的值初始化 类的新实例。 + 一个字符串,表示程序集中模型的唯一 GUID 值。 + + + 程式化类型的基特性 + + + 概念性架构中类型的名称,该类型映射到此属性所应用于的类。 + 表示名称的 + + + 概念性架构中映射到此类型的实体对象类型或复杂类型的命名空间名称。 + 表示命名空间名称的 + + + 对某一特定 EDM 构造进行建模的实体(可以是某一特定类型的所有实体或者是参与某一特定关系的实体)的集合。 + 此集合中实体的类型。 + + + 初始化 类的新实例。 + + + 将对象添加到集合。 + 添加到集合的对象。entity 必须实现 。 + entity 为 null。 + + + 定义对象上下文中对象和相关对象集合之间的关系。 + 对象上下文中与源对象相关的对象集合。 + entities 集合为 null。 + 源对象或 entities 集合中的对象为 null 或者不处于 状态。-或-关系不能基于 EDM 元数据定义。这会在概念性架构中的关联不支持两种类型间的关系时发生。 + + + 定义对象上下文中两个附加对象之间的关系。 + 附加的对象。 + 当 entity 为 null 时。 + 当 entity 无法与源对象关联时。这会在概念性架构中的关联不支持两种类型间的关系时发生。-或-当对象为 null 或不处于 状态时。 + + + 从集合中移除所有实体。 + + + 确定特定对象是否存在于集合中。 + 如果在 中找到该对象,则为 true;否则为 false。 + 要在 中定位的对象。 + + + 将集合中的所有内容复制到数组,从目标数组的指定索引处开始。 + 要复制到的数组。 + 数组中从零开始的索引,在此处开始复制。 + + + 获取集合中包含的对象数。 + + 中包含的元素数。 + + + 返回一个对象查询,执行该查询时返回的对象集合与当前集合包含的对象相同。 + 表示实体集合的 + 当对象处于 状态时,或当对象处于 状态且 不为 时。 + + + 返回一个枚举器,用于循环访问集合中的对象。 + 一个 ,循环访问 缓存的值集。 + + + 获取一个值,指示 是否是只读的。 + 始终返回 false。 + + + 使用指定的合并选项将相关对象加载到集合中。 + 指定此集合中的对象应如何与从以前针对相同 的查询中返回的对象合并。 + + + 使用默认合并选项异步将一个或多个相关实体加载到相关端中。 + 表示异步操作的任务。 + 合并选项。 + 等待任务完成期间要观察的 CancellationToken。 + + + 在内部使用,用于反序列化实体对象。 + 流上下文。 + + + 在内部使用,用于序列化实体对象。 + 流上下文。 + + + 从集合移除对象,并标记要删除的关系。 + 如果成功移除该项,则为 true;否则为 false。 + 要从集合中移除的对象。 + 实体对象为 null。 + 实体对象未附加到相同的对象上下文,或者,实体对象没有有效的关系管理器。 + + + 返回一个枚举器,用于循环访问 缓存的值集。 + 一个 ,循环访问 缓存的值集。 + + + IListSource.ContainsListCollection 实现。始终返回 false。这意味着我们返回的 IList 是包含我们的实际数据的 IList,而不是集合的列表。 + + + 返回 形式的集合用于数据绑定。 + 实体对象的 + + + 这是所有描述的 EntityObject 类的基类。 + + + 初始化 类的新实例。 + + + 获取或设置此对象的键。 + 此对象的 + + + 获取对象的实体状态。 + 此对象的 + + + 通知更改跟踪器,属性已更改。 + 已更改的属性的名称。 + property 为 null。 + + + 通知更改跟踪器,属性更改挂起。 + 更改的属性的名称。 + property 为 null。 + + + 由 ObjectStateManager 用来将此 EntityObject 附加到缓存或者分离这两者。 + 对包含此实体的 ObjectStateEntry 的引用 + + + 返回惰式创建的关系导航属性对象、集合和 ref 的容器。 + + + 对多重性为 1 的关系端进行建模。 + + + 返回相关对象的键。 + 一个 ,表示相关对象的键。 + + + 对多重性为 1 的关系端进行建模。 + 要引用的实体类型。 + + + 创建 的新实例。 + + + 在对象上下文中创建两个对象之间的多对一或一对一关系。 + 附加的对象。 + 当 entity 为 null 时。 + 当 entity 无法与当前相关端关联时。这会在概念性架构中的关联不支持两种类型间的关系时发生。 + + + 创建一个返回相关对象的等效对象查询。 + 一个 ,其返回相关对象。 + 当对象处于 状态时,或当对象处于 状态且 不为 时。 + + + 使用指定的合并选项为此 加载相关对象。 + 指定当 中已存在该对象时,应如何返回它。 + + 的源为 null;或一个查询返回多个相关端;或一个查询返回零个相关端,但应返回一个相关端。 + + + 使用默认合并选项异步将一个或多个相关实体加载到相关端中。 + 已加载到相关端的相关实体。 + 合并选项。 + 等待任务完成期间要观察的 CancellationToken。 + + + 此方法在内部使用,用于序列化相关实体对象。 + 序列化的流。 + + + 此方法在内部使用,用于序列化相关实体对象。 + 序列化的流。 + + + 获取或设置此 返回的相关对象。 + 返回的对象。 + + + 此接口由更改跟踪器实现并且由数据类用来报告更改 + + + 通知更改跟踪器,某个复杂类型的属性已更改。 + 已更改的实体类型的复杂属性的名称。 + 包含已更改属性的复杂类型。 + 复杂类型上更改的属性的名称。 + + + 通知更改跟踪器,复杂属性更改挂起。 + 要更改的顶级实体属性的名称。 + 包含要更改的属性的复杂类型。 + 复杂类型上要更改的属性的名称。 + + + 通知更改跟踪器,某个实体类型的属性已更改。 + 已更改的属性的名称。 + + + 通知更改跟踪器即将更改某个实体类型的属性。 + 要更改的属性的名称。 + + + 获取所跟踪对象的当前状态。 + 一个 ,它是所跟踪对象的状态。有关更多信息,请参见“标识解析、状态管理和更改跟踪”和“在 POCO 实体中跟踪更改”。 + + + 数据类必须实现以便由更改跟踪器进行管理的最小接口。 + + + 获取或设置用于报告更改的 + 用于报告更改的 。 + + + 定义包含键的实体的接口。 + + + 为实现此接口的实体类型的实例获取或设置 + 实现此接口的实体类型实例的 + + + 在公开关系时数据类必须实现的接口 + + + 返回关系管理器,该管理器管理实体类型的实例的关系。 + 此实体的 + + + 表示关系的一端。 + + + 将对象添加到相关端。 + 添加到集合的对象。entity 必须实现 。 + + + 将对象添加到相关端。 + 添加到集合的对象。 + + + 定义两个附加对象之间的关系。 + 附加的对象。entity 必须实现 。 + + + 定义两个附加对象之间的关系。 + 附加的对象。 + + + 返回一个 ,它表示属于相关端的对象。 + 一个 ,它表示属于相关端的对象。 + + + 返回一个 ,它循环访问相关对象的集合。 + 一个 ,它循环访问相关对象的集合。 + + + 获取或设置一个值,该值指示是否已从数据库加载实体(对于 )或集合中的所有实体(对于 )。 + 如果加载所有相关实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 使用默认合并选项将一个或多个相关对象加载到此相关端中。 + + + 使用指定合并选项将一个或多个相关对象加载到相关端中。 + 将对象合并到现有 时使用的 。 + + + 使用指定合并选项将一个或多个相关对象异步加载到相关端中。 + 表示异步操作的任务。 + 将对象合并到现有 时使用的 。 + 等待任务完成期间要观察的 。 + + + 使用默认合并选项将一个或多个相关对象异步加载到此相关端中。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取此相关端所参与的关系的名称。 + 所参与的关系的名称。关系名称不由命名空间限定。 + + + 返回对相关端的元数据的引用。 + 包含关系一端的元数据的 对象。 + + + 从相关端的对象的集合中移除一个对象。 + 如果 entity 已成功删除,则为 true;如果 entity 不是 的一部分,则为 false。 + 要从集合中移除的对象。entity 必须实现 。 + + + 从相关端的对象的集合中移除一个对象。 + 如果 entity 已成功删除,则为 true;如果 entity 不是 的一部分,则为 false。 + 要从集合中移除的对象。 + + + 获取关系的源端的角色名称。 + 关系的源端的角色名称。 + + + 获取关系的目标端的角色名称。 + 关系的目标端的角色名称。 + + + EntityCollection 和 EntityReference 的基类 + + + 对相关端进行更改时发生。 + + + 返回一个 ,它循环访问相关对象的集合。 + 一个 ,它循环访问相关对象的集合。 + + + 获取一个值,该值指示是否已加载所有相关对象。 + 如果相关端包含数据库中的所有相关对象,则为 true;否则为 false。 + + + 使用默认合并选项将一个或多个相关对象加载到相关端中。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 使用指定合并选项从相关端加载一个或多个对象。 + 将对象合并到现有 时使用的 。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 使用指定合并选项从相关端异步加载一个或多个对象。 + 表示异步操作的任务。 + 将对象合并到现有 时使用的 。 + 等待任务完成期间要观察的 。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 使用默认合并选项将一个或多个相关对象异步加载到相关端中。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 在内部使用,用于反序列化实体对象及 实例。 + 序列化的流。 + + + 获取此相关端所参与的关系的名称。 + 所参与的关系的名称。关系名称不由命名空间限定。 + + + 获取对相关端的元数据的引用。 + 包含关系一端的元数据的 对象。 + + + 获取关系的源端的角色名称。 + 表示角色名称的 + + + 将实体添加到相关端。此方法与 Add(object) 的工作方式完全相同。保留此方法是为了与以前版本的 IRelatedEnd 向后兼容。 + 要添加到相关端的实体实例 + + + 将实体添加到相关端。如果所有者附加到某一缓存,则所有连接端都添加到该对象缓存,并且其对应关系也添加到 ObjectStateManager。关系的 RelatedEnd 也是固定的。 + 要添加到相关端的实体实例 + + + 将实体附加到相关端。此方法与 Attach(object) 的工作方式完全相同。保留此方法是为了与以前版本的 IRelatedEnd 向后兼容。 + 要附加到相关端的实体 + 为 null 时引发。 + 在无法通过当前关系端与实体相关时引发。 + + + 将实体附加到相关端。如果相关端已经填充或部分填充,则此操作将合并现有实体和给定实体。不假定给定实体为相关实体的完整集。所有者和所有传入的实体必须处于 Unchanged 或 Modified 状态。仅当状态管理器已在跟踪关系实例时,才允许已删除的元素。 + 要附加到相关端的实体 + 为 null 时引发。 + 在无法通过当前关系端与实体相关时引发。 + + + 返回一个 ,它表示属于相关端的对象。 + 一个 ,它表示属于相关端的对象。 + + + 从相关端删除实体。此方法与 Remove(object) 的工作方式完全相同。保留此方法是为了与以前版本的 IRelatedEnd 向后兼容。 + 如果实体已成功删除,则返回 true;如果实体不是 RelatedEnd 的一部分,则返回 false。 + 要从相关端中删除的实体实例 + + + 从相关端删除实体。如果所有者附加到缓存,则将关系标记为待删除;如果关系是复合关系,也将实体标记为待删除。 + 如果实体已成功删除,则返回 true;如果实体不是 RelatedEnd 的一部分,则返回 false。 + 要从相关端中删除的实体实例 + + + 获取关系的目标端的角色名称。 + 表示角色名称的 + + + 标识关系的种类 + + + 该关系为关联 + + + 惰式创建的关系导航属性对象(集合和 ref)的容器。 + + + 创建一个新的 对象。 + 请求的 + 对调用此方法的实体的引用。 + + + 返回关系管理器管理的所有相关端的枚举。 + 实现 的对象的 。如果尚未填充关系,则返回空枚举。 + + + 获取具有指定关系名称和目标角色名称的相关对象的 + 相关对象的 + 要浏览的关系的名称。关系名称不由命名空间限定。 + 要浏览的目标角色的名称。指示在关系中浏览的方向。 + 返回的 的类型。 + 指定角色返回 而不是 + + + 为关系中的指定目标角色返回正确类型的 + 已检索的表示 + 在其中定义 targetRoleName 的关系的名称。关系名称不由命名空间限定。 + 用于检索 relationshipName 的另一端的目标角色. + relationshipName 或 targetRoleName 为 null。 + 源类型不匹配所有者类型。 + targetRoleName 无效或无法在元数据中找到关系类型。 + + + 通过使用关系名称和目标角色名称的指定组合,获取相关对象的 + 相关对象的 + 要浏览的关系的名称。关系名称不由命名空间限定。 + 要浏览的目标角色的名称。指示在关系中浏览的方向。 + 返回的 的类型。 + 指定角色返回 而不是 + + + 采用通过默认构造函数创建的现有 EntityCollection,并且使用提供的关系和目标角色名称初始化它。此方法设计为仅在反序列化期间使用;如果已初始化提供的 EntityCollection 或者关系管理器已附加到某一 ObjectContext,此方法将引发异常。 + 关系名。 + 目标角色名。 + 现有 EntityCollection。 + targetRoleName 表示的实体的类型 + + + 采用通过默认构造函数创建的现有 EntityReference,并且使用提供的关系和目标角色名称初始化它。此方法设计为仅在反序列化期间使用;并且在以下情况下此方法将引发异常:已初始化提供的 EntityReference、关系管理器已包含具有此名称和目标角色的关系或者关系管理器已附加到某一 ObjectContext。 + 关系名。 + 相关端的角色名称。 + 要初始化的 。 + 正在初始化的 的类型。 + 当提供的 已初始化时。-或-当关系管理器已附加到某一 时,或当关系管理器已包含具有此名称和目标角色的关系时。 + + + 在内部使用,用于反序列化实体对象及 实例。 + 序列化的流。 + + + 由对象服务调用,用来准备 以序列化关系进行二进制序列化。 + 说明给定序列化流的源和目标,并提供另一个调用方定义的上下文。 + + + 此类包含某一日期对象所需的公共方法。 + + + 初始化 类的新实例。 + + + 确定指定的字节数组是否包含完全相同的值。 + 如果两个数组具有相同长度且包含相同字节值,或两个数组都为 null,则为 true;否则为 false。 + 要比较的第一个字节数组值。 + 要比较的第二个字节数组。 + + + 返回数据源支持的最小日期时间值。 + 一个 值,表示数据源支持的最小日期时间值。 + + + 用于更改跟踪的公共常量名称。通过提供此定义可允许用户使用此常量,而不是对字符串进行硬编码。这有助于确保属性名称正确,并且允许在我们在查找此特定字符串的位置更快地进行比较。用户仍可以直接使用区分大小写的字符串,而不是常量,只是在比较时速度稍慢。在名称周围包括短划线 (-) 字符将确保这将不会与某一真实的数据属性冲突,因为 -EntityKey- 不是有效的标识符名称 + + + 返回当前字节值的副本。 + 当前 值的副本。 + 当前字节数组值。 + + + 返回指定属性的复杂类型。 + 属性的复杂类型对象。 + 从复杂对象继承的复杂对象。 + 复杂属性的名称,该复杂属性为复杂对象。 + 指示类型是否允许 Null 值。 + 指示类型是否已初始化。 + 正在请求的复杂对象的类型。 + + + 引发 事件。 + 已更改的属性的名称。 + + + 引发 事件。 + 更改的属性的名称。 + + + 属性已更改的通知。 + + + 属性将要更改的通知。 + + + 引发用于报告属性已更改的事件。 + 已更改的属性的名称。 + + + 引发用于报告属性更改挂起的事件。 + 更改的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + 布尔值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + 布尔值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 设置的 值。 + 正在验证的值。 + + + 确保正在为属性设置的 值有效。 + 一个已设置的 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + 正在设置的值。 + 指示属性是否可为 null。 + + + 确保正在为属性设置的 值有效。 + 正在验证的 值。 + 传入属性 setter 中的值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 对于不可为 null 的值如果值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 要检查的 值。 + 指示此属性是否允许为 null 的标志。 + 对于不可以为 null 的属性,该值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 待检查的 值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 对于不可以为 null 的属性,该值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 待检查的 值。 + 指示此属性是否允许为 null 的标志。 + 对于不可以为 null 的属性,该值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 要检查的 值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 对于不可以为 null 的属性,该值为 null。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保要为属性设置的 UInt16 值有效。 + 正在设置的可以为 null 的 UInt16 值。 + 可以为 null 的 UInt16 值。 + + + 确保要为属性设置的 UInt16 值有效。 + 正在设置的可以为 null 的 UInt16 值。 + 可以为 null 的 UInt16 值。 + 要验证的属性的名称。 + + + 确保要为属性设置的 UInt32 值有效。 + 正在设置的可以为 null 的 UInt32 值。 + 可以为 null 的 UInt32 值。 + + + 确保要为属性设置的 UInt32 值有效。 + 正在设置的可以为 null 的 UInt32 值。 + 可以为 null 的 UInt32 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 UInt64 值。 + 可以为 null 的 UInt64 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 UInt64 值。 + 可以为 null 的 UInt64 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保要为属性设置的单精度值有效。 + 正在设置的 值。 + + 值。 + + + 确保要为属性设置的单精度值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 验证的 值。 + 待检查的字符串值。 + 指示此属性是否允许为 null 的标志。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 经过验证的属性。 + 待检查的字符串值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 该字符串值对于不可以为 null 的字符串为 null。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 设置指定属性的复杂对象。 + 从复杂对象派生的复杂类型。 + 属性的原始复杂对象(如果有)。 + 正在设置的复杂对象。 + 正在设置为复杂对象的复杂属性。 + 被替换的对象的类型。 + + + 检验复杂对象是否不为 null。 + 正在验证的复杂对象。 + 正在检验的复杂对象。 + 与 complexObject 关联的父对象上的复杂属性。 + 正在验证的复杂对象的类型。 + + + 在提交 期间出错时引发的异常。 + + + 使用默认值初始化 的新实例。 + + + 使用序列化数据初始化 类的新实例。 + 序列化或反序列化对象时所需的数据。 + 指定序列化流的源和目标的说明。 + + + 使用错误消息初始化 的新实例。 + 异常消息。 + + + 使用错误消息和内部异常初始化 的新实例。 + 异常消息。 + 内部异常。 + + + 表示事务处理程序,该程序允许在事务提交期间通过在数据库中存储事务跟踪信息,来从连接故障中正常恢复。需要使用 注册它。 + + + 使用默认 初始化 类的新实例。 + + + 初始化 类的新实例。 + 事务上下文工厂。 + + + 将新事务的跟踪信息存储到同一事务中的数据库。 + 开始事务的连接。 + 与调用关联的上下文信息。 + + + 生成数据库初始化脚本。 + 数据库初始化脚本。 + + + 删除所有事务历史记录。 + + + 异步删除所有事务历史记录。 + 表示异步操作的任务。 + + + 异步删除所有事务历史记录。 + 表示异步操作的任务。 + 取消标记。 + + + 如果引发了异常,请检查此事务的数据库,如果找不到,则会再次引发异常。否则将提交标记为成功并为将删除的事务信息进行排队。 + 已提交的事务。 + 与调用关联的上下文信息。 + + + 释放此事务对象占用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 停止跟踪已处理的事务。 + 已释放的事务。 + 与调用关联的上下文信息。 + + + 获取与 关联的 (如果存在);否则返回 null。 + 关联的 + 上下文。 + + + 获取与 关联的 (如果存在);否则返回 null。 + 关联的 + 上下文。 + + + 初始化实例的属性。 + 上下文。 + + + 初始化实例的属性。 + 上下文。 + 连接。 + + + 将指定事务添加到可从数据库中删除的事务列表 + 要从数据库中删除的事务。 + + + 删除标记为删除的事务。 + + + 如果标记为删除的事务的数目超出 ,则删除这些事务。 + 如果即使其数量未超出 仍然删除所有旧事务,则为 true;否则为 false。 + 如果使用关联执行来执行操作,则为 true;否则为 false。 + + + 异步删除标记为删除的事务。 + 表示异步操作的任务。 + + + 如果标记为删除的事务的数目超出 ,则删除这些事务。 + 表示异步操作的任务。 + 如果即使其数量未超出 仍然删除所有旧事务,则为 true;否则为 false。 + 如果使用关联执行来执行操作,则为 true;否则为 false。 + 取消标记。 + + + 异步删除标记为删除的事务。 + 表示异步操作的任务。 + 取消标记。 + + + 在清除事务日志之前获取要在上下文中执行的事务数。默认值为 20。 + 在清除事务日志之前要在上下文中执行的事务数。 + + + 停止跟踪回滚的事务。 + 已回滚的事务。 + 与调用关联的上下文信息。 + + + 获取事务上下文。 + 事务上下文。 + + + 的 ChangeTracker 方法返回以提供对与实体的更改跟踪相关的上下文的功能的访问。 + + + 检测对 POCO 实体的属性和关系所做的更改。请注意,某些类型的实体(如更改跟踪代理和派生自 的实体)会自动报告更改,并且这些类型的实体通常不需要调用 DetectChanges。另请注意,通常, 的许多方法及其相关类会自动调用 DetectChanges,这样一来,便很少需要显式调用此方法。但通常出于性能原因,可能需要使用 中的 AutoDetectChangesEnabled 标志来关闭对 DetectChanges 的自动调用。 + + + 获取此上下文跟踪的所有实体的 对象。 + 项。 + + + 获取此上下文跟踪的给定类型的所有实体的 对象。 + 项。 + 实体的类型。 + + + 指定 是否与指定的对象相同。 + 如果 与指定的对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与 关联的哈希代码。 + 关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 检查 是否正在跟踪任何新建、已删除或有更改的实体或关系,这些实体或关系将在调用 时,发送到数据库。 + 如果基础 有更改,则为 true;否则为 false。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 表示非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 集合元素的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 获取此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载此集合的所有实体。 + 如果已加载所有相关实体或 IsLoaded 已显示设置为 true,则为 true;否则为 false。 + + + 从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回将用于从数据库加载此集合的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作,例如,计算数据库中的集合中的实体数,而不实际加载这些实体。 + 针对集合的查询。 + + + 此类的实例从 的 Collection 方法返回,并且允许对实体的集合导航属性执行各种操作(如加载)。 + 此属性所属的实体的类型。 + 实体集合中的元素的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载此集合的所有实体。 + 如果加载所有相关实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回由此对象表示的导航属性的非泛型 类的新实例。 + 非泛型版本。 + 表示导航属性的对象。 + + + 返回将用于从数据库加载此集合的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作,例如,计算数据库中的集合中的实体数,而不实际加载这些实体。 + 针对集合的查询。 + + + 实体数据模型 (EDM) 模型的不可变表示形式,该模型可用于创建 ,也可将该模型传递给 的构造函数。为了提高性能,应缓存和重用此类型的实例以构造上下文。 + + + 创建 ObjectContext 的实例或派生自 ObjectContext 的类的实例。请注意,可使用适当的 DbContext 构造函数来改为创建 DbContext 的实例。如果使用派生的 ObjectContext,则它必须具有带单个 EntityConnection 参数的公共构造函数。传递的连接由创建的 ObjectContext 使用,但不属于上下文。在释放上下文后,调用方必须释放连接。 + 上下文。 + 供上下文使用的数据库的现有连接。 + 要创建的上下文的类型。 + + + 非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 复杂属性的类型。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 此类的实例从 的 ComplexProperty 方法返回,并允许访问复杂属性的状态。 + 此属性所属的实体的类型。 + 属性的类型。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 表示嵌套属性的表达式。 + 嵌套属性的类型。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + 嵌套属性的类型。 + + + 返回由此对象表示的属性的非泛型 类的新实例。 + 非泛型版本。 + 表示属性的对象。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 表示嵌套属性的表达式。 + 嵌套属性的类型。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + 嵌套属性的类型。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 表示有关数据库连接的信息。 + + + 初始化表示应用程序配置文件中指定的连接的 类的新实例。 + 应用程序配置中的连接字符串的名称。 + + + 初始化基于连接字符串的 类的新实例。 + 用于连接的连接字符串。 + 用于连接的提供程序的名称。将“System.Data.SqlClient”用于 SQL Server。 + + + 确定当前 类型是否等于提供的对象类型。 + 如果当前 类型等于指定的对象类型,则为 true;否则为 false。 + 要与当前 对象进行比较的对象。 + + + 生成表示当前连接的值。 + 表示当前连接的值。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 对象转换为字符串。 + 当前驱动器。 + + + 描述与 关联的数据库连接字符串的来源。 + + + 该连接字符串是从外部配置中进行读取的。 + + + 该连接字符串是按约定创建的。 + + + 该连接字符串是由提供给 DbContextInfo 的连接信息重写的。 + + + 该连接字符串是在运行时显式指定的。 + + + 的 Configuration 方法返回以提供对上下文的配置选项的访问。 + + + 获取或设置一个值,该值指示是否通过 和相关类的方法自动调用 方法。默认值为 true。 + 如果应自动调用,则为 true;否则为 false。 + + + 获取或设置某值,该值确定是否应在事务中始终执行 SQL 函数和命令。 + 默认事务行为。 + + + 指定配置是否与指定的对象相同。 + 如果配置与指定的对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与配置关联的哈希代码。 + 与配置关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 获取或设置一个值,该值指示是否启用针对公开为导航属性的关系的延迟加载。延迟加载在默认情况下处于启用状态。 + 如果启用延迟加载,则为 true;否则为 false。 + + + 获取或设置一个值,该值指示框架在创建实体类型的实例时是否会创建动态生成的代理类的实例。请注意,即使使用此标记启用了代理创建,也只会为满足代理设置要求的实体类型创建代理实例。默认情况下启用代理创建。 + 如果启用了代理创建,则为 true;否则为 false。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 获取或设置一个值,该值指示当比较两个操作数,而它们都可能为 null 时,是否展示数据库 null 语义。默认值为 false。例如:如果 UseDatabaseNullSemantics 为 true,则 (operand1 == operand2) 将转换为 (operand1 = operand2);如果 UseDatabaseNullSemantics 为 false,则将转换为 (((operand1 = operand2) AND (NOT (operand1 IS NULL OR operand2 IS NULL))) OR ((operand1 IS NULL) AND (operand2 IS NULL)))。 + 如果启用数据库 null 比较行为,则为 true;否则为 false。 + + + 获取或设置一个值,该值指示在调用 时,是否应自动验证所跟踪的实体。默认值为 true。 + + + 提供有关给定 类型的运行时信息。 + + + 使用指定上下文类型初始化 类的新实例。 + 具体 类型。 + + + 使用指定上下文类型和配置文件初始化 类的新实例。 + 具体 类型。 + 表示配置文件的对象。 + + + 使用指定连接信息、上下文类型和配置文件初始化 类的新实例。 + 派生自 的类型。 + 表示配置文件的对象。 + 要使用的数据库的连接信息。 + + + 使用指定上下文类型、配置文件和提供程序信息初始化 类的新实例。 + 派生自 的类型。 + 表示配置文件的对象。 + 指定要面向的基础 ADO.NET 提供程序的 。 + + + 通过使用指定上下文类型和连接字符串的设置来初始化 类。 + 派生自 的类型。 + 连接字符串的集合。 + + + 使用指定上下文类型和连接信息初始化 类的新实例。 + 派生自 的类型。 + 要使用的数据库的连接信息。 + + + 使用指定上下文类型和提供程序信息初始化 类的新实例。 + 派生自 的类型。 + 指定要面向的基础 ADO.NET 提供程序的 。 + + + 获取基础 类型使用的连接的 ADO.NET 提供程序名称。 + 基础 类型使用的连接的 ADO.NET 提供程序名称。 + + + 获取基础 类型使用的连接字符串。 + 基础 类型使用的连接字符串。 + + + 获取基础 类型使用的连接字符串名称。 + 基础 类型使用的连接字符串名称。 + + + 获取基础 类型使用的连接字符串的来源。 + 基础 类型使用的连接字符串的来源。 + + + 获取具体 类型。 + 具体 类型。 + + + 创建 对象的实例。 + 已创建的实例。 + + + 获取是否可创建基础 类型。 + 如果基础 类型可创建,则为 true;否则为 false。 + + + 获取或设置在 OnModelCreating 已在上下文中运行后将对 DbModelBuilder 执行的操作。 + 在 OnModelCreating 已在上下文中运行后将对 DbModelBuilder 执行的操作。 + + + 非泛型版本的 类。 + + + 返回由此对象表示的跟踪实体的给定泛型类型的泛型 类的新实例。请注意跟踪实体的类型必须与泛型类型兼容,否则将引发异常。 + 泛型版本。 + 实体的类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 复杂属性的名称。 + + + 获取由此对象表示的跟踪实体的当前属性值。 + 当前值。 + + + 获取实体。 + 实体。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 在数据库中查询跟踪实体的值的副本,因为当前它们位于数据库中。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + 等待任务完成期间要观察的 。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码,适合在哈希算法和类似哈希表的数据结构中使用。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此 实例并返回验证结果。 + 实体验证结果。如果重写 方法,则可能为 Null。 + + + 获取表示实体成员的对象。返回的对象的运行时类型将随要求的成员类型的不同而不同。当前支持的成员类型及其返回类型为:引用导航属性:.集合导航属性:.基元/标量属性:.复杂属性: + 表示成员的对象。 + 成员名。 + + + 获取由此对象表示的跟踪实体的原始属性值。原始值通常是实体的属性值,就像上次从数据库查询这些值一样。 + 原始值。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 属性的名称。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取或设置实体的状态。 + 状态。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 此类的实例提供对有关由 跟踪的实体的信息和控制的访问权。使用上下文的 Entity 或 Entities 方法来获取此类型的对象。 + 实体的类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 表示导航属性的表达式。 + 集合中的元素类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + 集合中的元素类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 表示复杂属性的表达式。 + 复杂属性的类型。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 复杂属性的名称。 + 复杂属性的类型。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 复杂属性的名称。 + + + 获取由此对象表示的跟踪实体的当前属性值。 + 当前值。 + + + 获取实体。 + 实体。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 在数据库中查询跟踪实体的值的副本,因为当前它们位于数据库中。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + 等待任务完成期间要观察的 。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码,适合在哈希算法和类似哈希表的数据结构中使用。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此 实例并返回验证结果。 + 实体验证结果。如果重写 方法,则可能为 Null。 + + + 获取表示实体成员的对象。返回的对象的运行时类型将随要求的成员类型的不同而不同。当前支持的成员类型及其返回类型为:引用导航属性:.集合导航属性:.基元/标量属性:.复杂属性: + 表示成员的对象。 + 成员名。 + 成员的类型。 + + + 获取表示实体成员的对象。返回的对象的运行时类型将随要求的成员类型的不同而不同。当前支持的成员类型及其返回类型为:引用导航属性:.集合导航属性:.基元/标量属性:.复杂属性: + 表示成员的对象。 + 成员名。 + + + 返回此对象所表示跟踪实体的非泛型 类的新实例。 + 非泛型版本。 + 表示跟踪实体的对象。 + + + 获取由此对象表示的跟踪实体的原始属性值。原始值通常是实体的属性值,就像上次从数据库查询这些值一样。 + 原始值。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 表示属性的表达式。 + 属性的类型。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 属性的名称。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 属性的名称。 + 属性的类型。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 表示导航属性的表达式。 + 属性的类型。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + 属性的类型。 + + + 从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取或设置实体的状态。 + 状态。 + + + 返回数据库实体值的字符串表示形式。 + 数据库实体值的字符串表示形式。 + + + 为在两次重试之间使用以指数形式增长的延迟时间的不可靠操作和瞬时条件提供重试机制的基实现。 + + + 初始化 类的新实例。 + + + 使用指定的重试次数限制值和两次重试之间的延迟时间初始化 类的新实例。 + 最大重试次数。 + 两次重试之间的最大延迟时间(毫秒)。 + + + 在指定操作满足当前重试策略时重复执行此操作。 + 一个表示不返回任何结果的可执行操作的委托。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 在指定操作满足当前重试策略时重复执行此操作。 + 操作的结果。 + 一个表示返回 类型的结果的可执行操作的委托。 + 从可执行操作预期获得的结果类型。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 在指定异步操作满足当前重试策略时重复执行此操作。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回 类型的已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + 返回的 的结果类型。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 在指定异步操作满足当前重试策略时重复执行此操作。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 确定是否应重试操作以及在下次重试前的延迟时间。 + 如果应重试操作,则返回一个延迟值,它指示在下一次执行尝试前要等待多长时间;否则返回 null。 + 在最后一次执行尝试期间引发的异常。 + + + 获取一个值,该值指示此 在失败后是否可能重试执行。 + 如果 在失败后可能重试执行,则为 true;否则为 false。 + + + 确定指定的异常是否表示可以通过重试解决的瞬态失败。 + 如果指定异常视为瞬态的,则为 true;否则为 false。 + 要验证的异常对象。 + + + 只要它是 ,就以递归方式从 获取 InnerException,并将其传递给 + + 的结果。 + 要取消包装的异常。 + 一个将使用未包装的异常调用的委托。 + 未包装异常的类型。 + + + 这是一个抽象基类,用于表示实体的标量/复杂属性或导航属性。标量和复杂属性使用派生类 ,引用导航属性使用派生类 ,而集合导航属性使用派生类 + + + 初始化 类的新实例。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 属性的类型。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此成员所属的 + 拥有此成员的实体的项。 + + + 确定指定的项是否等于当前项。 + 如果指定的项等于当前项,则为 true;否则为 false。 + 要与当前项进行比较的对象。 + + + 返回此项的哈希函数。 + 此项的哈希函数。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此属性。 + + 对象的集合。绝不会为 null。如果实体有效,则集合将为空。 + + + 获取属性的名称。 + 属性名称。 + + + 返回数据库属性值的字符串表示形式。 + 数据库属性值的字符串表示形式。 + + + 这是一个抽象基类,用于表示实体的标量/复杂属性或导航属性。标量和复杂属性使用派生类 ,引用导航属性使用派生类 ,而集合导航属性使用派生类 + 此属性所属的实体的类型。 + 属性的类型。 + + + 初始化 类的新实例。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此成员所属的 + 拥有此成员的实体的项。 + + + 指定对象是否等于指定的对象。 + 如果对象等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与对象关联的哈希代码。 + 与对象关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此属性。 + + 对象的集合。绝不会为 null。如果实体有效,则集合将为空。 + + + 获取属性的名称。 + 属性的名称。 + + + 返回由此对象表示的属性的非泛型 类的新实例。 + 非泛型版本。 + 表示属性的对象。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 表示由 创建的实体数据模型 (EDM)。Compile 方法,可用来从此 EDM 的表示形式转换到 ,后者是适合缓存和创建 实例的模型的编译快照。 + + + 为此模式创建 ,它是适合缓存和创建 实例的编译快照。 + 已编译的模型。 + + + 获取概念模型。 + + + 获取映射模型。 + + + 获取提供程序信息。 + + + 获取提供程序清单。 + + + 获取存储模型。 + + + 非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 属性的类型。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此属性所属的 + 拥有此属性的实体的项。 + + + 获取或设置一个值,该值指示是否在从数据库加载此属性的值后修改了该值。 + 如果修改此实例,则为 true;否则为 false。 + + + 获取属性名称。 + 属性名称。 + + + 获取或设置此属性的原始值。 + 原始值。 + + + 此属性嵌套在其中的属性的 。此方法仅为复杂对象的属性返回非 null 项;它将为实体本身的属性返回 null。 + 父复杂属性的项,如果这是一个实体属性,则为 null。 + + + 此类的实例从 的 Property 方法返回,并允许访问标量属性或复杂属性。 + 此属性所属的实体的类型。 + 属性的类型。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此属性所属的 + 拥有此属性的实体的项。 + + + 获取或设置一个值,该值指示是否在从数据库加载此属性的值后修改了该值。 + 如果修改此实例,则为 true;否则为 false。 + + + 获取属性名称。 + 属性名称。 + + + 返回由此对象表示的属性的非泛型 类的新实例。 + 非泛型版本。 + 表示属性的对象。 + + + 获取或设置此属性的原始值。 + 原始值。 + + + 此属性嵌套在其中的属性的 。此方法仅为复杂对象的属性返回非 null 项;它将为实体本身的属性返回 null。 + 父复杂属性的项,如果这是一个实体属性,则为 null。 + + + 基础实体或复杂对象的所有属性的集合。 + + + 创建一个包含此字典中所有属性的副本的新字典。对新字典所做的更改不会反映在此字典中,反之亦然。 + 此字典的副本。 + + + 指定 是否等于特定对象。 + 如果 等于特定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与属性值关联的哈希代码。 + 与属性值关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 获取属性的值,正如使用索引属性 getter 但将类型设置为泛型参数的类型一样。这在使用嵌套字典以避免编写包含大量强制转换的表达式时特别有用。 + 属性的值。 + 属性的名称。 + 属性的类型。 + + + 获取或设置带指定属性名称的属性的值。该值可能为此类的嵌套实例。 + 属性的值。 + + + 获取作为只读集的此字典中所有属性的名称集。 + 属性名称。 + + + 通过从其他字典中读取值来设置此字典的值。另一个字典必须基于与此字典相同的类型,或基于此字典的类型所派生的类型。 + 从中读取值的字典。 + + + 通过从给定对象中读取值来设置此字典的值。给定对象可以是任何类型。如果对象具有任何与字典中的属性名称匹配且可读取的名称的属性,则将读取这些属性。其他属性将被忽略。例如,这样便能从简单的数据传输对象 (DTO) 中复制属性。 + 从中读取值的对象。 + + + 为此字典创建一个基础类型对象,并使用此字典中的属性值冻结该对象。 + 已复制到新对象中的此字典的属性。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 分组一对字符串,它们将提供程序和服务器版本一起标识为一个对象。 + + + 为给定的提供程序固定名称和清单标记创建一个新对象。 + 标识该提供程序的字符串。例如,SQL Server 提供程序使用字符串“System.Data.SqlCient”。 + 标识正在使用的数据库服务器版本的字符串。例如,SQL Server 提供程序对 SQL Server 2008 使用字符串“2008”。此值不能为 null 但可以为空。清单标记有时也称为版本提示。 + + + 确定指定的对象是否等于此当前对象。 + 如果指定的对象等于此当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 获取此当前对象的哈希函数。 + 此当前对象的哈希函数。 + + + 标识该提供程序的字符串。例如,SQL Server 提供程序使用字符串“System.Data.SqlCient”。 + + + 标识正在使用的数据库服务器版本的字符串。例如,SQL Server 提供程序对 SQL Server 2008 使用字符串“2008”。此值不能为 null 但可以为空。 + + + 表示针对 DbContext 的非泛型 LINQ to Entities 查询。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 返回等效泛型 对象。 + 泛型集对象。 + 已为其创建查询的元素的类型。 + + + IQueryable 元素类型。 + + + 指定查询是否等于指定的对象。 + 如果查询等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与查询关联的哈希代码。 + 与查询关联的哈希代码。 + + + 获取与查询关联的类型。 + 与查询关联的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 DbQuery&lt;T&gt;,它具有所定义的查询路径。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。相反,用数据填充 DbSet,例如,使用 Load 扩展方法,然后绑定到本地数据。对于 WPF,绑定到 DbSet.Local。对于 Windows 窗体,则绑定到 DbSet.Local.ToBindingList()。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + IQueryable LINQ 表达式。 + + + IQueryable 提供程序。 + + + 返回基础查询的 表示形式。 + 查询字符串。 + + + 表示针对 DbContext 的 LINQ to Entities 查询。 + 要查询的实体的类型。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 确定当前查询是否等于指定的查询。 + 如果当前查询等于指定的查询,则为 true;否则为 false。 + 要与当前查询进行比较的对象。 + + + 返回此查询的哈希函数。 + 此查询的哈希函数。 + + + 获取当前查询的类型。 + 当前查询的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + + + 返回此查询的非泛型 类的新实例。 + 非泛型版本。 + 查询。 + + + 获取此查询的枚举会导致对存储区执行此查询。 + 查询的 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。相反,用数据填充 DbSet,例如,使用 Load 扩展方法,然后绑定到本地数据。对于 WPF,绑定到 DbSet.Local。对于 Windows 窗体,则绑定到 DbSet.Local.ToBindingList()。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + IQueryable 元素类型。 + + + IQueryable LINQ 表达式。 + + + IQueryable 提供程序。 + + + 返回基础查询的 表示形式。 + 查询字符串。 + + + 表示非实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。实体的 SQL 查询是使用 创建的。请参见 了解此类的泛型版本。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 指定查询是否等于指定的对象。 + 如果查询等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要对每个元素执行的操作。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要对每个元素执行的操作。 + 等待任务完成期间要观察的 。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 获取与查询关联的哈希代码。 + 与查询关联的哈希代码。 + + + 获取与查询关联的类型。 + 与查询关联的类型。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含查询的元素。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含查询的元素。 + 等待任务完成期间要观察的 。 + + + 返回一个包含 SQL 字符串的 ,该字符串是在创建查询时设置的。不包括参数。 + 表示此实例的 + + + 表示非实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。实体的 SQL 查询是使用 创建的。请参见 了解此类的非泛型版本。 + 查询所返回元素的类型。 + + + 异步确定查询的所有元素是否满足条件。 + 表示异步操作的任务。如果查询结果的每个元素都通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + + + 异步确定查询的所有元素是否满足条件。 + 表示异步操作的任务。如果查询结果的每个元素都通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + + + 异步确定查询是否包含任何元素。 + 表示异步操作的任务。如果查询结果包含任何元素,则任务结果包含 true;否则包含 false。 + + + 异步确定查询的任何元素是否满足条件。 + 表示异步操作的任务。如果查询结果的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + + + 异步确定查询的任何元素是否满足条件。 + 表示异步操作的任务。如果查询结果的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + + 异步确定查询是否包含任何元素。 + 表示异步操作的任务。如果查询结果包含任何元素,则任务结果包含 true;否则包含 false。 + 等待任务完成期间要观察的 。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 通过使用默认的相等比较器异步确定查询是否包含指定的元素。 + 表示异步操作的任务。如果查询结果包含指定的值,则任务结果包含 true;否则包含 false。 + 要在查询结果中查找的对象。 + + + 通过使用默认的相等比较器异步确定查询是否包含指定的元素。 + 表示异步操作的任务。如果查询结果包含指定的值,则任务结果包含 true;否则包含 false。 + 要在查询结果中查找的对象。 + 等待任务完成期间要观察的 。 + + + 异步返回查询中的元素数。 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 查询结果中的元素数大于 + + + 异步返回满足条件的查询中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回满足条件的查询中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回查询中的元素数。 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 等待任务完成期间要观察的 。 + 查询结果中的元素数大于 + + + 确定当前查询是否等于指定的查询。 + 如果当前查询等于指定的查询,则为 true;否则为 false。 + 要与当前查询进行比较的查询。 + + + 异步返回查询的第一个元素。 + 表示异步操作的任务。任务结果包含查询结果中的第一个元素。 + 查询结果为空。 + + + 异步返回满足指定条件的查询的第一个元素。 + 表示异步操作的任务。任务结果包含满足指定条件的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + 查询结果为空。 + + + 异步返回满足指定条件的查询的第一个元素。 + 表示异步操作的任务。任务结果包含满足指定条件的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + 查询结果为空。 + + + 异步返回查询的第一个元素。 + 表示异步操作的任务。任务结果包含查询结果中的第一个元素。 + 等待任务完成期间要观察的 。 + 查询结果为空。 + + + 异步返回查询的第一个元素;如果查询结果不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空,则任务结果包含 default ();否则包含查询结果中的第一个元素。 + + + 异步返回满足指定条件的查询的第一个元素;如果未找到这样的元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + + + 异步返回满足指定条件的查询的第一个元素;如果未找到这样的元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + + + 异步返回查询的第一个元素;如果查询结果不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空,则任务结果包含 default ();否则包含查询结果中的第一个元素。 + 等待任务完成期间要观察的 。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要执行的操作。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要执行的操作。 + 等待任务完成期间要观察的 。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 返回此查询的哈希函数。 + 此查询的哈希函数。 + + + 获取当前查询的类型。 + 当前查询的类型。 + + + 异步返回表示查询中的总元素数的 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 查询结果中的元素数大于 + + + 异步返回表示满足条件的查询中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回表示满足条件的查询中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回表示查询中的总元素数的 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 等待任务完成期间要观察的 。 + 查询结果中的元素数大于 + + + 异步返回查询的最大值。 + 表示异步操作的任务。任务结果包含查询结果中的最大值。 + + + 异步返回查询的最大值。 + 表示异步操作的任务。任务结果包含查询结果中的最大值。 + 等待任务完成期间要观察的 。 + + + 异步返回查询的最小值。 + 表示异步操作的任务。任务结果包含查询结果中的最小值。 + + + 异步返回查询的最小值。 + 表示异步操作的任务。任务结果包含查询结果中的最小值。 + 等待任务完成期间要观察的 。 + + + 异步返回查询的唯一元素;如果该查询结果并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素。 + 查询结果有多个元素。 + 查询结果为空。 + + + 异步返回满足指定条件的查询的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回满足指定条件的查询的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回查询的唯一元素;如果该查询结果并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素。 + 等待任务完成期间要观察的 。 + 查询结果有多个元素。 + 查询结果为空。 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 查询结果有多个元素。 + + + 异步返回满足指定条件的查询的唯一元素;如果这类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素;如果没有找到这样的元素,则任务结果包含 default ()。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + 多个元素满足 中的条件。 + + + 异步返回满足指定条件的查询的唯一元素;如果这类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素;如果没有找到这样的元素,则任务结果包含 default ()。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + 多个元素满足 中的条件。 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 等待任务完成期间要观察的 。 + 查询结果有多个元素。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 通过异步枚举从查询创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + + + 通过异步枚举从查询创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + 等待任务完成期间要观察的 。 + + + 通过异步枚举它根据指定的键选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + + 返回的键类型。 + + + 通过异步枚举它根据指定的键选择器函数和比较器从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + + 返回的键类型。 + + + 通过异步枚举它根据指定的键选择器函数和比较器从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + + 通过异步枚举它根据指定的键选择器函数和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从查询选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数、比较器和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数、比较器和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从查询选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 等待任务完成期间要观察的 。 + + + 返回一个包含 SQL 字符串的 ,该字符串是在创建查询时设置的。不包括参数。 + 表示此实例的 + + + 非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 属性的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载该实体。 + 如果加载了该实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 从数据库加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回将用于从数据库加载此实体的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作。 + 针对实体的查询。 + + + 此类的实例从 的 Reference 方法返回,并且允许对实体的引用导航属性执行各种操作(如加载)。 + 此属性所属的实体的类型。 + 属性的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载该实体。 + 如果加载了该实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 从数据库加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回由此对象表示的导航属性的非泛型 类的新实例。 + 非泛型版本。 + 表示导航属性的对象。 + + + 返回将用于从数据库加载此实体的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作。 + 针对实体的查询。 + + + 表示实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从该实体类型的 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。非实体的 SQL 查询是使用 创建的。请参见 了解此类的泛型版本。 + + + 从派生类的构造函数中进行调用时,创建一个 实例,它将用作 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking 和 AsStreaming,它们的默认实现是空操作。 + + + 返回一个新查询,其中查询的结果将不由关联的 跟踪。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要与当前实例进行比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取与查询关联的类型。 + 与查询关联的类型。 + + + 返回一个包含 SQL 字符串的 ,该字符串是在创建查询时设置的。不包括参数。 + 表示此实例的 + + + 表示实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从该实体类型的 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。非实体的 SQL 查询是使用 创建的。请参见 了解此类的非泛型版本。 + 查询所返回实体的类型。 + + + 从派生类的构造函数中进行调用时,创建一个 实例,它将用作 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking 和 AsStreaming,它们的默认实现是空操作。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取与此实例关联的类型。 + 与此实例关联的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 当预期实体的 SaveChanges 将导致数据库更新而实际上未影响数据库中的任何行时 引发的异常。这通常指示,当前已并发更新数据库,使得应匹配的并发标记实际上并不匹配。请注意为了安全起见,不会序列化此异常引用的状态项,并且在序列化后对状态项的访问将返回 null。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 消息。 + + + 初始化 类的新实例。 + 消息。 + 内部异常。 + + + 将更改保存到数据库失败时,由 引发的异常。请注意为了安全起见,不会序列化此异常引用的状态项,并且在序列化后对状态项的访问将返回 null。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 消息。 + + + 初始化 类的新实例。 + 消息。 + 内部异常。 + + + 获取表示无法保存到数据库的实体的 对象。 + 表示无法保存的实体的项。 + + + 表示如果失败不重试操作的默认 + + + 初始化 类的新实例。 + + + 执行一次指定的操作。 + 一个表示不返回任何结果的可执行操作的委托。 + + + 执行一次指定的操作并返回结果。 + 操作的结果。 + 一个表示返回 类型的结果的可执行操作的委托。 + + 的返回类型。 + + + 执行一次指定的异步操作,失败时不重试。 + 如果原始任务成功完成将要运行以完成的任务。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + 返回的 的结果类型。 + + + 执行一次指定的异步操作,失败时不重试。 + 如果原始任务成功完成将要运行以完成的任务。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + + 获取 在失败后是否将重试执行。 + 如果 在失败后将重试执行,则为 true;否则为 false。 + + + 表示使用基础提供程序以获取清单标记的 的默认实现。请注意,为避免多个查询,此实现基于 实例的实际类型、 属性和 属性使用缓存。 + + + 初始化 类的新实例。 + + + 返回要用于给定连接的清单标记。 + 要使用的清单标记。 + 需要清单标记的连接。 + + + 表示用于存储有关数据库中 EDM 的元数据的实体。 + + + 初始化 类的新实例。 + + + 获取或设置元数据实体的 ID,它当前总是为 1。 + ID。 + + + 获取或设置模型哈希,用于检查自从模型中创建数据库后,模型是否发生了更改。 + 模型哈希。 + + + 尝试为给定上下文获取 Code First 计算的模型哈希。如果未在 Code First 模式中使用上下文,则此方法将返回 null。 + 哈希字符串。 + 上下文。 + + + 包含用于访问由 Code First 创建的 EDMX 格式的实体数据模型的方法。通常,在需要查看 Code First 内部创建的模型时,这些方法将用于调试。 + + + 将 Code First 用于给定上下文,然后以 EDMX 形式将生成的实体数据模型写入给定编写器。此方法只能用于使用 Code First 且内部创建模型的上下文实例。此方法不能用于使用 Database First 或 Model First 创建的上下文、使用预先存在的 创建的上下文或使用预先存在的 创建的上下文。 + 上下文。 + 编写器。 + + + 将给定的 表示的实体数据模型以 EDMX 形式写入给定编写器。 + 表示 EDM 的对象。 + 编写器。 + + + 一个用于解析 的键。它包含 ADO.NET 提供程序固定名称和在连接字符串中指定的数据库服务器名称。 + + + 初始化 的新实例。 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + 确定指定的对象是否等于此键。 + 如果指定的对象等于此键,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + + + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + + 接口的异步版本,它允许异步检索元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + + + 获取一个枚举器,它可用于异步枚举序列。 + 用于对序列异步枚举的枚举器。 + + + + 接口的异步版本,它允许异步检索可枚举序列的元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + 要枚举的对象的类型。此类型参数是协变。即可以使用指定的类型或派生程度更高的类型。 有关协变和逆变的详细信息,请参阅。 + + + 获取一个枚举器,它可用于异步枚举序列。 + 用于对序列异步枚举的枚举器。 + + + + 接口的异步版本,它允许异步检索元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + + + 获取迭代中的当前元素。 + + + 将枚举器前移到序列中的下一个元素,异步返回结果。 + 表示异步操作的任务。如果枚举器成功前移到下一个元素,则任务结果包含 true;如果枚举器已过序列末尾,则包含 false。 + 等待任务完成期间要观察的 。 + + + + 接口的异步版本,它允许异步检索元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + 要枚举的对象的类型。此类型参数是协变。即可以使用指定的类型或派生程度更高的类型。 有关协变和逆变的详细信息,请参阅。 + + + 获取迭代中的当前元素。 + + + 定义用于创建和异步执行 对象所描述的查询的方法。此接口用于与实体框架查询交互且不应由自定义类来实现。 + + + 异步执行指定表达式树所表示的强类型查询。 + 表示异步操作的任务。任务结果包含执行指定查询所生成的值。 + 表示 LINQ 查询的表达式树。 + 等待任务完成期间要观察的 。 + 执行查询所生成的值的类型。 + + + 异步执行指定表达式树所表示的查询。 + 表示异步操作的任务。任务结果包含执行指定查询所生成的值。 + 表示 LINQ 查询的表达式树。 + 等待任务完成期间要观察的 。 + + + 此接口的实现用来基于给定的数据库名称创建某个数据库服务器类型的 DbConnection 对象。默认情况下,可在 类上设置一个实例以便创建所有 DbContext 对象(不具有连接信息或只有数据库名称或连接字符串)以使用特定类型的数据库服务器。提供此接口的两种实现: 用于创建与速成版等 Microsoft SQL Server 的连接。 用于创建与 Microsoft SQL Server Compact Edition 的连接。可根据需要添加其他数据库服务器的其他实现。请注意实现应视为是线程安全的或不可变的,因为实现可同时被多个线程访问。 + + + 基于给定的数据库名称或连接字符串创建连接。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 用于创建派生 实例的工厂。实现此接口可为没有公共默认构造函数的上下文类型启用设计时服务。在设计时,可以创建派生的 实例,以启用特定设计时体验,如模型呈现和 DDL 生成。要为没有公共默认构造函数的派生 启用设计时实例化,请实现此接口。设计时服务将自动发现与派生 类型位于同一程序集中的此接口的实现。 + 上下文的类型。此类型参数是协变。即可以使用指定的类型或派生程度更高的类型。 有关协变和逆变的详细信息,请参阅。 + + + 创建派生 类型的新实例。 + TContext 的一个实例 + + + 用于对数据库执行命令或查询的策略,可能具有在失败时进行重试的逻辑。 + + + 执行指定的操作。 + 一个表示不返回任何结果的可执行操作的委托。 + + + 执行指定的操作并返回结果。 + 操作的结果。 + 一个表示返回 类型的结果的可执行操作的委托。 + + 的返回类型。 + + + 执行指定的异步操作并返回结果。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回 类型的已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + 返回的 的结果类型。 + + + 执行指定的异步操作。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + + 指示此 在失败后是否可能重试执行。 + + + 表示一个键值,它唯一地标识已加载到内存中的实体框架模型。 + + + 确定当前缓存的模型键是否等于指定的缓存模型键。 + 如果当前缓存的模型键等于指定的缓存模型键,则为 true;否则为 false。 + 要与当前缓存的模型键比较的缓存模型键。 + + + 返回此缓存模型键的哈希函数。 + 此缓存模型键的哈希函数。 + + + 对您的上下文实现此接口,使用自定义逻辑来计算在缓存中查找已创建模型时所用的键。此接口允许您具有可与同一 AppDomain 中不同模型一起使用的单个上下文类型,或是具有使用同一模型的多个上下文类型。 + + + 获取与提供程序关联的缓存键。 + 与提供程序关联的缓存键。 + + + 用于从给定的 获取正确的 的服务。 + + + 返回给定连接的 + 连接的提供程序工厂。 + 连接。 + + + 用于获取给定连接的提供程序清单标记的服务。默认情况下使用 类并利用基础提供程序来获取通常涉及打开连接的标记。通过将 添加到可能使用连接中的任何信息来返回标记的 ,可以改用其他实现。例如,如果已知连接指向 SQL Server 2008 数据库,则可以返回“2008”而无需打开连接。 + + + 返回要用于给定连接的清单标记。 + 要使用的清单标记。 + 需要清单标记的连接。 + + + 实现此接口以允许由 实例表示的自定义注释序列化为 EDMX XML 以及从 EDMX XML 进行序列化。通常,使用 方法设置序列化程序实例。 + + + 将给定字符串反序列化为预期的注释值。 + 反序列化的注释值。 + 要反序列化的注释的名称。 + 要反序列化的字符串。 + + + 将给定注释值序列化为要存储在 EDMX XML 中的字符串。 + 序列化值。 + 要序列化的注释的名称。 + 要序列化的值。 + + + 约定将导致 DbModelBuilder 在生成模型时包含有关该模型的元数据。当 按约定创建模型时,它会将此约定添加到由 DbModelBuilder 使用的项的列表中。如果使用 DbContext 创建数据库,则会导致将模型元数据写入数据库中。然后,可使用它来快速检查自上次对数据库使用模型后,模型是否发生了更改。可通过重写派生 DbContext 类的 OnModelCreating 方法,从 约定中移除此约定。 + + + 初始化 类的新实例。 + + + 由可提供 实例的对象实现的接口。 类实现此接口以提供对基础 ObjectContext 的访问。 + + + 获取对象上下文。 + 对象上下文。 + + + 解析提供程序固定名称时由 使用。 + + + 获取提供程序的名称。 + 提供程序的名称。 + + + 此类的实例用来基于给定的数据库名称或连接字符串创建 SQL Server LocalDb 的 DbConnection 对象。 + + + 为给定版本的 LocalDb 创建连接工厂的新实例。对于 SQL Server 2012 LocalDb,请使用“v11.0”。对于 SQL Server 2014 及更高版本 LocalDb,请使用“mssqllocaldb”。 + 要使用的 LocalDb 版本。 + + + 为给定版本的 LocalDb 创建连接工厂的新实例。对于 SQL Server 2012 LocalDb,请使用“v11.0”。对于 SQL Server 2014 及更高版本 LocalDb,请使用“mssqllocaldb”。 + 要使用的 LocalDb 版本。 + 用于“初始目录”、“数据源”和“AttachDbFilename”之外的数据库选项的连接字符串。调用 CreateConnection 时,将基于数据库名称在此字符串前添加“初始目录”和“AttachDbFilename”。将基于 LocalDbVersion 参数设置“数据源”。 + + + 用于“初始目录”、“数据源”和“AttachDbFilename”之外的数据库选项的连接字符串。调用 CreateConnection 时,将基于数据库名称在此字符串前添加“初始目录”和“AttachDbFilename”。将基于 LocalDbVersion 参数设置“数据源”。默认值为“Integrated Security=True;”。 + + + 基于给定的数据库名称或连接字符串为 SQL Server LocalDb 创建连接。如果给定的字符串包含“=”字符,则将其视为一个完整的连接字符串,否则仅将其视为数据库名称。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 约定将派生的 类的名称用作由 Code First 生成的概念模型的容器。 + + + 将此约定应用到给定的模型。 + 要将约定应用到的容器。 + 模型。 + + + 约定将派生的 类的命名空间用作由 Code First 生成的概念模型的命名空间。 + + + 使用引用相等性比较对象。 + + + 初始化 类的新实例。 + + + 获取默认实例。 + 默认实例。 + + + 确定指定对象实例是否相等。 + 如果对象相等,则为 true;否则为 false。 + 第一个要比较的对象。 + 第二个要比较的对象。 + + + 获取指定对象的哈希代码。 + 指定对象的哈希代码。 + 对象。 + + + 此类的实例用于内部创建 的常量表达式,这些表达式将插入表达式树中以替换对 的引用。 + 元素的类型。 + + + LINQ 表达式树中应有的公共属性。 + 查询。 + + + 当操作重试了配置的次数后再次失败时引发的异常。 + + + 使用无错误消息初始化 类的新实例。 + + + 使用指定的错误消息初始化 类的新实例。 + 描述错误的消息。 + + + 初始化 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常。 + + + 此类的实例用来基于给定的数据库名称或连接字符串创建 SQL Server Compact Edition 的 DbConnection 对象。 + + + 使用空的(默认)DatabaseDirectory 和 BaseConnectionString 属性创建新的连接工厂。 + 应使用指定 SQL Server Compact Edition 版本的提供程序固定名称。 + + + 使用给定的 DatabaseDirectory 和 BaseConnectionString 属性创建新的连接工厂。 + 应使用指定 SQL Server Compact Edition 版本的提供程序固定名称。 + 用于添加到数据库名称前面的路径,SQL Server Compact Edition 在创建或读取数据库文件时将使用它来构成文件名。空字符串意味着 SQL Server Compact Edition 将其默认位置用作数据库文件位置。 + 要用于“数据源”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置数据源。 + + + 要用于“数据源”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置数据源。默认值为空字符串,即表示不使用任何其他选项。 + + + 基于给定的数据库名称或连接字符串为 SQL Server Compact Edition 创建连接。如果给定的字符串包含“=”字符,则将其视为一个完整的连接字符串,否则仅将其视为数据库名称。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 用于添加到数据库名称前面的路径,SQL Server Compact Edition 在创建或读取数据库文件时将使用它来构成文件名。默认值为“|DataDirectory|”,即表示文件将放置在指定的数据目录中。 + + + 应使用指定 SQL Server Compact Edition 版本的提供程序固定名称。 + + + 此类的实例用来基于给定的数据库名称或连接字符串创建 SQL Server 的 DbConnection 对象。默认情况下,将建立与“.\SQLEXPRESS”的连接。在构造工厂实例时,可通过更改基础连接字符串来更改此设置。 + + + 使用默认的 BaseConnectionString 属性“Data Source=\SQLEXPRESS; Integrated Security=True; MultipleActiveResultSets=True;”创建新的连接工厂。 + + + 使用给定的 BaseConnectionString 属性创建新的连接工厂。 + 要用于“初始目录”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置“初始目录”。 + + + 要用于“初始目录”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置“初始目录”。默认值为“Data Source=.\SQLEXPRESS; Integrated Security=True;”。 + + + 基于给定的数据库名称或连接字符串为 SQL Server 创建连接。如果给定的字符串包含“=”字符,则将其视为一个完整的连接字符串,否则仅将其视为数据库名称。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 此特性可应用于整个派生的 类或该类上的单个 属性。应用此特性后,任何发现的 属性仍将包含在模型中,但将不再自动进行初始化。 + + + 初始化 类的新实例。 + + + 由实体框架提供程序实现,用于检查给定的数据库中是否存在表。当确定是否将现有数据库作为空库处理以便应创建表时,数据库初始化程序使用该类。 + + + + 在派生类中重写时,检查给定的表在给定连接的数据库中存在的位置。 + 如果任意模型表或 EdmMetadata 表存在,则为 true。 + 正在执行表检查的上下文,通常用于获取合适的 。 + 到数据库的一个连接。可能打开或关闭;如果打开,应再次关闭它。不释放。 + 要检查是否存在的表。 + 要检查是否存在的 EdmMetadata 表的名称。 + + + 要获取给定 s 空间 的表名称的帮助器方法。 + 表名称。 + 表的 s 空间实体集。 + + + + 使用此类向数据库中写入和从中读取事务跟踪信息。要自定义事务表的定义,您可以从此类派生并重写 。可以使用 注册派生类。 + + + 初始化 类的新实例。 + 将为其记录事务的上下文所使用的连接。 + + + 初始化派生上下文的模型后调用此方法。 + 定义要创建的上下文的模型的生成器。 + + + 获取或设置可用于读取和写入 实例的 + 可用于读取和写入 实例的 + + + 表示处理事务操作的侦听器的基类。可使用 注册派生类。 + + + 初始化 类的新实例。 + + + 可在派生类中实现。 + 开始事务的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 开始事务的连接。 + 与调用关联的上下文信息。 + + + 在派生类中实现后,返回脚本来为此事务处理程序准备数据库。 + 用于为此事务处理程序更改数据库架构的脚本。 + + + 可在派生类中实现。 + 已关闭的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要关闭的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 已提交的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要提交的事务。 + 与调用关联的上下文信息。 + + + 获取将对其处理事务操作的连接。 + 将为其处理事务操作的 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 获取将对其处理事务操作的连接。 + 将为其处理事务操作的 。可以为 null。 + + + 释放此事务处理程序占用的资源。 + + + 释放此事务处理程序占用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 可在派生类中实现。 + 已释放的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 已释放的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要释放的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要释放的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 使用指定的上下文初始化此实例。 + 将为其处理事务操作的上下文。 + + + 使用指定的上下文初始化此实例。 + 将为其处理事务操作的上下文。 + 用于初始化的连接。 + + + 获取或设置一个值,以指示是否释放了此事务处理程序。 + 如果释放此事务处理程序,则为 true;否则为 false。 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 检查提供的侦听上下文是否包含目标上下文,或提供的连接与目标上下文使用的连接相同。 + 如果提供的侦听上下文包含目标上下文或者在提供的侦听上下文不包含任何上下文时提供的连接与目标上下文使用的连接相同,则为 true;否则为 false。 + 连接。 + 侦听上下文。 + + + 获取将对其处理事务操作的连接。 + 将为其处理事务操作的 + + + 可在派生类中实现。 + 已打开的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要打开的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 已回滚的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要回滚的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 表示一个事务。 + + + 初始化 类的新实例。 + + + 获取或设置事务开始的当地时间。 + 此事务开始的本地时间。 + + + 指示指定对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取或设置分配给事务对象的唯一 ID。 + 分配给事务对象的唯一 ID。 + + + 当上下文从 Database First 或 Model First 模式中的 模板生成,并在 Code First 模式中使用时引发的异常。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 保存序列化对象数据的对象。 + 有关源或目标的上下文信息。 + + + 初始化 类的新实例。 + 消息。 + + + 初始化 类的新实例。 + 消息。 + 内部异常。 + + + 表示创建允许在为迁移搭建基架时为自定义注释生成代码的服务。应在 中设置的派生类。 + + + 初始化 类的新实例。 + + + 为给定注释值生成代码。 + 要为其生成值的注释的名称。 + 批注值。 + 应向其中写入生成的代码的编写器。 + + + 返回应包括在为已搭建基架的迁移生成的代码中的其他命名空间。默认实现返回空枚举。 + 要包括的其他命名空间的列表。 + 要包括在生成的代码中的注释的名称。 + + + 表示已搭建基架的或已手工编码的 中的一对注释值。 + + + 创建一对新注释值。 + 注释的旧值,如果刚创建注释,则此值可能为 null。 + 注释的新值,如果已删除注释,则此值可能为 null。 + + + 确定指定对象是否等于此实例对象。 + 如果指定对象等于此实例对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索哈希代码。 + 哈希代码。 + + + 获取注释的新值,如果已删除注释,则此值可能为 null。 + 注释的新值,如果已删除注释,则此值可能为 null。 + + + 获取注释的旧值,如果刚创建注释,则此值可能为 null。 + 注释的旧值,如果刚创建注释,则此值可能为 null。 + + + 如果两个注释对包含相同值,则返回 true;否则返回 false。 + 如果两对包含相同值,则为 true。 + 一对注释值。 + 一对注释值。 + + + 如果两个注释对包含不同的值,则返回 true;否则返回 false。 + 如果对包含不同值,则为 true。 + 一对注释值。 + 一对注释值。 + + + 和相关方法返回,以指示某个对象是否与另一个对象不冲突,以便这两个对象可以组合成一个对象。 + + + 创建一个新的 实例。 + 指示这两个测试对象是否兼容。 + 指示对象如何不兼容的错误消息。如果 isCompatible 为 true,则应为 null。 + + + 如果 为 true,则返回指示两个测试对象如何不兼容的错误消息。 + + + 如果两个测试对象兼容,则为 true;否则为 false。 + + + 隐式转换为布尔值以允许在检查中直接使用结果对象。 + 如果结果兼容,则为 true;否则为 false。 + 要转换的对象。 + + + 用作自定义注释的类型可以实现此接口,以指示通过将多个注释合并为一个注释,可以尝试在给定表或列上使用多个同名注释。 + + + 如果此注释与给定注释不冲突,则返回 true,以便可以使用 方法将二者组合在一起。 + 指示此注释是否与另一个注释兼容的 CompatibilityResult。 + 要比较的注释。 + + + 将此注释与给定注释合并,并返回新合并的注释。仅当 返回 true 时,此方法才会成功。 + 新合并的注释。 + 要与此注释合并的注释。 + + + 表示用于表示实体框架模型中数据库索引的自定义注释。 + + + 使用索引的给定集合初始化 类的新实例。 + 表示一个或多个索引的索引属性。 + + + 使用索引的给定集合初始化 类的新实例。 + 表示索引的索引属性。 + + + 在将此注释存储在实体框架元数据中或序列化到 SSDL/EDMX 文件中时使用的名称。 + + + 获取此注释表示的索引。 + 此注释表示的索引。 + + + 如果此注释与给定注释不冲突,则返回 true,以便可以使用 方法将二者组合在一起。 + 指示此注释是否与另一个注释兼容的 CompatibilityResult。 + 要比较的注释。 + + + 将此注释与给定注释合并,并返回包含已合并索引的新注释。 + 具有所合并的两个注释的索引的新注释。 + 要与此注释合并的注释。 + 其他注释包含与此注释中的索引不兼容的索引。 + + + 返回 对象的字符串表示形式。 + + 对象的字符串表示形式。 + + + 此类用于序列化和反序列化 对象,以便它们可以存储在 EDMX 形式的实体框架模型中。 + + + 初始化 类的新实例。 + + + 将给定字符串反序列化为 对象。 + 反序列化的注释值。 + 要反序列化的注释的名称。 + 要反序列化的字符串。 + 如果在读取序列化值时出错。 + + + 将给定 序列化为要存储在 EDMX XML 中的字符串。 + 序列化值。 + 要序列化的注释的名称。 + 要序列化的、必须是 IndexAnnotation 对象的值。 + + + 表示传递到 事件处理程序的时间参数。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。与 AddDependencyResolver 方法不同,此方法将解析程序放置于责任链的底部,这样,该解析程序将仅用于解析任何其他解析程序无法解析的依赖项。 + 要添加的解析程序。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。 + 要添加的解析程序。 + 如果为 true,则添加的解析程序将优先于配置文件中的设置。 + + + 获取将要锁定的 的快照。对此对象使用 GetService 方法可获取已注册的服务。 + 将要锁定的 的快照。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取此实例的类型。 + 此实例的类型。 + + + 将一个包装解析程序添加到将要锁定的配置中。包装解析程序是这样一种解析程序:它截取解析程序链已返回的服务并且用相同类型的另一个服务包装或替换它。 + 获取未包装的服务和键并返回已包装或替换的服务的委托。 + 要包装或替换的服务的类型。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 用来调用使用泛型类型参数和/或不带名称的 方法的扩展方法。 + + + 调用 ,将该方法的泛型类型作为类型参数传递并为名称参数传递 null。 + 解析的依赖项;如果解析程序无法解析它,则为 null。 + 要使用的解析程序。 + 要解析的协定类型。 + + + 调用 ,将该方法的泛型类型和给定名称作为参数传递。 + 解析的依赖项;如果解析程序无法解析它,则为 null。 + 要使用的解析程序。 + 要解析的依赖项的键。 + 要解析的协定类型。 + + + 调用 ,以传递给定类型参数并对名称参数使用 null。 + 解析的依赖项;如果解析程序无法解析它,则为 null。 + 要使用的解析程序。 + 要解析的协定类型。 + + + 调用 ,将该方法的泛型类型作为类型参数传递并为名称参数传递 null。 + 所有已解析的依赖项,如果没有解析任何服务,则为 + 要使用的解析程序。 + 要解析的协定类型。 + + + 调用 ,将该方法的泛型类型和给定名称作为参数传递。 + 所有已解析的依赖项,如果没有解析任何服务,则为 + 要使用的解析程序。 + 要解析的依赖项的键。 + 要解析的协定类型。 + + + 调用 ,以传递给定类型参数并对名称参数使用 null。 + 所有已解析的依赖项,如果没有解析任何服务,则为 + 要使用的解析程序。 + 要解析的协定类型。 + + + 用于解析 工厂的 实现。 + 解析的执行策略的类型。 + + + 初始化 的新实例。 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 将与连接字符串中的服务器名称进行匹配的字符串。null 将匹配任意内容。 + 返回执行策略的新实例的函数。 + + + 如果给定类型为 ,则此解析程序将尝试返回要使用的服务,否则它将返回 null。在给定类型为 Func{IExecutionStrategy} 时,键应该是 + + 或 null。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 如果给定类型为 ,则此解析程序将尝试返回要使用的服务,否则它将返回空枚举。在给定类型为 Func{IExecutionStrategy} 时,键应该是 + 可枚举的 或空枚举。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 此接口由可以解析依赖项(直接解析或通过使用外部容器进行解析)的任何对象实现。 + + + 尝试为给定的协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回 null 并且不引发。这允许解析程序用于责任链模式中,以便可以请求多个解析程序解析某一依赖项,直到其中一个解析程序最终解析了该依赖项。 + 解析的依赖项,它必须是给定协定类型的实例;如果无法解析该依赖项,则为 null。 + 定义要解析的依赖项的接口或抽象基类。返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 尝试为给定协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回空枚举并且不引发。此方法与 不同,因为它返回给定类型和键组合的所有注册服务。 + 解析依赖项的所有服务,它们必须是给定协定类型的实例,如果无法解析依赖项,则为空枚举。 + 定义要解析的依赖项的接口或抽象基类。每个返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 实现 以便解析某一依赖项,使其可以始终返回相同的实例。 + 定义将解析的依赖项的协定的类型。 + + + 构造一个新的解析程序,该解析程序将返回协定类型的给定实例,而与传递给 Get 方法的键无关。 + 要返回的实例。 + + + 构造一个新解析程序,如果给定键与基于给定谓词传递给 Get 方法的键匹配,该解析程序将返回协定类型的给定实例。 + 要返回的实例。 + 采用键对象并在当且仅当它匹配时才返回 true 的谓词。 + + + 构造一个新的解析程序,如果给定键完全匹配传递给 Get 方法的键,该解析程序将返回协定类型的给定实例。 + 要返回的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 尝试为给定的协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回 null 并且不引发。这允许解析程序用于责任链模式中,以便可以请求多个解析程序解析某一依赖项,直到其中一个解析程序最终解析了该依赖项。 + 解析的依赖项,它必须是给定协定类型的实例;如果无法解析该依赖项,则为 null。 + 定义要解析的依赖项的接口或抽象基类。返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 尝试为给定协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回空枚举并且不引发。 + 解析依赖项的所有服务,它们必须是给定协定类型的实例,如果无法解析依赖项,则为空枚举。 + 定义要解析的依赖项的接口或抽象基类。每个返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 表示用于解析 工厂的 实现。 + + + 初始化 类的新实例。 + 一个返回事务处理程序的新实例的函数。 + ADO.NET 提供程序固定名称,指示将使用事务处理程序的 ADO.NET 连接的类型。null 将匹配任意内容。 + 将与连接字符串中的服务器名称进行匹配的字符串。null 将匹配任意内容。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索对象实例的哈希代码。 + 对象实例的哈希代码。 + + + 如果给定类型为 ,则此方法将尝试返回要使用的服务,否则它将返回 null。在给定类型为 时,键应该是 + + 或 null。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 如果给定类型为 ,则此解析程序将尝试返回要使用的服务,否则它将返回空枚举。在给定类型为 时,键应该是 + 可枚举的 或空枚举。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 提供用于从 App.config 或 Web.config 文件读取的实用工具方法。 + + + 初始化 的新实例。 + 要从中读取的配置。 + + + 从配置获取指定的提供程序服务。 + 提供程序服务类型名称或 null(如果未找到)。 + 提供程序服务的固定名称。 + + + 表示映射视图。 + + + 创建具有指定实体 SQL 的 实例。 + 一个指定实体 SQL 的字符串。 + + + 获取实体 SQL。 + + + 表示映射视图缓冲实现的抽象基类。派生类如果与 一起使用,则必须具有无参数构造函数。 + + + 初始化 类的新实例。 + + + 获取与指定范围对应的视图。 + 一个指定映射视图的 ,如果范围不与映射视图关联,则为 null。 + 一个指定范围的 。 + + + 获取通过映射结束计算出的哈希值。 + 通过映射结束计算出的哈希值。 + + + 指定用于创建具体的 实例的方法。 + + + 初始化 类的新实例。 + + + 为由已映射容器的名称指定的容器映射创建生成的视图缓存实例。 + 一个指定生成的视图缓存的 + 概念模型中容器的名称。 + 存储模型中容器的名称。 + + + 定义指定与上下文类型( 的子类)关联的映射视图缓存类型( 的子类)的自定义属性。缓存类型在运行时实例化并用于在相应上下文中检索预先生成的视图。 + + + 创建将上下文类型与映射视图缓存类型相关联的 实例。 + + 的子类。 + 缓存类型的程序集限定的全名。 + + + 创建将上下文类型与映射视图缓存类型相关联的 实例。 + + 的子类。 + + 的子类。 + + + 表示 要使用的自定义复数形式术语 + + + 创建一个新实例 + 表示单数的非 null 或空字符串。 + 表示复数的非 null 或空字符串。 + + + 获取复数。 + + + 获取单数。 + + + 要由实体框架使用的默认复数形式服务实现。此复数形式服务基于英文区域设置。 + + + 构造实体框架中使用的默认复数形式服务的新实例。 + + + 构造实体框架中使用的默认复数形式服务的新实例。 + 要由此服务使用的用户字典项的集合。这些输入信息可以根据用户需要对服务进行自定义。 + + + 返回指定单词的复数形式。 + 输入参数的复数形式。 + 要改为复数形式的单词。 + + + 返回指定单词的单数形式。 + 输入参数的单数形式。 + 要改为单数形式的单词。 + + + 要由 EF 运行时使用的复数形式服务实现此接口。默认情况下,使用 ,但是可以在从 派生的类中设置要使用的复数形式服务。 + + + 使用服务使单词变为复数形式。 + 已变为复数形式的单词 + 要变为复数形式的单词。 + + + 使用服务使单词变为单数形式。 + 已变为单数形式的单词。 + 要变为单数形式的单词。 + + + 表示基于代码的迁移的基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。 + + + 添加将列添加到现有表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列将添加到的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要添加的列的名称。 + 一个指定要添加的列的操作。例如,c =&gt; c.Int(nullable:false, defaultValue:3) + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 此外键引用的列。如果未提供任何值,则将引用主体表的主键。 + 指示是否应针对外键关系配置级联删除的值。如果未提供任何值,则将关闭级联删除。 + 数据库中的外键约束的名称。如果未提供任何值,则将生成唯一名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 此外键引用的列。如果未提供任何值,则将引用主体表的主键。 + 指示是否应针对外键关系配置级联删除的值。如果未提供任何值,则将关闭级联删除。 + 数据库中的外键约束的名称。如果未提供任何值,则将生成唯一名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 主键列。 + 数据库中的主键的名称。如果未提供任何值,则将生成唯一名称。 + 指示此键是否是聚集的主键。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于多列创建新主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 主键列。 + 数据库中的主键的名称。如果未提供任何值,则将生成唯一名称。 + 指示此键是否是聚集的主键。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加更改现有列的定义的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所在的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要更改的列的名称。 + 一个指定列的新定义的操作。例如,c =&gt; c.String(nullable:false, defaultValue:"none") + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加更改存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定存储过程参数的操作。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + 此更改存储过程操作中的参数。无需指定此类型,将根据您提供的 参数推断此类型。 + + + 添加更改存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + + + 添加一项操作以处理表中所定义的注释的更改。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定表中要包含的列的操作。例如,t =&gt; new { Id = t.Int(identity:true), Name = t.String() } + 表中已更改的自定义注释。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + 此操作中的列。无需指定此类型,将根据您提供的 columnsAction 参数推断此类型。 + + + 添加在单列上创建索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要在其上创建索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要在其上创建索引的列的名称。 + 指示此索引是否是唯一索引的值。如果未提供任何值,则将创建非唯一索引。 + 用于数据库中的索引的名称。如果未提供任何值,则将生成唯一名称。 + 指示此索引是否是聚集索引的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加在多列上创建索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要在其上创建索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要在其上创建索引的列的名称。 + 指示此索引是否是唯一索引的值。如果未提供任何值,则将创建非唯一索引。 + 用于数据库中的索引的名称。如果未提供任何值,则将生成唯一名称。 + 指示此索引是否是聚集索引的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定存储过程参数的操作。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + 此存储过程创建操作中的参数。无需指定此类型,将根据您提供的 参数推断此类型。 + + + 添加创建新存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + + + 添加创建新表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 允许进一步配置表创建操作的对象。 + 表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定表中要包含的列的操作。例如,t =&gt; new { Id = t.Int(identity:true), Name = t.String() } + 要创建的表中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + 此表中的列创建表操作。无需指定此类型,将根据您提供的 columnsAction 参数推断此类型。 + + + 添加创建新表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 允许进一步配置表创建操作的对象。 + 表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定表中要包含的列的操作。例如,t =&gt; new { Id = t.Int(identity:true), Name = t.String() } + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + 此表中的列创建表操作。无需指定此类型,将根据您提供的 columnsAction 参数推断此类型。 + + + 要在降级过程中执行的操作。 + + + 添加删除现有列的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除列的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的列的名称。 + 要删除的列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除现有列的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除列的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的列的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束名称删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 数据库中的外键约束的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束面向的列删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束面向的列删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 此外键引用的列。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束面向的列删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于索引名称删除索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的索引的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于索引面向的列删除索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 索引面向的列的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除使用默认名称创建的现有主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除没有默认名称的现有主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的主键的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加一个操作,以删除具有使用指定名称的现有存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的表的各列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 要删除的表的各列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 确定此实例是否等于指定对象。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要与当前实例进行比较的对象。 + + + 返回当前对象的哈希函数。 + 当前对象的哈希函数。 + + + 返回当前实例的运行时类型。 + 当前实例的运行时类型。 + + + 创建当前对象的浅表副本。 + 当前对象的浅表副本。 + + + 添加将存储过程移至新架构的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要将存储过程移到其中的架构。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加将表移至新架构的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 表将移至的架构。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加重命名列的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含要重命名的列的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要重命名的列的名称。 + 列的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加一项重命名索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含要重命名的索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要重命名的索引的名称。 + 索引的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加重命名存储过程的操作。若要更改存储过程的架构,请使用 MoveStoredProcedure 实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 存储过程的新名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加重命名表的操作。若要更改表的架构,请使用 MoveTable。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 表的新名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加执行 SQL 命令的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL。 + 指示是否应在用于迁移过程的事务之外执行 SQL 的值。如果未提供任何值,则将在事务内执行 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加要执行 SQL 文件的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL 文件。相对路径假定相对于当前 AppDomain 的 BaseDirectory。 + 指示是否应在用于迁移过程的事务之外执行 SQL 的值。如果未提供任何值,则将在事务内执行 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加要执行 SQL 资源文件的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL 资源文件的清单资源名称。 + 包含资源文件的程序集。如果未提供,采用调用的程序集。 + 指示是否应在用于迁移过程的事务之外执行 SQL 的值。如果未提供任何值,则将在事务内执行 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加迁移操作。 + 要添加的迁移操作。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 要在升级过程中执行的操作。 + + + 与对给定模型使用迁移相关的配置。通常将创建派生自 的配置类,而不是使用此类。 + + + 初始化 DbMigrationsConfiguration 类的新实例。 + + + 获取或设置指示是否可接受自动迁移期间的数据丢失的值。如果设置为 false,则将在数据丢失可能作为自动迁移一部分出现时引发异常。 + + + 获取或设置指示迁移数据库时是否可使用自动迁移的值。 + + + 获取或设置为迁移搭建基架时要使用的代码生成器。 + + + 获取或设置在迁移中用于单个命令的超时值。null 值指示将使用基础提供程序的默认值。 + + + 获取或设置字符串,它可用于区分属于此配置的迁移和属于其他使用同一数据库的配置的迁移。该属性使来自多个不同模型的迁移能够应用于一个数据库。 + + + 获取或设置表示要迁移的模型的派生 DbContext。 + + + 存储迁移的默认目录。 + + + 获取设置为与给定数据库提供程序结合使用的历史记录上下文工厂。 + 为数据库提供程序设置的历史记录上下文工厂。 + 要为其获取工厂的数据库提供程序的名称。 + + + 获取设置为用于给定数据库提供程序的 SQL 生成器。 + 为数据库提供程序设置的 SQL 生成器。 + 要为之获取 SQL 生成器的数据库提供程序的名称。 + + + 获取或设置包含基于代码的迁移的程序集。 + + + 获取或设置其中存储基于代码的迁移的子目录。请注意,此属性必须设置为 Visual Studio 项目根目录下子目录的相对路径;它不能设置为绝对路径。 + + + 获取或设置用于基于代码的迁移的命名空间。 + + + 添加一个新工厂,以便创建要用于给定数据库提供程序的 实例。 + 要为之设置 SQL 生成器的数据库提供程序的名称。 + 一个工厂,用于为表示默认架构的给定 创建 实例。 + + + 添加新的要同于给定数据库提供程序的 SQL 生成器。 + 要为之设置 SQL 生成器的数据库提供程序的名称。 + 要使用的 SQL 生成器。 + + + 获取或设置用于重写要迁移的数据库的连接的值。 + + + 与对给定模型使用迁移相关的配置。 + 表示此配置应用于的模型的上下文。 + + + 初始化 DbMigrationsConfiguration 类的新实例。 + + + 确定当前配置是否等于指定的对象。 + 如果当前配置等于指定的对象,则为 true;否则为 false。 + 要与当前配置进行比较的对象。 + + + 获取此实例的哈希函数。 + 此实例的哈希函数。 + + + 返回当前实例的运行时类型。 + 当前实例的运行时类型。 + + + 创建当前对象的浅表副本。 + 当前对象的浅表副本。 + + + 在升级到最新迁移以允许更新种子数据后运行。 + 要用于更新种子数据的上下文。 + + + 返回此配置的字符串表示形式。 + 此配置的字符串表示形式。 + + + DbMigrator 用于将现有迁移应用于数据库。DbMigrator 可用于升级和降级到任何给定迁移。若要基于对模型的更改为迁移搭建基架,请使用 + + + 初始化 DbMigrator 类的新实例。 + 用于迁移过程的配置。 + + + 获取要用于迁移过程的配置。 + + + 获取已应用于目标数据库的所有迁移。 + 迁移的列表。 + + + 获取已在配置的迁移程序集中定义的所有迁移。 + 迁移的列表。 + + + 获取已在程序集中定义但尚未应用于目标数据库的所有迁移。 + 迁移的列表。 + + + 表示应用任何迁移前数据库的状态的迁移 Id。 + + + 将目标数据库更新到给定迁移。 + 要升级/降级到的迁移。 + + + + 的一组扩展方法 + + + 调用 SaveChanges 时,按自定义标识表达式添加或更新实体。等效于数据库术语中的“upsert”操作。此方法在使用迁移设置数据的种子时很有用。 + 实体所属的集。 + 指定在确定是应执行添加操作还是更新操作时应使用的属性的表达式。 + 要添加或更新的实体。 + 要添加或更新的实体类型。 + + + 调用 SaveChanges 时,按键添加或更新实体。等效于数据库术语中的“upsert”操作。此方法在使用迁移设置数据的种子时很有用。 + 实体所属的集。 + 要添加或更新的实体。 + 要添加或更新的实体类型。 + + + 用于配置列的帮助器类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。 + + + 创建新的列定义以存储二进制数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 数组数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 指示是否应将此列配置为时间戳的值。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储布尔数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储字节数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 DateTime 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的精度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 DateTimeOffset 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的精度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Decimal 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的数值精度。 + 列的数值刻度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 指示插入过程中数据库是否会为此列生成值的值。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Double 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 指示指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 创建新的列定义以存储 geography 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 geometry 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 创建新的列定义以存储 GUID 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Integer 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Long 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 创建新的列定义以存储 Short 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Single 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储字符串数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 字符串数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 指示列是否支持 Unicode 内容的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Time 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的精度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 表示用于配置参数的类。 + + + 初始化 类的新实例。 + + + 创建新参数定义以传递 Binary 数据。 + 新构造的参数定义。 + 数组数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 用作此参数的默认值的常量值。 + 用作此参数的默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Boolean 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Byte 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 DateTime 数据。 + 新构造的参数定义。 + 参数的精度。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 DateTimeOffset 数据。 + 新构造的参数定义。 + 参数的精度。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Decimal 数据。 + 新构造的参数定义。 + 参数的数值精度。 + 参数的小数位数。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Double 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 创建新参数定义以传递 geography 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 geometry 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 创建新参数定义以传递 GUID 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Integer 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Long 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 创建新参数定义以传递 Short 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Single 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 String 数据。 + 新构造的参数定义。 + 字符串数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 指示参数是否支持 Unicode 内容的值。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Time 数据。 + 新构造的参数定义。 + 参数的精度。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 用于进一步配置从 上的 CreateTable 调用创建的表的帮助器类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 标识表的列的类型。 + + + 初始化 TableBuilder 类的新实例。 + 要进一步配置的表创建操作。 + 其中创建了表的迁移。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 指定要在表上创建的外键约束。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 对象自身,以便多个调用可以链接在一起。 + 该外键约束面向的表的名称。 + 表示外键属性的 lambda 表达式。C#:t =&gt; t.PropertyOne VB.Net:Function(t) t.PropertyOne 如果外键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.PropertyOne, t.PropertyTwo } VB.Net:Function(t) New With { t.PropertyOne, t.PropertyTwo } + 指示是否应在外键约束上配置级联删除的值。 + 此外键约束的名称。如果未提供名称,则将计算默认名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取当前对象的哈希代码。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 指定要在表上创建的索引。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 对象自身,以便多个调用可以链接在一起。 + 表示要编制索引的属性的 lambda 表达式。C#:t =&gt; t.PropertyOne VB.Net:Function(t) t.PropertyOne 如果要对多个属性编制索引,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.PropertyOne, t.PropertyTwo } VB.Net:Function(t) New With { t.PropertyOne, t.PropertyTwo } + 索引的名称。 + 指示此索引是否是唯一索引的值。 + 指示此索引是否是聚集索引的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 指定表的主键。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 对象自身,以便多个调用可以链接在一起。 + 表示要用作主键的属性的 lambda 表达式。C#:t =&gt; t.Id VB.Net:Function(t) t.Id 如果主键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.Id1, t.Id2 } VB.Net:Function(t) New With { t.Id1, t.Id2 } + 主键的名称。如果未提供,则将生成默认名称。 + 指示此键是否是聚集的主键。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 返回当前对象的字符串表示形式。 + 当前对象的字符串表示形式。 + + + 为基于代码的迁移生成 C# 代码。 + + + 初始化 类的新实例。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成用户可查看和编辑的主代码文件。 + 生成的代码。 + 迁移要执行的操作。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定使用 lambda 表达式的一组列名称。 + 要为之生成代码的列。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码。 + 应为其生成代码的操作。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以指定 的定义。 + 要为之生成代码的列定义。 + 生成的代码要添加到的文本编写器。 + 指示定义中是否包含列名称的值。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以指定 的定义。 + 要为之生成代码的参数定义。 + 生成的代码要添加到的文本编写器。 + 指示定义中是否包含列名称的值。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定数据类型未知的列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 使用 生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 要为之生成代码的操作。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 使用迁移元数据生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 为可能为 null 的给定注释值生成代码。默认行为是使用 (如果已注册一个),否则将对注释值调用 ToString。 + 需要代码的注释的名称。 + 要生成的注释值。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 使用相应的转义将标识符用引号引起来以允许它存储在字符串中。 + 保存的标识符。 + 要用引号引起来的标识符。 + + + 从数据库体系结构名称中删除所有无效字符。 + 已擦除的名称。 + 要擦除的名称。 + + + 获取用于给定数据类型的列的类型名称。 + 要在生成的迁移中使用的类型名称。 + 要转换的数据类型。 + + + 生成类特性。 + 生成的代码要添加到的文本编写器。 + 指示是否应为代码隐藏文件生成此类的值。 + + + 为以 WriteClassStart 开头的类生成结束代码。 + 其中应生成代码的命名空间。 + 生成的代码要添加到的文本编写器。 + + + 使用语句和类定义生成命名空间。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + 生成的代码要添加到的文本编写器。 + 生成的类的基类。 + 指示是否应为代码隐藏文件生成此类的值。 + 将为其添加 using 指令的命名空间。如果为 null,则将使用从 GetDefaultNamespaces 返回的命名空间。 + + + 生成属性以在代码隐藏文件中返回源或目标模型。 + 属性的名称。 + 要返回的值。 + 生成的代码要添加到的文本编写器。 + + + 为基于代码的迁移生成代码的提供程序的基类。 + + + 初始化 类的新实例。 + + + 获取所使用的 实例。 + + + 生成应添加到用户项目的代码。 + 生成的代码。 + 迁移的唯一标识符。 + 迁移要执行的操作。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 为生成的所有代码获取必须输出为“using”或“Imports”指令的默认命名空间。 + 命名空间名称的有序列表。 + 指示是否应为代码隐藏文件生成此类的值。 + + + 获取必须输出为可处理给定操作生成的代码的“using”或“Imports”指令的命名空间。 + 命名空间名称的有序列表。 + 将为其生成代码的操作。 + + + 为基于代码的迁移搭建基架以将挂起的模型更改应用于数据库。 + + + 初始化 MigrationScaffolder 类的新实例。 + 要用于搭建基架的配置。 + + + 获取或设置迁移生成的代码中使用的命名空间。默认情况下,此命名空间与传入构造函数的迁移配置对象上的 MigrationsNamespace 相同。对于 VB.NET 项目,此命名空间将需要更新为将项目的根命名空间考虑进去。 + + + 为基于代码的迁移搭建基架以将挂起的所有模型更改应用于数据库。 + 已搭建基架的迁移。 + 要用于已搭建基架的迁移的名称。 + + + 为基于代码的迁移搭建基架以将挂起的所有模型更改应用于数据库。 + 已搭建基架的迁移。 + 要用于已搭建基架的迁移的名称。 + 是否包括模型更改。 + + + 为与之前运行的数据库初始值设定项对应的基于代码的初始迁移搭建基架。 + 已搭建基架的迁移。 + + + 表示已搭建基架并准备写入文件的基于代码的迁移。 + + + 初始化 类的新实例。 + + + 获取或设置应存储在代码隐藏文件中的已搭建基架的迁移代码。 + + + 获取或设置此迁移应保存在其中的用户项目中的子目录。 + + + 获取或设置迁移是否已重新搭建基架。 + + + 获取或设置用于此迁移的编程语言。通常用于生成的代码的文件扩展名。 + + + 获取或设置此迁移的唯一标识符。通常用于生成的代码的文件名。 + + + 获取要添加到迁移资源文件中的字符串资源的字典。 + + + 获取或设置用户可编辑的已搭建基架的迁移代码。 + + + 设计时工具用于运行需要与正在 Visual Studio 中编辑的应用程序进行交互的迁移相关命令的帮助器类。由于应用程序处于编辑状态,因此需要在单独的 AppDomain 中加载程序集以确保始终加载的是最新版本。还将复制启动项目中的 App/Web.config 文件以确保应用所有配置。 + + + 初始化 ToolingFacade 类的新实例。 + 包含要使用的迁移配置的程序集的名称。 + 包含要使用的 DbContext 的程序集的名称。 + 要使用的迁移配置的命名空间限定名称。 + 包含已编译程序集的工作目录。 + 启动项目中的配置文件的路径。 + 启动项目中的应用程序数据目录的路径。通常,App_Data 目录用于 Web 应用程序,或者工作目录用于可执行文件。 + 与要迁移的数据库的连接。如果未提供,则将使用上下文的默认连接。 + + + 释放 类的当前实例所使用的资源。 + + + 释放由外观使用的所有资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 释放由 facade 使用的所有非托管资源。 + + + 获取派生自 的类型的完全限定名。 + 找到的上下文类型。 + 上下文类型的名称。如果为 nul,将返回在程序集中找到的单个上下文类型。 + + + 获取派生自 的所有类型的完全限定名。 + 找到的所有上下文类型。 + + + 获取已应用于数据库的所有迁移的列表。 + 已应用迁移的 ID。 + + + 获取尚未应用于数据库的所有迁移的列表。 + 挂起的迁移的 ID。 + + + 获取或设置要运行以记录信息的操作。 + + + 获取或设置要运行以记录详细信息的操作。 + + + 获取或设置要运行以记录警告的操作。 + + + 为基于代码的迁移搭建基架以应用所有挂起的模型更改。 + 已搭建基架的迁移。 + 生成的迁移的名称。 + 生成的迁移的编程语言。 + 迁移将添加到的项目的根命名空间。 + 是否包括模型更改。 + + + 为与之前运行的数据库初始值设定项对应的基于代码的初始迁移搭建基架。 + 已搭建基架的迁移。 + 生成的迁移的编程语言。 + 迁移将添加到的项目的根命名空间。 + + + 生成 SQL 脚本以在两个迁移之间进行迁移。 + 生成的 SQL 脚本。 + 要从其进行更新的迁移。如果未提供,则将生成更新当前数据库的脚本。 + 要更新到的迁移。如果未提供,则将生成更新到最新迁移的脚本。 + 指示是否可接受自动迁移期间的数据丢失的值。 + + + 将数据库更新到指定的迁移。 + 要迁移到的迁移的 ID。如果未提供,则会将数据库更新到最新迁移。 + 指示是否可接受自动迁移期间的数据丢失的值。 + + + 为基于代码的迁移生成 VB.Net 代码。 + + + 初始化 类的新实例。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成用户可查看和编辑的主代码文件。 + 生成的代码。 + 迁移要执行的操作。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定使用 lambda 表达式的一组列名称。 + 要为之生成代码的列。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码。 + 应为其生成代码的操作。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以指定 的定义。 + 要为之生成代码的列定义。 + 生成的代码要添加到的文本编写器。 + 指示定义中是否包含列名称的值。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为其生成代码的参数模型定义。 + 生成的代码要添加到的文本编写器。 + 为 true 则在定义中包含列名称;否则为 false。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定数据类型未知的列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 使用迁移元数据生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 迁移要执行的操作。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 使用迁移元数据生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 为可能为 null 的给定注释值生成代码。默认行为是使用 (如果已注册一个),否则将对注释值调用 ToString。 + 需要代码的注释的名称。 + 要生成的注释值。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以便重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以便重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 使用相应的转义将标识符用引号引起来以允许它存储在字符串中。 + 保存的标识符。 + 要用引号引起来的标识符。 + + + 从数据库体系结构名称中删除所有无效字符。 + 已擦除的名称。 + 要擦除的名称。 + + + 获取用于给定数据类型的列的类型名称。 + 要在生成的迁移中使用的类型名称。 + 要转换的数据类型。 + + + 生成类特性。 + 生成的代码要添加到的文本编写器。 + 指示是否应为代码隐藏文件生成此类的值。 + + + 为以 WriteClassStart 开头的类生成结束代码。 + 其中应生成代码的命名空间。 + 生成的代码要添加到的文本编写器。 + + + 使用语句和类定义生成命名空间。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + 生成的代码要添加到的文本编写器。 + 生成的类的基类。 + 指示是否应为代码隐藏文件生成此类的值。 + 将为其添加 Imports 指令的命名空间。如果为 null,则将使用从 GetDefaultNamespaces 返回的命名空间。 + + + 生成属性以在代码隐藏文件中返回源或目标模型。 + 属性的名称。 + 要返回的值。 + 生成的代码要添加到的文本编写器。 + + + 此类由 Code First 迁移用于读取和写入数据库中的迁移历史记录。要对迁移历史记录表进行自定义,您可以从此类派生并重写 OnModelCreating。派生的实例可以使用 基于每个迁移配置注册,或使用 全局注册。 + + + 初始化 HistoryContext 类的新实例。如果要创建派生历史记录上下文,通常将公开一个构造函数,接受这同样的这些参数,然后将它们传递给此基构造函数。 + 要用于新的上下文的现有连接。 + 要迁移的模型的默认架构。如果未在 OnModelCreating 中配置另一架构,则此架构将用于迁移历史记录表。 + + + 获取用于查找以前为此上下文生成的模型的键。这用于避免在每次创建新的上下文实例时处理 OnModelCreating 并计算模型。默认情况下,此属性返回默认架构。在多数情况下,您不需要重写此属性。但是,如果您的 OnModelCreating 实现包含导致为同一数据库提供程序和默认架构生成不同模型的条件逻辑,应重写此属性并计算相应的键。 + + + 获取要迁移的模型的默认架构。如果未在 OnModelCreating 中配置另一架构,则此架构将用于迁移历史记录表。 + + + 用于迁移历史记录表的默认名称。 + + + 获取或设置可用于读取和写入 实例的 + + + 应用迁移历史记录表的默认配置。如果重写此方法,建议在应用您的自定义配置前调用这个基实现。 + 定义要创建的上下文的模型的生成器。 + + + 此类由 Code First 迁移用于读取和写入数据库中的迁移历史记录。 + + + 初始化 类的新实例。 + + + 获取或设置一个键,该键表示行应用的上下文。 + + + 获取或设置此行表示的迁移的 ID。 + + + 获取或设置此迁移应用后模型的状态。 + + + 获取或设置创建此条目的实体框架的版本。 + + + 表示自动迁移将导致数据丢失时出现的错误。 + + + 初始化 AutomaticDataLossException 类的新实例。 + + + 初始化 AutomaticDataLossException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 表示在应用最后一个迁移后仍然存在挂起的模型更改并且禁用了自动迁移时出现的错误。 + + + 初始化 AutomaticMigrationsDisabledException 类的新实例。 + + + 初始化 AutomaticMigrationsDisabledException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 显式实现,用于防止某些成员在已搭建基架的迁移的 IntelliSense 中出现。 + + + 将自定义 添加到迁移中。鼓励自定义操作实现人员在 上创建扩展方法,为添加新操作提供 Fluent 样式的 API。 + 要添加的操作。 + + + 提供有关基于代码的迁移的其他元数据。 + + + 获取迁移的唯一标识符。 + + + 获取此迁移运行前模型的状态。 + + + 获取此迁移运行后模型的状态。 + + + 表示 Code First 迁移管道内出现的错误。 + + + 初始化 MigrationsException 类的新实例。 + + + 使用序列化数据初始化 MigrationsException 类的新实例。 + 包含有关正在发生的异常的序列化对象数据的 。 + 包含有关源或目标的上下文信息的 。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 可用于迁移过程的记录器的基类。 + + + 初始化 类的新实例。 + + + 记录信息性消息。 + 要记录的消息。 + + + 记录只应在用户请求详细输出时呈现给他们的一些其他信息。 + 要记录的消息。 + + + 记录用户应了解的警告。 + 要记录的消息。 + + + 当由于某些现有迁移尚未应用到数据库,导致无法执行操作时引发。 + + + 初始化 MigrationsPendingException 类的新实例。 + + + 初始化 MigrationsPendingException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsPendingException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 表示包装核心 的修饰器的基类。 + + + 初始化 类的新实例。 + 此修饰器将包装的迁移程序。 + + + 获取要用于迁移过程的配置。 + 要用于迁移过程的过程。 + + + 获取已应用于数据库的迁移的列表。 + 迁移 ID 的列表。 + + + 获取程序集中定义的迁移的列表。 + 迁移 ID 的列表。 + + + 获取尚未应用于数据库的挂起的迁移的列表。 + 迁移 ID 的列表。 + + + 将目标数据库更新到最新迁移。 + + + 将目标数据库更新到给定迁移。 + 要升级/降级到的迁移。 + + + 在迁移操作期间提供日志记录的修饰器。 + + + 初始化 MigratorLoggingDecorator 类的新实例。 + 此修饰器将包装的迁移程序。 + 消息将写入到的记录器。 + + + 生成 SQL 脚本而不是将更改应用于数据库的修饰器。使用此修饰器包装 将防止 将任何更改应用于目标数据库。 + + + 初始化 MigratorScriptingDecorator 类的新实例。 + 此修饰器将包装的迁移程序。 + + + 生成更新数据库的脚本。 + 生成的 SQL 脚本。 + 要从其进行更新的迁移。如果未提供,则将生成更新当前数据库的脚本。 + 要更新到的迁移。如果未提供,则将生成更新到最新迁移的脚本。 + + + 表示将添加到表中的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AddColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列应添加到的表的名称。 + 将添加的列的详细信息。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将添加的列的详细信息。 + + + 获取表示删除已添加列的操作。 + + + 获取一个值,该值指示更改是否具有破坏性。 + 如果更改具有破坏性,则为 true;否则为 false。 + + + 获取列应添加到的表的名称。 + + + 表示将添加到表中的外键约束。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AddForeignKeyOperation 类的新实例。还应填充 PrincipalTable、PrincipalColumns、DependentTable 和 DependentColumns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取或设置指示是否应在外键约束上配置级联删除的值。 + + + 获取在外键列上创建索引的操作。 + 添加索引的操作。 + + + 获取删除外键约束的操作。 + + + 获取或设置一个值,该值指示此更改是否将导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 外键约束应面向的列的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 表示向表添加主键。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AddPrimaryKeyOperation 类的新实例。还应填充 Table 和 Columns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除主键的操作。 + + + 获取或设置此键是否为聚集主键。 + + + 表示更改现有列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AlterColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所属表的名称。 + 列应更改为的内容的详细信息。 + 指示此更改是否会导致数据丢失的值。 + 还原对此列的更改的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 AlterColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所属表的名称。 + 列应更改为的内容的详细信息。 + 指示此更改是否会导致数据丢失的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取列的新定义。 + + + 获取表示还原更改的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此更改是否会导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 获取列所属表的名称。 + + + 表示更改现有存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。 + SQL 中表示的存储过程的主体。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。始终返回 + + + 表示对表中的自定义注释所做的更改。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 其中注释已更改的表的名称。 + 表中已更改的自定义注释。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表中已更改的自定义注释。 + 表中已更改的自定义注释。 + + + 获取要包括在表中的注释已更改的列。 + 要包括在其注释已更改的表中的列。 + + + 获取此操作的反向操作,以便注释将在应用此操作之前恢复原样。 + 此操作的方向操作,以便注释将在应用此操作之前恢复原样。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取其中注释已更改的表的名称。 + 其中注释已更改的表的名称。 + + + 表示有关列的信息。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 ColumnModel 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 此列的数据类型。 + + + 初始化 ColumnModel 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 此列的数据类型。 + 有关数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 获取或设置列中已更改的自定义注释。 + + + 获取与此列的数据库类型对应的 CLR 类型的默认值。 + + + 获取与此列的数据库类型对应的 CLR 类型。 + + + 获取或设置指示此列的值是否由使用标识模式的数据库生成的值。 + + + 确定此列的数据类型是否窄于另一列的。用于确定将提供的列定义更改为此定义是否会导致数据丢失。 + 如果此列的数据类型更窄,则为 True。 + 要与之比较的列。 + 正使用的数据库提供程序的详细信息。 + + + 获取或设置指示此列是否可存储 null 值的值。 + + + 获取或设置一个值,指示是否应将此属性模型配置为时间戳。 + + + 表示创建数据库索引。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 CreateIndexOperation 类的新实例。还应填充 Table 和 Columns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除此索引的操作。 + + + 获取或设置此索引是否为聚集索引。 + + + 获取或设置一个值,该值指示此更改是否将导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 获取或设置指示此索引是否是唯一索引的值。 + + + 要向数据库中添加新存储过程的迁移操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。 + SQL 中表示的存储过程的主体。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除存储过程的操作。 + + + 表示创建表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要创建的表的名称。 + 要创建的表中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要创建的表的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取要创建的表中存在的自定义注释。 + 要创建的表中存在的自定义注释。 + + + 获取要包含在新表中的列。 + 要包含在新表中的列。 + + + 获取删除表的操作。 + 删除表的操作。 + + + 获取指示此操作是否会导致数据丢失的值。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要创建的表的名称。 + 要创建的表的名称。 + + + 获取或设置新表的主键。 + 新表的主键。 + + + 表示将从表中删除的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 要删除的列中存在的自定义注释。可能为 null 或为空。 + 表示还原删除操作的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 要删除的列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 表示还原删除操作的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表示还原删除列的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要删除的列的名称。 + + + 获取要删除的列中存在的自定义注释。 + + + 获取应从中删除列的表的名称。 + + + 表示将从表中删除的外键约束。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表示还原删除外键约束的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 类的新实例。还应填充 PrincipalTable、DependentTable 和 DependentColumns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除外键列上关联的索引的操作。 + 删除索引的操作。 + + + 获取表示还原删除外键约束的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + 表示还原删除外键约束的操作。 + + + 获取一个值,该值指示更改是否具有破坏性。 + 如果更改具有破坏性,则为 true;否则为 false。 + + + 表示删除现有索引。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropIndexOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表示还原删除索引的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropIndexOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表示还原删除索引的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 表示从表中删除主键。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropPrimaryKeyOperation 类的新实例。还应填充 Table 和 Columns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 在更改迁移历史记录表时使用,以便可以重新构建表,而不是简单地删除和添加主键。 + 用于迁移历史记录表的创建表操作。 + + + 获取添加主键的操作。 + + + 从数据库中删除存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的存储过程的名称。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。始终返回 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取要删除的存储过程的名称。 + 要删除的存储过程的名称。 + + + 表示删除现有表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 要删除的表的列中存在的自定义注释。可能为 null 或为空。 + 表示还原删除表的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 要删除的表的列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 表示还原删除表的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表示还原删除表的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要删除的表的名称。 + + + 获取要删除的表中存在的自定义注释。 + + + 获取要删除的表的各列中的自定义注释。 + + + 影响外键约束的更改的基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 ForeignKeyOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 外键列的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置其中存在外键列的表的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取指示是否为此外键约束提供了特定名称的值。 + + + 获取或设置此外键约束的名称。如果未提供名称,则将计算默认名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置外键约束面向的表的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 表示对迁移历史记录表的 DML 更改的操作。迁移历史记录表用于存储已应用于数据库的迁移的日志。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 HistoryOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表示要应用于历史记录表的操作的命令目录树序列。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 表示要应用于历史记录表的操作的命令序列。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 影响索引的操作的常规基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 IndexOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 根据提供的列名创建一个默认索引名称。 + 默认索引名称。 + 用于创建默认索引名称的列名。 + + + 获取已编制索引的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取指示是否为此索引提供了特定名称的值。 + + + 获取或设置此索引的名称。如果未提供名称,则将计算默认名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置此索引所属的表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 表示修改数据库架构的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 MigrationOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取提供程序可能会处理的其他参数。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取将还原此操作的操作。 + + + 获取指示此操作是否会导致数据丢失的值。 + + + 表示将存储过程移动到数据库中的新架构。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的存储过程的名称。 + 存储过程的新架构。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取要移动的存储过程的名称。 + 要移动的存储过程的名称。 + + + 获取存储过程的新架构。 + 存储过程的新架构。 + + + 表示将表从一个架构移至另一个架构。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 MoveTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的表的名称。 + 要将表移至的架构的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 在更改迁移历史记录表时使用,以便可以将数据移到新表。 + 模型的上下文键。 + + + 在更改迁移历史记录表时使用,以便可以重新构建表,而不是简单地删除和添加主键。 + 用于迁移历史记录表的创建表操作。 + + + 获取将表移回其原始架构的操作。 + + + 获取一个值,该值指示此更改是否将导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 获取一个指示表是否为系统表的值。 + 如果表是系统表,则为 true;否则为 false。 + + + 获取要移动的表的名称。 + + + 获取要将表移至的架构的名称。 + + + 表示一项可能因不受目标数据库提供程序的支持而无法执行的迁移操作。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 表示有关参数的信息。 + + + 使用指定类型初始化 ParameterModel 类的新实例。 + 此参数的数据类型。 + + + 使用指定类型和类型用法初始化 ParameterModel 类的新实例。 + 此参数的数据类型。 + 有关数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 获取或设置一个指示此实例是否为 out 参数的值。 + 如果此实例是 out 参数,则为 true;否则为 false。 + + + 用于表示影响主键的操作的常规基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 PrimaryKeyOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 返回主键的默认名称。 + 默认主键名称。 + 目标表名。 + + + 获取组成主键的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取指示是否为此主键提供了特定名称的值。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取或设置此主键的名称。如果未提供名称,则将计算默认名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置包含主键的表的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 影响存储过程的迁移操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。 + SQL 中表示的存储过程的主体。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取 SQL 中表示的存储过程的主体。 + SQL 中表示的存储过程的主体。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取存储过程的名称。 + 存储过程的名称。 + + + 获取存储过程的参数。 + 存储过程的参数。 + + + 表示有关实体属性的信息。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 PropertyModel 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 此属性模型的数据类型。 + 有关数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 获取或设置要用作此属性模型的默认值的常量值。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置用作此属性模型的默认值的 SQL 表达式。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置一个指示此属性模型的长度是否固定的值。仅对数组数据类型有效。 + + + 获取或设置一个指示此属性模型是否支持 Unicode 字符的值。仅对文本数据类型有效。 + + + 获取或设置此属性模型的最大长度。仅对数组数据类型有效。 + + + 获取或设置属性模型的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置此属性模型的精度。仅对十进制数据类型有效。 + + + 获取或设置此属性模型的小数位数。仅对十进制数据类型有效。 + + + 获取或设置要用于此属性模型的提供程序特定数据类型。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取此属性模型的数据类型。 + + + 获取有关此属性模型的数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 表示重命名现有列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 RenameColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所属表的名称。 + 要重命名的列的名称。 + 列的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取还原重命名的操作。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要重命名的列的名称。 + + + 获取列的新名称。 + + + 获取列所属表的名称。 + + + 表示现有索引的重命名操作。 + + + 初始化 RenameIndexOperation 类的新实例。 + 索引所属表的名称。 + 要重命名的索引的名称。 + 索引的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取还原索引原来名称的操作。 + 还原索引原来名称的操作。 + + + 获取是否重命名索引对操作具有破坏性。 + 如果重命名索引对操作具有破坏性,则为 true;否则为 false。 + + + 获取要重命名的索引的名称。 + 要重命名的索引的名称。 + + + 获取索引的新名称。 + 索引的新名称。 + + + 获取索引所属表的名称。 + 索引所属表的名称。 + + + 表示重命名数据库中的一个存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的存储过程的名称。 + 存储过程的新名称。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取要重命名的存储过程的名称。 + 要重命名的存储过程的名称。 + + + 获取存储过程的新名称。 + 存储过程的新名称。 + + + 表示重命名现有表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 RenameTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的表的名称。 + 表的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取还原重命名的操作。 + + + 获取一个值,该值指示更改是否具有破坏性。 + 如果更改具有破坏性,则为 true;否则为 false。 + + + 获取要重命名的表的名称。 + + + 获取表的新名称。 + + + 表示要直接对目标数据库执行的提供程序特定 SQL 语句。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 SqlOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要执行的 SQL。 + + + 获取或设置指示是否应在用于进行迁移过程事务的事务范围外执行此语句的值。如果设置为 true,则在迁移过程失败时,不会回滚此操作。 + + + 在对更新数据库操作编写脚本以存储已对数据库执行的操作时使用。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 用于确定是否需要对数据库应用此迁移的查询。这用于生成可在任何版本中对数据库运行的幂等 SQL 脚本。 + + + 为此更新数据库操作添加迁移。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 迁移的 ID。 + 迁移所应用的各项操作。 + + + 用于确定是否需要对数据库应用此迁移的查询。这用于生成可在任何版本中对数据库运行的幂等 SQL 脚本。 + + + 获取一个值,以指示其中任何操作是否会导致数据丢失。 + + + 获取在更新数据库期间应用的迁移。 + 在更新数据库期间应用的迁移。 + + + 表示要应用于数据库的迁移。 + + + 获取迁移的 ID。 + 迁移的 ID。 + + + 获取此迁移所应用的各项操作。 + 此迁移所应用的各项操作。 + + + 将提供程序不可知的迁移操作转换为数据库提供程序特定 SQL 命令的提供程序的常规基类。 + + + 初始化 类的新实例。 + + + 使用指定 中的 Facet 为指定 生成存储类型用法。 + 特定于存储的 TypeUsage + 存储类型的名称。 + 目标属性。 + + + 将一组迁移操作转换为数据库提供程序特定 SQL。 + 为执行迁移操作而要执行的 SQL 语句的列表。 + 要转换的操作。 + 表示将面向的数据库版本的标记。 + + + 为存储过程生成 SQL 主体。 + 存储过程的 SQL 主体。 + 表示针对插入、更新或删除操作的命令的命令目录树。 + 影响了参数名称的行。 + 提供程序清单标记。 + + + 获取或设置提供程序清单。 + 提供程序清单。 + + + 表示已转换为 SQL 语句的迁移操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。 + + + 为数据库提供程序获取或设置批处理终止符。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 数据库提供程序的批处理终止符。 + + + 获取或设置为执行此迁移操作而要执行的 SQL。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置指示是否应在用于进行迁移过程事务的事务范围外执行此语句的值。如果设置为 true,则在迁移过程失败时,不会回滚此操作。 + + + 相同,但以部分信任模式运行,添加所生成缩进字符串的显式缓存,同时将仅包含 \r\n 或 \n 的字符串的写入识别为写入行,以确保在下一行正确缩进。 + + + 使用指定的文本编写器和默认 Tab 字符串,初始化 IndentedTextWriter 类的新实例。请注意,传递到此构造函数的编写器必须使用 属性指定的 + 用于输出的 。 + + + 使用指定的文本编写器和 Tab 字符串,初始化 IndentedTextWriter 类的新实例。请注意,传递到此构造函数的编写器必须使用 属性指定的 + 用于输出的 。 + 用于缩进的 Tab 字符串。 + + + 关闭正在向其写入的文档。 + + + 指定将由基础 TextWriter 使用的区域性。此静态属性为只读。请注意,传递到 的构造函数之一的任何编写器都必须使用此相同的区域性。区域性为 + + + 生成表示当前新行缩进级别的字符串。 + 一个空字符串,或者是包含所指定 Tab 字符串 .Indent 级别值的字符串。 + + + 指定默认 Tab 字符串。此字段为常数。 + + + 获取供文本编写器使用的编码。 + 指示供文本编写器使用的编码的 + + + 刷新流。 + + + 获取或设置要缩进的空格数。 + 要缩进的空格数。 + + + 获取要使用的 + 要使用的 + + + 获取或设置要使用的换行符。 + 要使用的换行符。 + + + 根据 属性为每个缩进级别输出一次 Tab 字符串。 + + + 将 Boolean 值的文本表示形式写入文本流。 + 要写入的 Boolean 值。 + + + 将字符写入文本流。 + 要写入的字符。 + + + 将字符数组写入文本流。 + 要写入的字符数组。 + + + 将字符的子数组写入文本流。 + 要从中写出数据的字符数组。 + 在缓冲区中开始索引。 + 要写入的字符数。 + + + 将 Double 的文本表示形式写入文本流。 + 要写入的 double。 + + + 将整数的文本表示形式写入文本流。 + 要写入的整数。 + + + 将 8 字节整数的文本表示形式写入文本流。 + 要写入的 8 字节整数。 + + + 将对象的文本表示形式写入文本流。 + 要写入的对象。 + + + 将 Single 的文本表示形式写入文本流。 + 要写入的 single。 + + + 将指定的字符串写入文本流。 + 要写入的字符串。 + + + 使用与指定语义相同的语义写出已格式化的字符串。 + 格式化字符串。 + 要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出已格式化的字符串。 + 要使用的格式化字符串。 + 第一个要写入已格式化字符串的对象。 + 第二个要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出已格式化的字符串。 + 要使用的格式化字符串。 + 要输出的参数数组。 + + + 写入一个行结束符。 + + + 将后跟行结束符的 Boolean 的文本表示形式写入文本流。 + 要写入的 Boolean。 + + + 将后跟行结束符的字符写入文本流。 + 要写入的字符。 + + + 将后跟行结束符的字符数组写入文本流。 + 要写入的字符数组。 + + + 将后跟行结束符的字符子数组写入文本流。 + 要从中写出数据的字符数组。 + 在缓冲区中开始索引。 + 要写入的字符数。 + + + 将后跟行结束符的 Double 的文本表示形式写入文本流。 + 要写入的 double。 + + + 将后跟行结束符的整数的文本表示形式写入文本流。 + 要写入的整数。 + + + 将后跟行结束符的 8 字节整数的文本表示形式写入文本流。 + 要写入的 8 字节整数。 + + + 将后跟行结束符的对象的文本表示形式写入文本流。 + 要写入的对象。 + + + 将后跟行结束符的 Single 的文本表示形式写入文本流。 + 要写入的 single。 + + + 将后跟行结束符的指定字符串写入文本流。 + 要写入的字符串。 + + + 使用与指定语义相同的语义写出后跟行结束符的已格式化字符串。 + 格式化字符串。 + 要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出后跟行结束符的已格式化字符串。 + 要使用的格式化字符串。 + 第一个要写入已格式化字符串的对象。 + 第二个要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出后跟行结束符的已格式化字符串。 + 要使用的格式化字符串。 + 要输出的参数数组。 + + + 将后跟行结束符的 UInt32 的文本表示形式写入文本流。 + 要输出的 UInt32。 + + + 将指定字符串写入无制表符的行。 + 要写入的字符串。 + + + 允许为模型中的复杂类型执行配置。可以通过对 使用 ComplexType 方法来获取 ComplexTypeConfiguration,也可以通过对 使用 Configurations 属性来注册从 ComplexTypeConfiguration 派生的自定义类型。 + 要配置的复杂类型。 + + + 初始化 ComplexTypeConfiguration 的一个新实例 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与指定对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 特定类型的哈希函数。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 ComplexTypeConfiguration 实例,以便多个调用可以链接在一起。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要忽略的属性的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 允许为模型中的实体类型执行配置。可以通过对 使用 Entity 方法来获取 EntityTypeConfiguration,也可以通过对 使用 Configurations 属性来注册从 EntityTypeConfiguration 派生的自定义类型。 + 要配置的实体类型。 + + + 初始化 EntityTypeConfiguration 的一个新实例 + + + 返回指定的配置模型是否等于当前配置模型。 + 如果指定的配置模型等于当前配置模型,则为 true;否则为 false。 + 要与当前对象进行比较的模型。 + + + 返回指定配置模型的哈希函数。 + 指定模型生成器的哈希函数。 + + + 获取当前模型配置的类型。 + 当前模型配置的类型。 + + + 配置要用于此实体类型的实体集名称。只能为每个集中的基类型配置实体集名称。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 实体集的名称。 + + + 配置此实体类型的主键属性。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 表示要用作主键的属性的 lambda 表达式。C#:t =&gt; t.Id VB.Net:Function(t) t.Id 如果主键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.Id1, t.Id2 } VB.Net:Function(t) New With { t.Id1, t.Id2 } + 键的类型。 + + + 从此实体类型配置一对多关系。 + 可用于进一步配置关系的配置对象。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 关系另一端的实体的类型。 + + + 从此实体类型配置可选关系。实体类型的实例将能保存到数据库,而无需指定此关系。数据库中的外键可为 null。 + 可用于进一步配置关系的配置对象。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 关系另一端的实体的类型。 + + + 通过此实体类型配置必需关系。除非指定此关系,否则实体类型的实例将无法保存到数据库。数据库中的外键不可为 null。 + 可用于进一步配置关系的配置对象。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 关系另一端的实体的类型。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要忽略的属性的类型。 + + + 允许与派生的实体类型映射到数据库架构的方式相关的高级配置。Map 调用是累加性的,后续调用不会重写已通过 Map 执行的配置。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 执行配置的操作。 + 要配置的派生实体类型。 + + + 允许与此实体类型映射到数据库架构的方式相关的高级配置。默认情况下,任何配置都还会应用于从此实体类型派生的任何类型。可以使用配置派生类型的 Map 的重载,或使用派生类型的 EntityTypeConfiguration,来配置派生类型。可以使用多个 Map 调用,在多个表之间拆分实体的属性。Map 调用是累加性的,后续调用不会重写已通过 Map 执行的配置。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 执行配置的操作。 + + + 将此类型配置为使用插入、更新和删除的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个配置实例,以便可以链接多个调用。 + + + 将此类型配置为使用插入、更新和删除的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 返回模型配置的字符串表示形式。 + 模型生成器的字符串表示形式。 + + + 配置此实体类型映射到的表名。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置此实体类型映射到的表名。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的数据库架构。 + + + 在模型创建过程中,生成无效模型时,由 引发的异常。 + + + 初始化 ModelValidationException 的一个新实例 + + + 使用序列化信息和流下文初始化 类的新实例。 + 序列化信息。 + 流上下文。 + + + 初始化 ModelValidationException 的一个新实例 + 异常消息。 + + + 初始化 ModelValidationException 的一个新实例 + 异常消息。 + 内部异常。 + + + 用于执行关系配置的基类。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 初始化 类的新实例。 + + + 允许为用于修改关系的存储过程执行配置。 + 将从中配置关系的实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 属性的类型。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 将属性配置为具有指定的最大长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。设置“null”将从属性中移除任何最大长度限制。 + + + 将属性配置为用作开放式并发标记。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。默认情况下, 属性是可选的。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为数据库中的行版本。实际数据类型将因使用的数据库提供程序而异。将属性设置为行版本会自动将属性配置为开放式并发标记。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可变长度。默认情况下, 属性为可变长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置可以支持级联删除功能的关系。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 将级联删除配置为对关系启用。 + + + 配置是否对关系启用级联删除。 + 指示是否启用级联删除的值。 + + + 允许实体和复杂类型的派生配置类向 注册。 + + + 添加到 中。只能为模型中的每个类型添加一个 + 同一个 ConfigurationRegistrar 实例,以便多个调用可以链接在一起。 + 要添加的复杂类型配置 + 要配置的复杂类型。 + + + 添加到 中。只能为模型中的每个类型添加一个 + 同一个 ConfigurationRegistrar 实例,以便多个调用可以链接在一起。 + 要添加的实体类型配置。 + 要配置的实体类型。 + + + 发现从给定的程序集中的 继承的所有类型并将每个发现的类型的实例添加到此注册器。 + 同一个 ConfigurationRegistrar 实例,以便多个调用可以链接在一起。 + 包含要添加的模型配置的程序集。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 创建一个约定,配置将用于在数据库中删除实体的存储过程。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取此实例的基础类型。 + 此实例的基础类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 创建一个约定,配置将用于在数据库中插入实体的存储过程。 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 获取当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取与配置关联的类型。 + 与配置关联的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性。 + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性的名称。 + 结果列的名称。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 表示一个配置用于在数据库修改实体的存储过程的约定。 + + + 创建一个约定,配置将用于在数据库中修改实体的存储过程。 + + + 配置用于删除实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 指定此配置是否等于特定对象。 + 如果此配置等于特定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此配置关联的哈希代码。 + 与此配置关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于插入实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 返回 类的字符串表示形式。 + + 类的字符串表示形式。 + + + 配置用于更新实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 标志实体类型或复杂类型的基元属性。 + + + 获取该属性的 + 此属性的 + + + 指定此实例是否等于另一个对象。 + 如果此实例等于另一个对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。 + + + 将属性配置为具有指定的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + 属性的最大长度。 + + + 配置存储过程中用于此属性的参数的名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 参数的名称。 + + + 配置 属性的精度。如果数据库提供程序不支持列的数据类型的精度,则忽略该值。 + 同一个 实例,以便多个调用可以链接在一起。 + 属性的精度。 + + + 配置 属性的精度和小数位数。 + 同一个 实例,以便多个调用可以链接在一起。 + 属性的精度。 + 属性的小数位数。 + + + 将属性配置为用作开放式并发标记。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将此属性配置为实体类型的主键的一部分。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为数据库中的行版本。实际数据类型将因使用的数据库提供程序而异。将属性设置为行版本会自动将属性配置为开放式并发标记。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为支持 Unicode 字符串内容。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 配置属性是否支持 Unicode 字符串内容。 + 同一个 实例,以便多个调用可以链接在一起。 + 指示属性是否支持 Unicode 字符串内容的值。 + + + 将属性配置为可变长度。属性在默认情况下为可变长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 允许自定义 实例使用的约定。可在 System.Data.Entity.ModelConfiguration.Conventions 命名空间中找到默认约定。 + + + 启用 的约定。 + 要启用的约定类型。 + + + 启用 的一个或多个约定。 + 要启用的约定。 + + + 启用 的约定。在指定一个约定后将运行此约定。 + 要启用的约定。 + 在其之后将运行启用的约定的约定类型。 + + + 启用 的配置约定。在指定一个约定前将运行此约定。 + 要启用的约定。 + 在其之前将运行启用的约定的约定类型。 + + + 发现给定程序集中的所有约定并将它们添加到 + 包含要添加的约定的程序集。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 禁用 的约定。可在 System.Data.Entity.ModelConfiguration.Conventions 命名空间中找到可移除的默认约定。 + 要禁用的约定的类型。 + + + 禁用 的一个或多个约定。 + 要禁用的约定。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 允许为模型中的实体类型执行配置。通过轻型约定可使用此配置功能。 + + + 获取此实体类型的 + 此实体类型的 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置要用于此实体类型的实体集名称。只能为每个集中的基类型配置实体集名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 实体集的名称。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性的名称。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性的名称。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 从模型中排除此实体类型,使其不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + 要配置的属性。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + 要配置的属性的名称。 + + + 将此实体类型更改为复杂类型。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将此类型配置为使用插入、更新和删除的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个配置实例,以便可以链接多个调用。 + + + 将此类型配置为使用插入、更新和删除的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 配置在此类型上定义的属性。 + 可用于配置属性的配置对象。 + 要配置的属性。 + + + 配置在此类型上定义的属性。 + 可用于配置属性的配置对象。 + 要配置的属性的名称。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的数据库架构。 + + + 允许为模型中的实体类型执行配置。通过轻型约定可使用此配置功能。 + 实体类型继承的类型。 + + + 获取此实体类型的 + 此实体类型的 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置要用于此实体类型的实体集名称。只能为每个集中的基类型配置实体集名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 实体集的名称。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 表示要用作主键的属性的 lambda 表达式。C#:t =&gt; t.Id VB.Net:Function(t) t.Id 如果主键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.Id1, t.Id2 } VB.Net:Function(t) New With { t.Id1, t.Id2 } + 键的类型。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 进行序列化的字符串或其他类型。 + + + 从模型中排除此实体类型,使其不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要忽略的属性的类型。 + + + 将此实体类型更改为复杂类型。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将此类型配置为使用插入、更新和删除的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个配置实例,以便可以链接多个调用。 + + + 将此类型配置为使用插入、更新和删除的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 配置在此类型上定义的属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的数据库架构。 + + + 创建一个约定,配置将用于在数据库中更新实体的存储过程。 + + + 确定此实例是否与指定对象相同。 + 如果此实例与指定对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 返回与当前实例关联的类型。 + 与当前实例关联的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名称的当前值。 + 参数名称的原始值。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性。 + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性的名称。 + 结果列的名称。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 配置属性的精度。如果数据库提供程序不支持列的数据类型的精度,则忽略该值。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的精度。 + + + 将属性配置为用作开放式并发标记。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。默认情况下, 属性是必需的。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 配置属性的精度和小数位数。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的精度。 + 属性的小数位数。 + + + 将属性配置为用作开放式并发标记。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。默认情况下, 属性是必需的。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 允许为用于删除实体的存储过程执行配置。 + 可使用存储过程进行删除的实体的类型。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 检索当前实例的类型。 + 当前实例的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 配置可以支持在对象模型中公开的外键属性的关系。通过 Code First Fluent API 可使用此配置功能,请参见 + 从属实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 将关系配置为使用在对象模型中公开的外键属性。如果未在对象模型中公开外键属性,则使用 Map 方法。 + 可用于进一步配置关系的配置对象。 + 表示要用作外键的属性的 lambda 表达式。如果外键由多个属性组成,请指定包括这些属性的匿名类型。在使用多个外键属性时,指定这些属性的顺序必须与为主体实体类型配置主键属性的顺序相同。 + 键的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置实体类型或实体类型中属性子集的表和列映射。通过 Code First Fluent API 可使用此配置功能,请参见 + 要映射的实体类型。 + + + 初始化 类的新实例。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 重新映射从基类型继承的所有属性。当将派生类型配置为映射到单独的表时,这会使所有属性都包含在该表中,而不仅仅是非继承的属性。这称为“每个具体类型一张表”(TPC) 映射。 + 同一个配置实例,以便可以链接多个调用。 + + + 配置将包含在此映射片段中的属性。如果未调用此方法,则将配置尚未包含在映射片段中的所有属性。 + 针对包含要映射的属性的匿名类型的 lambda 表达式。C#:t =&gt; new { t.Id, t.Property1, t.Property2 } VB.Net:Function(t) New With { p.Id, t.Property1, t.Property2 } + 包含要映射的属性的匿名类型。 + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 配置用于区分继承层次结构中各个类型的鉴别器条件。 + 用于进一步配置鉴别器条件的配置对象。 + 表示要用于鉴别各个类型的属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要用于鉴别各个类型的属性的类型。 + + + 配置用于区分继承层次结构中的各个类型的鉴别器列。 + 用于进一步配置鉴别器列和值的配置对象。 + 鉴别器列的名称。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置要映射到的表名。 + 同一个配置实例,以便可以链接多个调用。 + 表的名称。 + + + 配置要映射到的表名和架构。 + 同一个配置实例,以便可以链接多个调用。 + 表的名称。 + 表的架构。 + + + 配置未在对象模型中公开外键属性的关系的表和列映射。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的 。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 在已使用 配置的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 已使用 HasKey 方法配置的列的名称。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置外键的列名。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 外键列名。在使用多个外键属性时,必须按照为目标实体类型配置主键属性的顺序来指定这些属性。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置外键列所在表的名称。指定的表必须已针对实体类型进行映射。如果要外键位于其自己的表中,则对 使用 Map 方法来执行实体拆分,以创建只有主键属性的表。然后可以使用此方法将外键添加到表。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置外键列所在表的名称和架构。指定的表必须已针对实体类型进行映射。如果要外键位于其自己的表中,则对 使用 Map 方法来执行实体拆分,以创建只有主键属性的表。然后可以使用此方法将外键添加到表。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的架构。 + + + 配置只能支持未在对象模型中公开的外键属性的关系。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象比较的对象 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 将关系配置为使用未在对象模型中公开的外键属性。可通过指定配置操作来自定义列和表。如果指定了空的配置操作,则约定将生成列名。如果在对象模型中公开了外键属性,则使用 HasForeignKey 方法。并非所有关系都支持在对象模型中公开外键属性。 + 可用于进一步配置关系的配置对象。 + 配置外键列和表的操作。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 表示允许为用于插入实体的存储过程执行配置。 + 可使用存储过程进行插入的实体的类型。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取此实例的类型。 + 此实例的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 用于为实体类型或复杂类型配置具有长度方面的列。此配置功能由 Code First Fluent API 公开,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 将列配置为具有指定的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + 列的最大长度。将值设置为 null 将从列中移除任何最大长度限制,并且会将默认长度用于数据库列。 + + + 将列配置为固定长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将列配置为允许使用数据库提供程序支持的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将列配置为可变长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 用于为实体类型或复杂类型配置具有长度方面的属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 将属性配置为具有指定的最大长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。设置为“null”将从属性中移除任何最大长度限制,并且会将默认长度用于数据库列。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可变长度。属性在默认情况下为可变长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 通过实体类型配置多关系。 + 关系源自的实体类型。 + 作为关系目标的实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 将关系配置为 many:many,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 many:many,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 many:optional,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 many:optional,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 many:required,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 many:required,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置 many:many 关系的表和列映射。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 在联接表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置左外键的列名。左外键指向在 HasMany 调用中指定的导航属性的父实体。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 外键列名。在使用多个外键属性时,必须按照为目标实体类型配置主键属性的顺序来指定这些属性。 + + + 配置右外键的列名。右外键指向在 WithMany 调用中指定的导航属性的父实体。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 外键列名。在使用多个外键属性时,必须按照为目标实体类型配置主键属性的顺序来指定这些属性。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置关系的联接表名。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置关系的联接表名和架构。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的架构。 + + + 允许为用于修改多对多关系的存储过程执行配置。 + 将从中配置关系的实体的类型。 + 关系另一端的目标实体的类型。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 检索此当前实例的类型。 + 此当前实例的类型。 + + + 设置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 过程的名称。 + + + 设置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 过程的名称。 + 架构的名称。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 允许为用于修改多对多关系的存储过程执行配置。 + 将从中配置关系的实体的类型。 + 关系另一端的目标实体的类型。 + + + 配置用于删除关系的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于插入关系的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 配置 many:many 关系。通过 Code First Fluent API 可使用此配置功能,请参见 + 在 HasMany 调用中指定的导航属性的父实体类型。 + 在 WithMany 调用中指定的导航属性的父实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于存储关系的外键列和表。 + 同一个 实例,以便多个调用可以链接在一起。 + 配置外键列和表的操作。 + + + 配置将用于修改此关系的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 配置将用于修改此关系的存储过程。 + 同一个 实例,以便多个调用可以链接在一起。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 执行用于在数据库中修改实体的存储过程的配置。 + + + 允许为用于修改实体的存储过程执行配置。 + 可使用存储过程进行修改的实体的类型。 + + + 配置用于删除实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 指定此实例是否等同于指定对象。 + 如果此实例等同于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于插入实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 配置用于更新实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 配置一个条件,该条件用于基于赋给属性的值来区分继承层次结构中的各个类型。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 将条件配置为属性中需要值。对于未向存储此属性的列赋值的行,假定这些行属于此实体类型的基类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 通过实体类型配置可选关系。 + 关系源自的实体类型。 + 作为关系目标的实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 将关系配置为 optional:many,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:many,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 optional:optional,且在关系的另一端无导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:optional,且在关系的另一端有导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 optional:optional,且在关系的另一端无导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:optional,且在关系的另一端有导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。 + + + 将关系配置为 optional:required,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:required,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 通过实体类型配置基元列。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于存储属性的基元列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的基元列的数据类型。 + 同一个 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 将基元列配置为可选列。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将基元列配置为必需列。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 提供用于配置实体类型或复杂类型的基元属性的方法。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定此实例是否与指定对象相同。 + 如果此实例与指定对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 配置存储过程中用于此属性的参数的名称。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 参数名。 + + + 将属性配置为用作开放式并发标记。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 允许基于模型中的属性为轻型约定执行配置。 + + + 允许此约定应用到的属性的配置。 + 执行配置的操作。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在配置期间捕获以后要使用的值时基于谓词筛选此约定应用到的属性。 + 一个 实例,以便多个调用可以链接在一起。 + 用于为每个属性捕获值的函数。如果值为 null,则筛选掉该属性。 + 捕获的值的类型。 + + + 返回表示当前对象的字符串。 + 当前对象。 + + + 基于谓词筛选此约定应用到的属性。 + 一个 实例,以便多个调用可以链接在一起。 + 用于测试每个属性是否满足条件的函数。 + + + 允许基于模型中实体类型的属性和捕获的值为轻型约定执行配置。 + 捕获的值的类型。 + + + 允许此约定应用到的属性的配置。 + 使用捕获的值对 执行配置的操作。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 用于配置映射片段中的属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 PropertyMappingConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储映射片段中的属性的数据库列的名称。 + 同一个 PropertyMappingConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 通过实体类型配置必需关系。 + 关系源自的实体类型。 + 作为关系目标的实体类型。 + + + 指定指定的对象是否与当前对象相同。 + 如果指定的对象与当前对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与当前对象关联的哈希代码。 + 与当前对象关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回当前对象的字符串表示形式。 + 当前对象的字符串表示形式。 + + + 将关系配置为 required:many,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:many,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 required:optional,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:optional,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 required:required,且在关系的另一端无导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:required,且在关系的另一端有导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 required:required,且在关系的另一端无导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:required,且在关系的另一端有导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置用于存储字符串值的数据库列。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 配置数据库列的顺序。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置数据库列的数据类型。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 将属性配置为具有指定的最大长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。如果设置为“null”,将对此列使用默认长度。 + + + 将列配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为允许使用数据库提供程序支持的最大长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为可选列。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为必需。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为支持 Unicode 字符串内容。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置列是否支持 Unicode 字符串内容。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 指示列是否支持 Unicode 字符串内容的值。指定“null”将从列中移除 Unicode 方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将列配置为可变长度。列在默认情况下为可变长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 进行序列化的字符串或其他类型。 + + + 配置用于存储属性的数据库列的名称。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 将属性配置为具有指定的最大长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。设置为“null”将从属性中移除任何最大长度限制,并且会将默认长度用于数据库列。 + + + 将属性配置为用作开放式并发标记。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。默认情况下, 属性是可选的。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为支持 Unicode 字符串内容。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否支持 Unicode 字符串内容。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否支持 Unicode 字符串内容的值。指定“null”将从属性中移除 Unicode 方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可变长度。默认情况下, 属性为可变长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 允许为模型中的类型执行配置。 + 要配置的类型。 + + + 初始化 类的新实例。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 允许基于模型中的实体类型为轻型约定执行配置。 + + + 允许此约定应用到的实体类型的配置。 + 执行配置的操作。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在配置期间捕获以后要使用的值时基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于为每个实体类型捕获值的函数。如果值为 null,则筛选掉该实体类型。 + 捕获的值的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于测试每个实体类型是否满足条件的函数。 + + + 允许基于模型中从通用指定类型继承的实体类型为轻型约定执行配置。 + 此约定应用到的实体类型的通用类型。 + + + 允许此约定应用到的实体类型的配置。 + 执行配置的操作。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在配置期间捕获以后要使用的值时基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于为每个实体类型捕获值的函数。如果值为 null,则筛选掉该实体类型。 + 捕获的值的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于测试每个实体类型是否满足条件的函数。 + + + 允许基于模型中的实体类型和捕获的值为轻型约定执行配置。 + 捕获的值的类型。 + + + 允许此约定应用到的实体类型的配置。 + 使用捕获的值对 执行配置的操作。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 将当前实例的值转换为其等效字符串表示。 + 当前实例的字符串表示形式。 + + + 允许基于模型中从通用指定类型继承的实体类型和捕获的值为轻型约定执行配置。 + 此约定应用到的实体类型的通用类型。 + 捕获的值的类型。 + + + 允许此约定应用到的实体类型的配置。 + 使用捕获的值对 执行配置的操作。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 允许为用于更新实体的存储过程执行配置。 + 可使用存储过程进行更新的实体的类型。 + + + 确定指定对象是否等于此实例对象。 + 如果指定对象等于此实例对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索哈希代码。 + 哈希代码。 + + + 检索此配置的类型。 + 此配置的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 配置用于区分继承层次结构中各个类型的鉴别器列。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于标识通过继承层次结构中其他类型配置的实体类型的鉴别器值。 + 用来配置用于存储鉴别器值的列的配置对象。 + 用于标识实体类型的值。 + 鉴别器值的类型。 + + + 配置用于标识通过继承层次结构中其他类型配置的实体类型的鉴别器值。 + 用来配置用于存储鉴别器值的列的配置对象。 + 用于标识实体类型的值。 + + + 配置用于标识通过继承层次结构中其他类型配置的实体类型的鉴别器值。 + 用来配置用于存储鉴别器值的列的配置对象。 + 用于标识实体类型的值。 + 鉴别器值的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 提供用于在相关类型之间只存在一对导航属性时,将导航属性检测为相互反向的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 从 .NET 属性 (Property) 读取属性 (Attribute) 并根据这些属性 (Attribute) 生成列注释的 Code First 约定的通用类。 + 要发现的属性类型。 + 将创建的注释类型。 + + + 构造一个将创建具有给定名称且使用给定工厂委托的列注释的约定。 + 要创建的注释的名称。 + 用于在各列中创建注释的工厂。 + + + 从 .NET 类型读取属性并根据这些属性生成表注释的 Code First 约定的通用类。 + 要发现的属性类型。 + 将创建的注释类型。 + + + 构造一个将创建具有给定名称且使用给定工厂委托的表注释的约定。 + 要创建的注释的名称。 + 用于在各表中创建注释的工厂。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到指定配置。 + 配置。 + 列属性。 + + + 表示通过 API 应用指定的列排序的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 验证为列提供的排序配置。此基实现是一个空操作。 + 列所属表的名称。 + 表的定义。 + + + 用于应用通过 API 指定的列顺序的约定。如果检测重复配置的列顺序,则此约定引发。 + + + 初始化 类的新实例。 + + + 验证为列提供的排序配置,以确保没有为两个列提供相同的序号。 + 列所属表的名称。 + 表的定义。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 应用具有给定配置和特性的约定。 + 配置。 + 属性。 + + + 表示用于在类型没有主键、没有映射的基类型且没有导航属性的情况下将其配置为复杂类型的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 表示处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 不重写配置的约定。 + + + 派生的类可以使用默认构造函数应用更改模型配置的一组规则。 + + + 开始配置适用于模型中所有属性的轻型约定。 + 约定的配置对象。 + + + 开始配置适用于模型中指定类型的所有基元属性的轻型约定。 + 约定的配置对象。 + 此约定将适用于的属性类型。 + + + 开始配置应用于从指定类型派生或实现指定类型的模型中的所有映射类型的轻型约定。 + 约定的配置对象。 + 此约定将适用于的实体类型。 + + + 开始配置应用于模型中所有映射类型的轻型约定。 + 约定的配置对象。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有给定配置的属性。 + 配置。 + 属性。 + + + 用于为小数属性将精度设置为 18 并将小数位数设置为 2 的约定。 + + + 使用默认值初始化 的新实例。 + + + 使用指定的精度和小数位数初始化 类的新实例。 + Precision + Scale + + + 将此约定应用于属性。 + 项。 + 模型。 + + + 表示用于移动主键属性使其首先出现的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 表示用于基于外键属性的 CLR 可为 null 性区分可选和必需关系的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 表示发现外键属性的约定的基类。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 项。 + 模型。 + + + 如果 应为外键的一部分,则当被重写时,返回 true。 + 如果 dependentProperty 应为外键的一部分,则为 true;否则为 false。 + 所配置的关联类型。 + 依赖端。 + 依赖端的候选属性。 + 主体端实体类型。 + 主体端的键属性,该键属性是外键的候选目标。 + + + 获取约定是否支持具有其间定义的多个关联的实体类型对。 + 如果约定支持具有其间定义的多个关联的实体类型对,则为 true;否则为 false。 + + + 表示为外键引入索引的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 项。 + + + 表示用于处理模型中导航属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 数据库模型。 + + + 表示用于处理在模型中的外键属性上发现的 的实例的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到指定属性。 + 属性信息。 + 要为模型中实体类型执行的配置。 + 从数据库映射中排除的属性或类。 + + + 在创建模型后对模型的概念性部分执行操作的约定。 + 此约定操作的元数据项的类型。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 标识可以添加到 实例或从该实例中移除的约定。 + + + 用于检测主键属性的约定。按优先级顺序的可识别的命名模式为:1. ''Id' 2。[type name]Id。主键检测不区分大小写。 + + + 初始化 类的新实例。 + + + 要匹配 类的约定。 + 要匹配的 类。 + 实体类型。 + 基元属性的集合。 + + + 用于发现属性 (Property) 上的 属性 (Attribute),以及在模型中生成 列注释的约定。 + + + 构造此约定的新实例。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有配置的指定模型。 + 成员信息。 + 配置。 + 属性。 + + + 在创建模型后对模型的数据库部分执行操作的约定。 + 此约定操作的元数据项的类型。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 用于处理在模型中属性上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 表示发现主键属性的约定的基类。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 如果被重写,则返回将成为主键一部分的属性子集。 + 应成为主键一部分的属性。 + 实体类型。 + 实体的基元类型。 + + + 用于将级联删除从多对多关系中涉及的两个表添加到联接表的约定。 + + + 初始化 类的新实例。 + + + 确保在映射继承的属性时不创建无效/不支持的映射的约定 + + + 初始化 类的新实例。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有指定配置的属性。 + 配置。 + 属性。 + + + 用于发现名称是从属导航属性名称和主体类型主键属性名称组合的外键属性的约定。 + + + 初始化 类的新实例。 + + + 匹配依赖的实体模型的键。 + 返回 + 关联类型元数据对象。 + 依赖的关联的端。 + 依赖的属性。 + 主体实体类型 + 主体键属性。 + + + 获取或设置一个值,该值指示约定是否支持多个关联。 + 如果约定支持多个关联,则为 true;否则为 false。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到指定属性。 + 属性信息。 + 要为模型中实体类型执行的配置。 + 从数据库映射中排除的属性或类。 + + + 表示用于处理在模型中类型上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到指定属性。 + 要为模型中实体类型执行的配置。 + 从数据库映射中排除的属性或类。 + + + 提供用于为任何必需关系启用级联删除的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 数据库模型。 + + + 提供用于将从属实体类型的主键配置为一对一关系中外键的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 数据库模型。 + + + 表示用于将实体集名称设置为实体类型名称的复数版本的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 实体集。 + 数据库模型 + + + 表示用于将表名称设置为实体类型名称的复数版本的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 用于发现名称与主体类型主键属性名称匹配的外键属性的约定。 + + + 初始化 类的新实例。 + + + 匹配与约定关联的依赖键属性。 + 匹配的依赖键属性。 + 关联类型。 + 依赖的关联端。 + 依赖的属性。 + 主体实体类型。 + 主体键属性。 + + + 用于处理在模型的基元属性 (Property) 中找到的 CLR 属性 (Attribute) 的约定的基类。 + 要查找的特性的类型。 + + + 初始化 类的新实例。 + + + 对已应用 TAttribute 类型的属性 (Attribute) 的属性 (Property) 应用此约定。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 用于处理在模型的类型属性 (Property) 中找到的 CLR 属性 (Attribute) 的约定的基类。 + 要查找的特性的类型。 + + + 初始化 类的新实例。 + + + 对已应用 TAttribute 类型的属性 (Attribute) 的属性 (Property) 应用此约定。 + 具有该属性 (Attribute) 的属性 (Property) 的成员信息。 + 包含该属性的类的配置。 + 属性。 + + + 表示用于为其类型支持长度方面的属性设置最大长度的约定。默认值为 128。 + + + 使用默认长度初始化 类的新实例。 + + + 使用指定长度初始化 的新实例。 + 属性的最大长度。 + + + 应用具有给定模型配置的约定。 + 项。 + 映射模型。 + + + 应用具有给定模型配置的约定。 + 项。 + 映射模型。 + + + 应用具有给定模型配置的约定。 + 项。 + 映射模型。 + + + 用于处理在模型中导航属性上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 表示用于处理模型中基元属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有给定配置的属性。 + 配置。 + 属性。 + + + 表示为其类型在 SqlCe 为提供程序时支持长度方面的属性设置默认最大长度为 4000 的约定。 + + + 使用默认长度初始化 类的新实例。 + + + 初始化 的新实例。 + 属性的默认最大长度。 + + + 将此约定应用到给定的提供程序。 + 项。 + 模型。 + + + 将此约定应用到给定的提供程序。 + 项。 + 模型。 + + + 表示用于将整数主键配置为标识的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 应用具有给定配置和特性的约定。 + 配置。 + 属性。 + + + 表示用于处理在模型中类型上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 用于处理在模型中找到的 CLR 特性的约定的基类。 + 要查找的特性的类型。 + + + 初始化 类的新实例。 + + + 将此约定应用于已应用 TAttribute 类型的属性的类。 + 包含该属性的类的配置。 + 属性。 + + + 用于发现名称是主体类型名称和主体类型主键属性名称组合的外键属性的约定。 + + + 初始化 类的新实例。 + + + 确定依赖键的属性是否与当前键匹配。 + 如果依赖键的属性与当前键匹配,则为 true;否则为 false。 + 关联类型。 + 端上依赖的关联。 + 依赖的属性。 + 主体实体类型。 + 主体键属性。 + + + 表示大地(圆地球)坐标系中的数据。 + + + 获取指示此 DbGeography 值面积的可为 null 的双精度值,如果此值不表示面,则可能为 null。 + 指示此 DbGeography 值的面积、可以为 null 的双精度值。 + + + 生成此 DbGeography 值的已知二进制表示形式。 + 此 DbGeography 值的已知二进制表示形式。 + + + 生成此 DbGeography 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeography 值的 GML 表示形式的字符串。 + + + 生成此 DbGeography 值的已知文本表示形式。仅包含点的经度和纬度。 + 包含此 DbGeography 值的已知文本表示形式的字符串。 + + + 返回一个表示点并集的地理对象,该并集中所有点与地理实例的距离都小于或等于指定的值。 + 一个地理对象,表示所有点的并集 + 距离。 + + + 获取与坐标系关联的标识符。 + 与坐标系关联的标识符。 + + + 获取地理值 (WGS 84) 的默认坐标系 ID (SRID) + 地理值 (WGS 84) 的默认坐标系 ID (SRID) + + + 计算此 DbGeography 值和另一 DbGeography 值的差异。 + 一个新 DbGeography 值,表示此地理值与其他地理值之间的差异。 + 应计算它与此值的差异的地理值。 + + + 获取给定 值的维度(如果值为集合)或最大的元素维度。 + 给定 值的维度。 + + + 确定此 DbGeography 在空间上是否与指定的 DbGeography 参数不相交。 + 如果其他地理值不与此地理值相交,则为 true;否则为 false。 + 应与此地理值比较不相交性的地理值。 + + + 计算此 DbGeography 值和另一 DbGeography 值中两个最接近的点之间的距离。 + 一个双精度值,指定此地理值和其他地理值中,最接近两点之间的距离。 + 应计算与此值的距离的地理值。 + + + 如果表示地理集合,则从特定位置返回此 DbGeography 值的元素。&amp;lt;param name="index"&amp;gt;此地理值中,应采用该处元素的位置。&amp;lt;/param&amp;gt;&amp;lt;returns&amp;gt;如果此地理值表示其他地理值的集合,则为它当中指定位置处的元素;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值在特定位置处的元素 + 索引。 + + + 如果此 DbGeography 值表示地理集合,则获取它当中的元素个数。&amp;lt;returns&amp;gt;如果此地理值表示其他地理值的集合,则为它当中的元素个数;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值中的元素数目。 + + + 如果此 DbGeography 值表示点,则获取它的海拔(Z 坐标)值。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的海拔(Z 坐标)值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的海拔(Z 坐标)。 + + + 获取表示此值起始点的 DbGeography 值,如果 DbGeography 值不表示曲线,此值可能是 null。 + 表示此值起点的 DbGeography 值。 + + + 基于指定的已知二进制值创建新的 值。 + 使用默认的地理坐标系标识符 (SRID) ()、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 使用默认的地理坐标系标识符 (SRID) ()、由 GML 值定义的新 DbGeography 值。 + 包含地理值的地理标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由 GML 值定义的新 DbGeography 值。 + 包含地理值的地理标记语言 (GML) 表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值创建新的 值。 + 使用默认的地理坐标系标识符 (SRID) ()、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 计算此 DbGeography 值和另一 DbGeography 值的交集。 + 一个新 DbGeography 值,表示此地理值与其他地理值之间的交集。 + 应计算与此值的交集的地理值。 + + + 确定此 DbGeography 值在空间上是否和指定的 DbGeography 参数相交。 + 如果其他地理值与此地理值相交,则为 true;否则为 false。 + 应与此地理值比较相交性的地理值。 + + + 获取指示此 DbGeography 值是否为闭合的可为 null 的布尔值,如果此值不表示曲线,则可能为 null。 + 如果此 DbGeography 值为闭合值,则为 true;否则为 false。 + + + 获取一个可为 null 的布尔值,它指示此 DbGeography 值是否为空。 + 如果此 DbGeography 值为空,则为 true;否则为 false。 + + + 如果此 DbGeography 值表示点,则获取它的纬度坐标。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的纬度坐标值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的纬度坐标。 + + + 获取指示此 DbGeography 值长度的可为 null 的双精度值,如果此值不表示曲线,则可能为 null。 + 指示此 DbGeography 值的长度、可以为 null 的双精度值。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 如果此 DbGeography 值表示点,则获取它的经度坐标。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的经度坐标值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的经度坐标。 + + + 如果此 DbGeography 值表示点,则获取它的 M(度量值)坐标。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的 M(度量值)坐标值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的 M(度量值)坐标。 + + + 返回二进制值中的多线值。 + 二进制值中的多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多线值。 + 已知文本值中的多线值。 + 已知的文本。 + 坐标系标识符。 + + + 返回已知二进制值中的多点值。 + 已知二进制值中的多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多点值。 + 已知文本值中的多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 返回已知二进制值的多多边形值。 + 已知二进制值中的多多边形值。 + 多多边形已知二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多多边形值。 + 已知文本值中的多多边形值。 + 多多边形已知文本值。 + 坐标系标识符。 + + + 如果表示行字符串或线性环,则从特定位置返回此 DbGeography 值的元素。&amp;lt;param name="index"&amp;gt;此地理值中,应采用该处元素的位置。&amp;lt;/param&amp;gt;&amp;lt;returns&amp;gt;如果此地理值表示行字符串或线性环,则为它当中指定位置处的元素;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值在特定位置处的元素 + 索引。 + + + 如果表示行字符串或线性环,则获取此 DbGeography 值中的点数。&amp;lt;returns&amp;gt;如果此地理值表示行字符串或线性环,则为它当中的元素个数;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值中的点数。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 获取将用于此空间类型的操作的空间提供程序。 + + + 获取此 DbGeography 值的表示形式,它对于构造它的基础提供程序是特定的。 + 此 DbGeography 值的表示形式。 + + + 确定此 DbGeography 在空间上是否与指定的 DbGeography 参数相等。 + 如果其他地理值在空间上与此地理值相等,则为 true ;否则为 false。 + 应与此地理值比较相等性的地理值。 + + + 获取 DBGeography 的空间类型名称。 + DBGeography 的空间类型名称。 + + + 获取表示此值起始点的 DbGeography 值,如果 DbGeography 值不表示曲线,此值可能是 null。 + 表示此值起点的 DbGeography 值。 + + + 计算此 DbGeography 值和另一 DbGeography 值的对称差异。 + 一个新 DbGeography 值,表示此地理值与其他地理值的对称差异。 + 应计算与此值的对称差异的地理值。 + + + 返回地理值的字符串表示形式。 + 地理值的字符串表示形式。 + + + 计算此 DbGeography 值和另一 DbGeography 值的并集。 + 一个新 DbGeography 值,表示此地理值与其他地理值之间的并集。 + 应计算与此值的并集的地理值。 + + + 获取或设置此 DbGeography 值的数据协定的可序列化已知表示形式。 + 此 DbGeography 值的数据协定的可序列化的已知表示形式。 + + + + 值的数据协定的可序列化表示形式。 + + + 初始化 类的新实例。 + + + 获取或设置此值的坐标系标识符 (SRID)。 + + + 获取或设置此值的已知二进制表示形式。 + + + 获取或设置此值的已知文本表示形式。 + + + 表示几何形状。 + + + 获取指示此 DbGeometry 值面积的可为 null 的双精度值,如果此值不表示面,则可能为 null。 + 一个可以为 null 的双精度值,指示此 DbGeometry 值的面积。 + + + 生成此 DbGeometry 值的已知二进制表示形式。 + 此 DbGeometry 值的已知二进制表示形式。 + + + 生成此 DbGeometry 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeometry 值的 GML 表示形式的字符串。 + + + 生成此 DbGeometry 值的已知文本表示形式。仅包含点的 X 和 Y 坐标。 + 包含此 DbGeometry 值的已知文本表示形式的字符串。 + + + 获取 DbGeometry 对象的边界。 + DbGeometry 对象的边界。 + + + 返回一个表示所有点并集的几何对象,该并集中所有点与几何实例的距离都小于或等于指定的值。 + 一个几何对象,表示所有点的并集。 + 距离。 + + + 获取表示此 DbGeometry 值的形心的 DbGeometry 值,如果此值不表示面,则可能为 null。 + 一个 DbGeometry 值,表示此 DbGeometry 值的形心。 + + + 确定此 DbGeography 值在空间上是否包含指定的 DbGeography 参数。 + 如果此几何值包含其他几何值,则为 true;否则为 false。 + 应与此几何值比较包含关系的几何值。 + + 为 null。 + + + 获取此 DbGeometry 值的凸包作为另一 DbGeometry 值。 + 用作另一 DbGeometry 值的此 DbGeometry 值的凸包。 + + + 获取此 DbGeometry 对象的坐标系统标识符。 + 此 DbGeometry 对象的坐标系统标识符。 + + + 确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数相交。 + 如果其他几何值与此几何值相交,则为 true;否则为 false。 + 应与此几何值比较的几何值。 + + 为 null。 + + + 获取几何值的默认坐标系统 ID (SRID)。 + 几何值的默认坐标系统 ID (SRID)。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的差异。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的差异。 + 应计算与此值的差异的几何值。 + + 为 null。 + + + 获取给定 值的维度(如果该值为一个集合)或其中最大元素的维度。 + 给定 值的维度。 + + + 确定此 DbGeometry 在空间上是否与指定的 DbGeometry 参数不相交。 + 如果其他几何值与此几何值不相交,则为 true;否则为 false。 + 应与此几何值比较不相交性的几何值。 + + 为 null。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值中两个最接近的点之间的距离。 + 一个双精度值,指定此几何值和其他几何值中最接近的两点之间的距离。 + 应计算与此值的距离的几何值。 + + 为 null。 + + + 如果表示几何集合,则从特定位置返回此 DbGeometry 值的元素。 + 如果此几何值表示其他几何值的集合,则为其在指定位置的元素;否则为 null。 + 在此几何值中应提取元素的位置。 + + + 如果表示几何集合,则获取此 DbGeometry 值中的元素数。 + 如果此几何值表示其他几何值的集合,则为它当中的元素个数;否则为 null。 + + + 如果此 DbGeometry 值表示点,则获取它的海拔(Z 坐标)值。 + 如果此 DbGeometry 表示一个点,则为它的海拔(Z 坐标);否则为 null。 + + + 获取表示此值起始点的 DbGeometry 值,如果 DbGeometry 值不表示曲线,此值可能为 null。 + 表示此值起点的 DbGeometry 值。 + + + 获取此 DbGeometry 值的包络线(最小边界框)作为几何值。 + 此 DbGeometry 值的包络线(最小边界框)。 + + + 获取表示此 DbGeometry 值的外部环的 DbGeometry 值,如果此值不表示多边形,则可能为 null。 + 一个 DbGeometry 值,表示此 DbGeometry 值的外部环。 + + + 基于指定的已知二进制值创建新的 值。 + 使用默认的几何坐标系标识符 ()、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + + 为 null。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 使用默认的几何坐标系标识符 (SRID) ()、由 GML 值定义的新 DbGeometry 值。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + + 为 null。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由 GML 值定义的新 DbGeometry 值。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值创建新的 值。 + 使用默认的几何坐标系标识符 (SRID) ()、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + + 为 null。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 如果表示多边形,则从此 DbGeometry 值返回位于特定位置的内部环。 + 如果此几何值表示多边形,则为其在指定位置的内部环;否则为 null。 + 在此几何值中应提取内部环的位置。 + + + 如果表示多边形,则获取此 DbGeometry 值中的内部环数。 + 如果此几何值表示多边形,则为它当中的元素个数;否则为 null。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的交集。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的交集。 + 应计算与此值的交集的几何值。 + + 为 null。 + + + 确定此 DbGeometry 在空间上是否与指定的 DbGeometry 参数相交。 + 如果其他几何值与此几何值相交,则为 true;否则为 false。 + 应与此几何值比较相交性的几何值。 + + 为 null。 + + + 获取指示此 DbGeometry 值是否为闭合的可为 null 的布尔值,如果此值不表示曲线,则可能为 null。 + 如果此 DbGeometry 值为闭合值,则为 true;否则为 false。 + + + 获取一个可以为 null 的布尔值,该值指示此 DbGeometry 值是否为空;如果此值不表示曲线,则可能为 null。 + 如果此 DbGeometry 值为空,则为 true;否则为 false。 + + + 获取指示此 DbGeometry 值是否为环的可为 null 的布尔值,如果此值不表示曲线,则可能为 null。 + 如果此 DbGeometry 值是一个环,则为 true;否则为 false。 + + + 获取一个可以为 null 的布尔值,该值指示此 DbGeometry 值是否为简单值。 + 如果此 DbGeometry 值简单,则为 true;否则为 false。 + + + 获取一个可以为 null 的布尔值,该值指示此 DbGeometry 值是否有效。 + 如果此 DbGeometry 值有效,则为 true;否则为 false。 + + + 获取指示此 DbGeometry 值长度的可为 null 的双精度值,如果此值不表示曲线,则可能为 null。 + 此 DbGeometry 值的长度。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 如果此 DbGeometry 值表示点,则获取它的度量值(M 坐标)。 + 如果此几何值表示一个点,则为它的度量值(M 坐标);否则为 null。 + + + 返回二进制值中的多线值。 + 二进制值中的多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多线值。 + 已知文本值中的多线值。 + 已知的文本。 + 坐标系标识符。 + + + 返回已知二进制值中的多点值。 + 已知二进制值中的多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多点值。 + 已知文本值中的多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 返回已知二进制值的多多边形值。 + 已知文本值中的多点值。 + 多多边形已知文本值。 + 坐标系标识符。 + + + 返回已知二进制值的多多边形值。 + 已知二进制值中的多多边形值。 + 多多边形已知文本值。 + 坐标系标识符。 + + + 确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数重叠。 + 如果此几何值与其他几何值重叠,则为 true;否则为 false。 + 应与此几何值比较重叠的几何值。 + + 为 null。 + + + 如果此 DbGeometry 值表示行字符串或线性环,则返回它特定位置处的元素。 + 如果此几何值表示行字符串或线性环,则为其在指定位置的元素;否则为 null。 + 在此几何值中应提取元素的位置。 + + + 如果此 DbGeometry 值表示行字符串或线性环,则获取它当中的点数。 + 如果此几何值表示行字符串或线性环,则为它的元素数。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 获取此 DbGeometry 值面上的点,如果此值不表示面,则可能为 null。 + 此 DbGeometry 值面上的点。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 获取将用于此空间类型的操作的空间提供程序。 + 将用于此空间类型的操作的空间提供程序。 + + + 获取此 DbGeometry 值的表示形式,它对于构造它的基础提供程序是特定的。 + 此 DbGeometry 值的表示形式。 + + + 根据给定的维度扩展的 9 交集模型 (DE-9IM) 交集模式来确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数相关。 + 如果根据指定的交集模式矩阵,此几何值与其他几何相关,则为 true;否则为 false。 + 应与此几何值比较相关性的几何值。 + 包含定义了相关性的 (DE-9IM) 交集模式的文本表示形式的字符串。 + + 为 null。 + + + 确定此 DbGeometry 在空间上是否与指定的 DbGeometry 参数相等。 + 如果其他几何值在空间上与此几何值相等,则为 true;否则为 false。 + 应与此几何值比较相等性的几何值。 + + 为 null。 + + + 获取此 DbGeometry 值的空间类型名称表示形式。 + 此 DbGeometry 值的空间类型名称表示形式。 + + + 获取表示此值起始点的 DbGeometry 值,如果 DbGeometry 值不表示曲线,此值可能为 null。 + 表示此值起点的 DbGeometry 值。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的对称差异。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的对称差异。 + 应计算与此值的对称差异的几何值。 + + 为 null。 + + + 返回几何值的字符串表示形式。 + 此几何值的字符串表示形式。 + + + 确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数接触。 + 如果其他几何值与此几何值相接,则为 true;否则为 false。 + 应与此几何值比较的几何值。 + + 为 null。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的并集。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的并集。 + 应计算与此值的并集的几何值。 + + 为 null。 + + + 获取或设置此 DbGeometry 值的数据协定的可序列化已知表示形式。 + 此 DbGeometry 值的数据协定的可序列化的已知表示形式。 + + + 确定此 DbGeometry 值在空间上是否在指定的 DbGeometry 参数内。 + 如果此几何值在其他几何值中,则为 true;否则为 false。 + 应与此几何值比较包含关系的几何值。 + + 为 null。 + + + 如果此 DbGeometry 值表示点,则获取它的 X 坐标。 + 如果表示点,则为此几何值的 X 坐标值;否则为 null。 + + + 如果此 DbGeometry 值表示点,则获取它的 Y 坐标。 + 如果表示点,则为此几何值的 Y 坐标值;否则为 null。 + + + + 值的数据协定的可序列化表示形式。 + + + 初始化 类的新实例。 + + + 获取或设置此值的坐标系标识符 (SRID)。 + + + 获取或设置此值的已知二进制表示形式。 + + + 获取或设置此值的已知文本表示形式。 + + + 与提供程序无关的服务 API,用于支持地理空间(几何/地理)类型。 + + + 初始化 类的新实例。 + + + 当在派生类型中实现时,从指定列序号的列读取 的实例。 + 位于指定列值处的 DbGeography 实例 + 包含地理值的列序号 + + + 从位于指定的列序号的列异步读取 的实例。 + 表示异步操作的任务。任务结果包含位于指定列值处的 实例。 + 包含地理值的列序号。 + 等待任务完成期间要观察的 。 + + + 当在派生类型中实现时,从指定列序号的列读取 的实例。 + 位于指定列值处的 DbGeometry 实例 + 包含提供程序专用几何数据的数据记录列的序号 + + + 从位于指定的列序号的列异步读取 的实例。 + 表示异步操作的任务。任务结果包含位于指定列值处的 实例。 + 包含提供程序特定的几何数据的数据记录列的序号。 + 等待任务完成期间要观察的 。 + + + 返回位于指定的列序号的列是否为地理类型 + 如果位于指定的列序号的列为地理类型,则为 true;否则为 false。 + 列序号。 + + + 返回位于指定的列序号的列是否为几何类型 + 如果位于指定的列序号的列为几何类型,则为 true;否则为 false。 + 列序号。 + + + 与提供程序无关的服务 API,用于支持地理空间(几何/地理)类型。 + + + 初始化 类的新实例。 + + + 获取给定 值的已知二进制表示形式。 + 给定 值的已知二进制表示形式。 + 应为其生成已知二进制的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的已知二进制表示形式。 + 给定 值的已知二进制表示形式。 + 应为其生成已知二进制的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 生成此 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeography 值的 GML 表示形式的字符串。 + 应生成 GML 的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 生成此 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeometry 值的 GML 表示形式的字符串。 + 应生成 GML 的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的已知文本表示形式。此值仅应包含点的经度和纬度。 + 一个字符串,包含 geographyValue 的已知文本表示形式。 + 应为其生成已知文本的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的已知文本表示形式,仅包含点的 X 和 Y 坐标。 + 一个字符串,包含 geometryValue 的已知文本表示形式。 + 应为其生成已知文本的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回 带有海拔和测量值的文本表示形式。 + + 的文本表示形式。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回 带有海拔和测量值的文本表示形式。 + + 带有海拔和测量值的文本表示形式。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 创建一个地理值,该值表示所有距离小于或等于所给定 值的点。 + 一个新 DbGeography 值,表示所有距离小于或等于 geographyValue 的点。 + 地理值。 + 一个双精度值,指定从 geographyValue 到缓冲区的距离。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 创建一个几何值,该值表示所有距离小于或等于所给定 的点。 + 一个新 DbGeometry 值,表示所有距离小于或等于 geometryValue 的点。 + 几何值。 + 一个双精度值,指定从 geometryValue 到缓冲区的距离。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定一个 值是否在空间上包含另一个值。 + 如果 geometryValue 包含 otherGeometry,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 在进行指定提供程序值的合适验证后,此方法主要由 的派生实现使用,以确保其适用于派生实现。 + 一个新的 实例,包含指定的 providerValue,使用指定的 spatialServices 作为其空间实现。 + 返回的 值将依赖它实现空间功能的空间服务实例。 + 提供程序值。 + + + 在进行指定提供程序值的合适验证后,此方法主要由 的派生实现使用,以确保其适用于派生实现。 + 一个新的 实例,包含指定的 providerValue,使用指定的 spatialServices 作为其空间实现。 + 返回的 值将依赖它实现空间功能的空间服务实例。 + 提供程序值。 + + + 基于指定的已知 表示形式,创建一个兼容此空间服务实现的提供程序特定值。 + 一个提供程序特定值,它按照兼容此空间服务实现的方式,对 wellKnownValue 中包含的信息进行编码。 + 一个 实例,包含地理值的此已知表示形式。 + + + 基于指定的已知 表示形式,创建一个兼容此空间服务实现的提供程序特定值。 + 一个提供程序特定值,它按照兼容此空间服务实现的方式,对 wellKnownValue 中包含的信息进行编码。 + 一个 实例,包含几何值的此已知表示形式。 + + + 使用其中一个或这两个标准已知空间格式,创建表示指定 值的 实例。 + geographyValue 的已知表示形式,用作新 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 使用其中一个或这两个标准已知空间格式,创建表示指定 值的 实例。 + geometryValue 的已知表示形式,用作新 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 geometryValue 与 otherGeometry 相交,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取默认服务。 + 默认服务。 + + + 计算两个 值的差异。 + 一个新 DbGeography 值,表示 geographyValue 和 otherGeography 的差异。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的差异。 + 一个新 DbGeometry 值,表示 geometryValue 和 otherGeometry 的差异。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上不相交。 + 如果 geographyValue 不与 otherGeography 相交,则为 true;否则为 false。 + 用来比较不相交性的第一个地理值。 + 用来比较不相交性的第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上不相交。 + 如果 geometryValue 不与 otherGeometry 相交,则为 true;否则为 false。 + 用来比较不相交性的第一个几何值。 + 用来比较不相交性的第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值中最接近的点之间的距离。 + 一个双精度值,表示 geographyValue 和 otherGeography 中,最接近两点之间的距离。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值中最接近的点之间的距离。 + 一个双精度值,指定 geometryValue 和 otherGeometry 中,最接近两点之间的距离。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示地理集合,则返回给定 值的元素。 + 如果 geographyValue 表示其他地理值的集合,则为其在位置索引处的元素;否则为 null。 + 不需要表示地理集合的地理值。 + 在地理值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示几何集合,则返回给定 值的元素。 + 如果 geometryValue 表示其他几何值的集合,则为其在位置索引上的元素;否则为 null。 + 不需要表示几何集合的几何值。 + 在几何值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值创建新的 值。 + 一个新 值,由已知二进制值使用默认 坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 一个新 值,由 GML 值使用默认 坐标系统标识符 (SRID) () 进行定义。 + 包含地理值的几何标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由 GML 值使用指定的坐标系标识符 (SRID) 进行定义。 + 包含地理值的几何标记语言 (GML) 表示形式的字符串。 + 值应使用的坐标系标识符。 + + + 基于与此空间服务实现兼容的提供程序特定的值创建新的 值。 + 一个新 DbGeometry 值,它受此空间服务实现和指定提供程序值的支持。 + 此空间服务实现可将其解释为地理值的提供程序特定的值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 基于指定的已知文本值创建新的 值。 + 一个新 值,由已知文本值使用默认 坐标系标识符 (SRID) 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值创建新的 值。 + 一个新 值,由已知二进制值使用默认 坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 一个新 值,由 GML 值使用默认 坐标系统标识符 (SRID) () 进行定义。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由 GML 值使用指定的坐标系标识符 (SRID) 进行定义。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + 值应使用的坐标系标识符。 + + + 基于与此空间服务实现兼容的提供程序特定的值创建新的 值。 + 一个新 DbGeometry 值,它受此空间服务实现和指定提供程序值的支持。 + 此空间服务实现可将其解释为几何值的提供程序特定的值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 基于指定的已知文本值创建新的 值。 + 一个新 值,由已知文本值使用默认 坐标系标识符 (SRID) 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多线值。 + 多线值 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多线值。 + 多线值 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 返回一个指示给定 值的面积、可以为 null 的双精度值,如果该值不表示面则可能为 null。 + 一个可以为 null 的双精度值,指示给定的 值的面积。 + 不需要表示面的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的面积、可以为 null 的双精度值,如果该值不表示面则可能为 null。 + 一个可以为 null 的双精度值,指示给定的 值的面积。 + 不需要表示面的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的边界、可以为 null 的双精度值。 + 给定 值的边界。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值形心的 值,如果该值不表示面则可能为 null。 + 如果 geometryValue 表示面,则为它的形心;否则为 null。 + 不需要表示面的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的凸包、可以为 null 的双精度值。 + 给定 值的凸包。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回给定 值的坐标系标识符。 + 给定 值的坐标系标识符。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回给定 值的坐标系标识符。 + 给定 值的坐标系标识符。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的维度(如果值为集合)或最大的元素维度。 + geographyValue 的维度;如果 是一个集合,则为最大元素维度。 + 应检索维度值的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的维度(如果值为集合)或最大的元素维度。 + geometryValue 的维度;如果 是一个集合,则为最大元素维度。 + 应检索维度值的几何值。 + + + 如果表示地理集合,则返回给定 值的元素数目。 + 如果 geographyValue 表示其他地理值的集合,则为它当中的元素个数;否则为 null。 + 不需要表示地理集合的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示几何集合,则返回给定 值的元素数目。 + 如果此 geometryValue 表示其他几何值的集合,则为它当中的元素个数;否则为 null。 + 不需要表示几何集合的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的海拔(Z 坐标)。 + 如果此 geographyValue 表示点,则为它的海拔(Z 坐标);否则为 null。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的海拔 (Z)。 + 如果此 geometryValue 表示点,则为它的海拔(Z 坐标);否则为 null。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeography 值终点的 值,如果该值不表示曲线则可能为 null。 + 如果此 geographyValue 表示曲线,则为它的终点;否则为 null。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值终点的 值,如果该值不表示曲线则可能为 null。 + 如果此 geometryValue 表示曲线,则为它的终点;否则为 null。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定的 值的包络线(最小边界框)作为几何值。 + geometryValue 的包络线,用作 值。 + 应检索包络线值的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值外部环的 值,如果该值不表示多边形则可能为 null。 + 如果此 geometryValue 表示多边形,则为表示其上外部环的 DbGeometry 值;否则为 null。 + 不需要表示多边形的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示多边形,则返回给定 值中的内部环数。 + 如果此 geometryValue 表示多边形,则为它当中的元素个数;否则为 null。 + 不需要表示多边形的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否闭合;如果该值不表示曲线则可能为 null。 + 如果给定的 值为闭合值,则为 true;否则为 false。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否闭合;如果该值不表示曲线则可能为 null。 + 如果给定的 值为闭合值,则为 true;否则为 false。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否为空。 + 如果给定的 为空,则为 true;否则为 false。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否为空。 + 如果给定的 为空,则为 true;否则为 false。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否是环;如果该值不表示曲线则可能为 null。 + 如果给定的 值是一个环,则为 true;否则为 false。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否很简单。 + 如果给定的 值简单,则为 true;否则为 false。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否有效。 + 如果给定的 值有效,则为 true;否则为 false。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的纬度坐标。 + 给定 值的维度坐标。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的长度、可以为 null 的双精度值,如果该值不表示曲线则可能为 null。 + 给定 值的长度。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的长度、可以为 null 的双精度值,如果该值不表示曲线则可能为 null。 + 给定 值的长度。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的经度坐标。 + 给定 值的经度坐标。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 M(度量值)坐标。 + 给定 值的 M(测量值)坐标。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 M(度量值)坐标。 + 给定 值的 M(测量值)坐标。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值中的点数。 + 给定 值中的点数。 + 不需要表示行字符串或线性环的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值中的点数。 + 给定 值中的点数。 + 不需要表示行字符串或线性环的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值面上点的 值,如果该值不表示面则可能为 null。 + 一个 值,表示给定 DbGeometry 值面上的点。 + 不需要表示面的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回指示给定 值的空间类型名称的值。 + 给定的 值的空间类型名称。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回指示给定 值的空间类型名称的值。 + 给定的 值的空间类型名称。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeography 值起点的 值,如果该值不表示曲线则可能为 null。 + 给定 值的起始点。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值起点的 值,如果该值不表示曲线则可能为 null。 + 给定 值的起始点。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 X 坐标。 + 给定 值的 X 坐标。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 Y 坐标。 + 给定 值的 Y 坐标。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示多边形,则返回给定 值中的内部环。 + 如果此 geometryValue 表示多边形,则为其处于位置索引的内部环;否则为 null。 + 不需要表示多边形的几何值。 + 在几何值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的交集。 + 一个新 值,代表 geographyValue 和 otherGeography 的交集。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的交集。 + 一个新 值,代表 geometryValue 和 otherGeometry 的交集。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 geographyValue 与 otherGeography 相交,则为 true;否则为 false。 + 用来比较相交性的第一个地理值。 + 用来比较相交性的第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 geometryValue 与 otherGeometry 相交,则为 true;否则为 false。 + 用来比较相交性的第一个几何值。 + 用来比较相交性的第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取一个值,该值指示 EF 是否将在假定提供程序具有所需的类型/资源而非更快失败的情况下继续运行。默认值为 true。 + 如果 EF 将在假定提供程序具有所需的类型/资源而非更快失败的情况下继续运行,则为 true;否则为 false。 + + + 确定两个给定的 值是否在空间上重叠。 + 如果 geometryValue 与 otherGeometry 重叠,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值的点元素。 + 如果此 geographyValue 表示字符串或线性环,则为其在位置索引处的点;否则为 null。 + 不需要表示行字符串或线性环的地理值。 + 在地理值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值的点元素。 + 如果此 geometryValue 表示行字符串或线性环,则为其在位置索引处的点;否则为 null。 + 不需要表示行字符串或线性环的几何值。 + 在几何值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 根据给定的维度扩展的 9 交集模型 (DE-9IM) 交集模式来确定两个给定的 值在空间上是否相关。 + 如果根据指定的交集模式矩阵,此 geometryValue 与 otherGeometry 相关,则为 true;否则为 false。 + 第一个几何值。 + 应与第一个几何值比较相关性的几何值。 + 包含定义了相关性的 (DE-9IM) 交集模式的文本表示形式的字符串。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值在空间上是否相等。 + 如果 geographyValue 与 otherGeography 在空间上相等,则为 true;否则为 false。 + 要比较是否相等的第一个地理值。 + 要比较是否相等的第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值在空间上是否相等。 + 如果 geometryValue 与 otherGeometry 在空间上相等,则为 true;否则为 false。 + 要比较是否相等的第一个几何值。 + 要比较是否相等的第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的对称差异。 + 一个新 值,表示此 geographyValue 和 otherGeography 的对称差异。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的对称差异。 + 一个新 值,表示 geometryValue 和 otherGeometry 的对称差异。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值在空间上是否接触。 + 如果 geometryValue 与 otherGeometry 相接,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的并集。 + 一个新 值,代表 geographyValue 和 otherGeography 的并集。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的并集。 + 一个新 值,代表 geometryValue 和 otherGeometry 的并集。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定一个 值在空间上是否在另一几何值内。 + 如果 geometryValue 在 otherGeometry 中,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 包含 类的扩展方法。 + + + 配置用于等待此 的等待器,以避免封送继续部分回原始上下文,但是保留当前区域性和 UI 区域性。 + 用于等待此任务的对象。 + 要等待的任务。 + + + 配置用于等待此 的等待器,以避免封送继续部分回原始上下文,但是保留当前区域性和 UI 区域性。 + 用于等待此任务的对象。 + 要等待的任务。 + 相关 所生成的结果类型。 + + + 提供一个可等待的对象,它允许等待保留区域性的 + + + 构造 类的新实例。 + 要等待的任务。 + + + 获取用于等待此 的等待器。 + 等待器实例。 + + + 结束等待已完成的 + 未正确初始化等待器。 + 该任务已取消。 + 任务在错误状态下完成。 + + + 获取此 是否已完成的信息。 + + + 未实施此方法,不应调用它。 + 等待操作完成时要调用的操作。 + + + 计划继续操作到与此 关联的 + 等待操作完成时要调用的操作。 + + 参数为 null(在 Visual Basic 中为 Nothing)。 + 未正确初始化等待器。 + + + 提供一个可等待的对象,它允许等待保留区域性的 + 相关 所生成的结果类型。 + + + 构造 类的新实例。 + 要等待的任务。 + + + 获取用于等待此 的等待器。 + 等待器实例。 + + + 结束等待已完成的 + 已完成的 的结果。 + 未正确初始化等待器。 + 该任务已取消。 + 任务在错误状态下完成。 + + + 获取此 是否已完成的信息。 + + + 未实施此方法,不应调用它。 + 等待操作完成时要调用的操作。 + + + 计划继续操作到与此 关联的 + 等待操作完成时要调用的操作。 + + 参数为 null(在 Visual Basic 中为 Nothing)。 + 未正确初始化等待器。 + + + 表示在实体验证失败时从 引发的异常。 + + + 使用默认值初始化 类的新实例。 + + + 使用指定错误消息初始化 类的新实例。 + 异常消息。 + + + 使用指定错误消息和验证结果初始化 类的新实例。 + 异常消息。 + 验证结果。 + + + 使用指定错误消息、验证结果和内部异常初始化 类的新实例。 + 异常消息。 + 验证结果。 + 导致异常的错误。 + + + 使用指定错误消息和内部异常初始化 类的新实例。 + 异常消息。 + 导致异常的错误。 + + + 获取与实体关联的验证错误。 + 与实体关联的验证错误。 + + + 表示单个实体的验证结果。 + + + 创建 类的实例。 + 应用结果的实体项。绝不会为 null。 + + 实例的列表。绝不会为 null。可以为空意味着实体有效。 + + + 获取应用结果的 的实例。 + + + 获取指示实体是否有效的指示器。 + + + 获取验证错误。绝不会为 null。 + + + 在从验证代码引发异常时,从 引发的异常。 + + + 初始化 DbUnexpectedValidationException 的新实例。 + + + 用指定的序列化信息和上下文初始化 DbUnexpectedValidationException 的新实例。 + 序列化信息。 + 流上下文。 + + + 初始化 DbUnexpectedValidationException 的新实例。 + 异常消息。 + + + 初始化 DbUnexpectedValidationException 的新实例。 + 异常消息。 + 内部异常。 + + + 验证错误。可以是实体级别或属性级别验证错误。 + + + 创建 的实例。 + 无效属性的名称。可以为 null。 + 验证错误消息。可以为 null。 + + + 获取验证错误消息。 + + + 获取无效属性的名称。 + + + \ No newline at end of file diff --git a/Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net45/zh-Hans/EntityFramework.SqlServer.resources.dll b/Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net45/zh-Hans/EntityFramework.SqlServer.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..da4531e8d1b5f72d5cc229094cd58cd61d30b6e9 GIT binary patch literal 19664 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 + + + EntityFramework.SqlServer + + + + 一个 ,它重试引发 SQL Azure 瞬态错误导致的异常的操作。 + + + 创建 的新实例。 + + + 使用指定的重试次数限制值和两次重试之间的延迟时间创建 类的新实例。 + 最大重试次数。 + 两次重试之间的最大延迟时间(毫秒)。 + + + 确定在出现指定的异常时是否应重试。 + 如果在出现指定的异常时应重试,则为 true;否则为 false。 + 要重试的异常。 + + + 包含在 Linq to Entities 中公开 SqlServer 方法的函数存根。 + + + 一个数学函数,该函数返回其余弦为指定数值的角(以弧度表示)。此角称作反余弦。 + 以弧度计量的角度。 + 角的余弦。 + + + 一个数学函数,该函数返回其余弦为指定数值的角(以弧度表示)。此角称作反余弦。 + 由输入余弦值定义的角,以弧度表示。 + 角的余弦。 + + + 返回字符表达式中最左侧字符的 ASCII 代码值。 + 输入字符串中第一个字符的 ASCII 代码。 + 一个有效的字符串。 + + + 一个数学函数,该函数返回其正弦为指定数值的角(以弧度表示)。此角称作反正弦。 + 以弧度计量的角度。 + 角的正弦。 + + + 一个数学函数,该函数返回其正弦为指定数值的角(以弧度表示)。此角称作反正弦。 + 以弧度计量的角度。 + 角的正弦。 + + + 一个数学函数,该函数返回其正切为指定数值的角(以弧度表示)。此角称作反正切。 + 以弧度计量的角度。 + 角的正切。 + + + 一个数学函数,该函数返回其正切为指定数值的角(以弧度表示)。此角称作反正切。 + 以弧度计量的角度。 + 角的正切。 + + + 返回以弧度表示的正角,该角由正 x 轴和从原点到点 (x, y) 的射线构成,其中 x 和 y 是两个指定的数值。传递给函数的第一个参数和第二参数分别为 y 值和 x 值。 + 以弧度计量的角度。 + 点的 y 坐标。 + 点的 x 坐标。 + + + 返回以弧度表示的正角,该角由正 x 轴和从原点到点 (x, y) 的射线构成,其中 x 和 y 是两个指定的数值。传递给函数的第一个参数和第二参数分别为 y 值和 x 值。 + 以弧度计量的角度。 + 点的 y 坐标。 + 点的 x 坐标。 + + + 返回与指定的整数 ASCII 值相对应的字符。 + 与指定的 ASCII 值相对应的字符。 + ASCII 代码。 + + + 返回在一个表达式中找到的另一个表达式的起始位置。 + 目标的起始位置(如果在 toSearch 中找到)。 + 要在其中搜索的字符串表达式。 + 要查找的字符串表达式。 + + + 返回在一个表达式中找到的另一个表达式的起始位置。 + 目标的起始位置(如果在 toSearch 中找到)。 + 要在其中搜索的字符串表达式。 + 要查找的字符串表达式。 + 搜索开始的 toSearch 中的字符位置。 + + + 返回在一个表达式中找到的另一个表达式的起始位置。 + 目标的起始位置(如果在 toSearch 中找到)。 + 要在其中搜索的字符串表达式。 + 要查找的字符串表达式。 + toSearch 中在其开始搜索的字符位置。 + + + 返回在一个表达式中找到的另一个表达式的起始位置。 + 目标的起始位置(如果在 toSearch 中找到)。 + 要在其中搜索的字符串表达式。 + 要查找的字符串表达式。 + + + 返回在一个表达式中找到的另一个表达式的起始位置。 + 目标的起始位置(如果在 toSearch 中找到)。 + 要在其中搜索的字符串表达式。 + 要查找的字符串表达式。 + 搜索开始的 toSearch 中的字符位置。 + + + 返回在一个表达式中找到的另一个表达式的起始位置。 + + 值的 ,该值是目标的起始位置(如果在 toSearch 中找到)。 + 要在其中搜索的字符串表达式。 + 要查找的字符串表达式。 + 搜索开始的 toSearch 中的字符位置。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 为其计算校验和的字符数组。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 为其计算校验和的字符数组。 + 为其计算校验和的字符数组。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 为其计算校验和的字符数组。 + 为其计算校验和的字符数组。 + 为其计算校验和的字符数组。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回基于输入参数计算出的校验和值。 + 基于输入值计算出的校验和。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + 要为其计算校验和的值。 + + + 返回集合中各值的校验和。Null 值将被忽略。 + 基于输入集合计算出的校验和。 + 对其计算校验和的各值的集合。 + + + 返回集合中各值的校验和。Null 值将被忽略。 + 基于输入集合计算出的校验和。 + 对其计算校验和的各值的集合。 + + + 返回指定表达式中指定角(以弧度表示)的三角余弦。 + 指定角的三角余弦。 + 以弧度计量的角度。 + + + 返回指定表达式中指定角(以弧度表示)的三角余弦。 + 指定角的三角余弦。 + 以弧度计量的角度。 + + + 一个数学函数,该函数返回指定角(以弧度表示)的三角余切。 + 指定角的三角余切。 + 以弧度计量的角度。 + + + 一个数学函数,该函数返回指定角(以弧度表示)的三角余切。 + 指定角的三角余切。 + 以弧度计量的角度。 + + + 返回当前日期和时间。 + 当前日期和时间。 + + + 返回当前用户的名称。 + 当前用户的名称。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 返回用于表示任何表达式的字节数。 + 输入值中的字节数。 + 要检查其数据长度的值。 + + + 向指定的日期添加间隔,以此返回新的日期时间值。 + 新的日期。 + 要递增的日期部分。 + 用于按指定量递增日期的值。 + 要递增的日期。 + + + 向指定的日期添加间隔,以此返回新的日期值。 + 相对于协调世界时 (UTC) 的新时间点,以日期和时间来表示。 + 要递增的日期部分。 + 用于按指定量递增日期的值。 + 要递增的日期。 + + + 向指定的时间跨度添加间隔,以此返回新的时间跨度值。 + 新的时间跨度。 + 要递增的日期部分。 + 用于按指定量递增日期的值。 + 要递增的时间跨度。 + + + 向指定的日期添加间隔,以此返回新的日期时间值。 + 表示新日期的 值的 + 要递增的日期部分。 + 用于按指定量递增日期的值。 + 要递增的日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 指定两个日期之间的时间间隔数的值。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回所指定开始日期和结束日期之间的指定日期部分边界的计数。 + 两个日期之间的时间间隔数。 + 要计算时间间隔差值的日期部分。 + 第一个日期。 + 第二个日期。 + + + 返回一个字符串,该字符串表示指定日期的指定日期部分。 + 指定日期的指定部分。 + 要计算时间间隔差值的日期部分。 + 日期。 + + + 返回一个字符串,该字符串表示指定日期的指定日期部分。 + 指定日期的指定部分。 + 要计算时间间隔差值的日期部分。 + 日期。 + + + 返回一个字符串,该字符串表示指定日期的指定日期部分。 + 指定日期的指定部分。 + 要计算时间间隔差值的日期部分。 + 日期。 + + + 返回一个字符串,该字符串表示指定日期的指定日期部分。 + 指定日期的指定部分。 + 要计算时间间隔差值的日期部分。 + 日期。 + + + 返回表示指定日期的指定日期部分的整数。 + 指定日期的指定日期部分。 + 要返回值的日期部分。 + 日期。 + + + 返回表示指定日期的指定日期部分的整数。 + 指定日期的指定日期部分。 + 要返回值的日期部分。 + 日期。 + + + 返回表示指定日期的指定日期部分的整数。 + 指定日期的指定日期部分。 + 要返回值的日期部分。 + 日期。 + + + 返回表示指定日期的指定日期部分的整数。 + 指定日期的指定日期部分。 + 要返回值的日期部分。 + 日期。 + + + 为以弧度指定的角返回对应的以度数表示的角。 + 转换为度数的指定角。 + 以弧度计量的角度。 + + + 为以弧度指定的角返回对应的以度数表示的角。 + 转换为度数的指定角。 + 以弧度计量的角度。 + + + 为以弧度指定的角返回对应的以度数表示的角。 + 转换为度数的指定角。 + 以弧度计量的角度。 + + + 为以弧度指定的角返回对应的以度数表示的角。 + 转换为度数的指定角。 + 以弧度计量的角度。 + + + 返回指示两个字符表达式的 SOUNDEX 值之差的整数值。 + 两个字符串之间的 SOUNDEX 差值。 + 第一个字符串。 + 第二个字符串。 + + + 返回所指定浮点表达式的指数值。 + 以常数 e 为底、以输入值为指数的幂。 + 输入值。 + + + 返回所指定浮点表达式的指数值。 + 以常数 e 为底、以输入值为指数的幂。 + 输入值。 + + + 将当前数据库系统时间戳作为日期时间值返回,不含数据库时区偏移量。此值派生自运行 SQL Server 实例的计算机上使用的操作系统。 + 当前的数据库时间戳。 + + + 将当前数据库系统时间戳作为日期时间值返回。不包含数据库时区偏移量。此值表示当前 UTC 时间(协调世界时)。此值派生自运行 SQL Server 实例的计算机上使用的操作系统。 + 当前的数据库 UTC 时间戳。 + + + 返回工作站名称。 + 工作站的名称。 + + + 指示输入值是否为有效的日期或时间。 + 如果输入表达式是 datetime 或 smalldatetime 数据类型的有效日期或时间值,则为 1;否则为 0。 + 所测试的值。 + + + 指示输入值是否为有效的数值类型。 + 如果输入表达式是有效的数值类型,则为 1;否则为 0。 + 字符串表达式。 + + + 返回所指定输入值的自然对数。 + 输入值的自然对数。 + 数值表达式。 + + + 返回所指定输入值的自然对数。 + 输入值的自然对数。 + 数值表达式。 + + + 返回所指定输入值以 10 为底的对数。 + 输入值的以 10 为底的对数。 + 数值表达式。 + + + 返回所指定输入值以 10 为底的对数。 + 输入值的以 10 为底的对数。 + 数值表达式。 + + + 根据 Unicode 标准的定义,返回具有所指定整数代码的 Unicode 字符。 + 与输入字符代码相对应的字符。 + 字符代码。 + + + 返回模式在指定表达式中首次出现的起始位置;如果在所有有效的文本和字符数据类型上未找到模式,则为零。 + 找到字符串模式的起始字符位置。 + 要搜索的字符串模式。 + 要搜索的字符串。 + + + 返回 pi 的常量值。 + pi 的数值。 + + + 返回一个 Unicode 字符串,其中添加有分隔符,以使输入字符串成为有效的 Microsoft SQL Server 分隔标识符。 + 添加有方括号的原始字符串。 + 要将引号字符添加到其中的表达式。 + + + 返回一个 Unicode 字符串,其中添加有分隔符,以使输入字符串成为有效的 Microsoft SQL Server 分隔标识符。 + 添加有指定引号字符的原始字符串。 + 要将引号字符添加到其中的表达式。 + 将用作分隔符的单字符字符串。它可以是单引号 (')、左方括号或右方括号 ([ ]) 或者英文双引号 (")。如果未指定 quote_character,则使用方括号。 + + + 为以度数指定的角返回对应的弧度度量值。 + 所指定角的弧度度量值。 + 以度数为单位的角。 + + + 为以度数指定的角返回对应的弧度度量值。 + 所指定角的弧度度量值。 + 以度数为单位的角。 + + + 为以度数指定的角返回对应的弧度度量值。 + 所指定角的弧度度量值。 + 以度数为单位的角 + + + 为以度数指定的角返回对应的弧度度量值。 + 所指定角的弧度度量值。 + 以度数为单位的角 + + + 返回一个 0 到 1(均不含)之间的伪随机浮点值。 + 伪随机值。 + + + 返回一个 0 到 1(均不含)之间的伪随机浮点值。 + 伪随机值。 + 种子值。如果未指定种子,则 SQL Server 数据库引擎将随机分配种子值。对于指定的种子值,返回的结果始终相同。 + + + 将一个字符串值重复指定的次数。 + 重复了由计数所指定的次数的目标字符串。 + 一个有效的字符串。 + 指定目标重复多少次的值。 + + + 返回指定表达式的正号 (+1)、零 (0) 或负号 (-1)。 + 输入表达式的符号。 + 数值表达式。 + + + 返回指定表达式的正号 (+1)、零 (0) 或负号 (-1)。 + 输入表达式的符号。 + 数值表达式。 + + + 返回指定表达式的正号 (+1)、零 (0) 或负号 (-1)。 + 输入表达式的符号。 + 数值表达式。 + + + 返回指定表达式的正号 (+1)、零 (0) 或负号 (-1)。 + 输入表达式的符号。 + 数值表达式。 + + + 返回所指定角的三角正弦。 + 输入表达式的三角正弦。 + 以弧度计量的角度。 + + + 返回所指定角的三角正弦。 + 输入表达式的三角正弦。 + 以弧度计量的角度。 + + + 将字母数字字符串转换为由四个字符组成的 (SOUNDEX) 代码,以便查找发音相似的字词或名称。 + 输入字符串的 SOUNDEX 代码。 + 一个有效的字符串。 + + + 返回由重复空格组成的字符串。 + 由指定数量的空格组成的字符串。 + 空格数。如果为负,则返回 null 字符串。 + + + 返回所指定数字的平方。 + 输入值的平方。 + 数值表达式。 + + + 返回所指定数字的平方。 + 输入值的平方。 + 数值表达式。 + + + 返回指定数字的平方根。 + 输入值的平方根。 + 数值表达式。 + + + 返回指定数字的平方根。 + 输入值的平方根。 + 数值表达式。 + + + 返回从数值数据转换的字符数据。 + 转换为字符串的输入表达式。 + 数值表达式。 + + + 返回从数值数据转换的字符数据。 + 转换为字符串的输入表达式。 + 数值表达式。 + 字符串的总长度。它包括小数点、符号、数字以及空格。默认值为 10。 + + + 返回从数值数据转换的字符数据。 + 转换为字符串的输入表达式。 + 数值表达式。 + 字符串的总长度。它包括小数点、符号、数字以及空格。默认值为 10。 + 小数点右侧的位数。小数必须小于或等于 16 位。如果小数超过 16 位,则会将结果截断至小数点右侧 16 位。 + + + 返回从数值数据转换的字符数据。 + 转换为字符串的数字输入表达式。 + 数值表达式。 + + + 返回从数值数据转换的字符数据。 + 转换为字符串的数字输入表达式。 + 数值表达式。 + 字符串的总长度。它包括小数点、符号、数字以及空格。默认值为 10。 + + + 返回从数值数据转换的字符数据。 + 转换为字符串的数字输入表达式。 + 数值表达式。 + 字符串的总长度。它包括小数点、符号、数字以及空格。默认值为 10。 + 小数点右侧的位数。小数必须小于或等于 16 位。如果小数超过 16 位,则会将结果截断至小数点右侧 16 位。 + + + 将一个字符串插入另一个字符串。这会从目标字符串中的起始位置开始,删除指定长度的字符,然后在目标字符串中的起始位置处,插入第二个字符串。 + 由两个字符串组成的字符串。 + 目标字符串。 + stringinput 中要插入替换字符串的字符位置。 + 要从 stringInput 删除的字符数。如果长度比 stringInput 长,则最多删除到 stringReplacement 中的最后一个字符。 + 要插入 stringInput 中的子字符串。 + + + 返回输入表达式的三角正切。 + 输入角的正切。 + 以弧度计量的角度。 + + + 返回输入表达式的三角正切。 + 输入角的正切。 + 以弧度计量的角度。 + + + 根据 Unicode 标准的定义,返回输入表达式中第一个字符的整数值。 + 输入字符串中第一个字符的字符代码。 + 一个有效的字符串。 + + + 返回与所指定标识号相对应的数据库用户名。 + 用户名。 + + + 返回与所指定标识号相对应的数据库用户名。 + 用户名。 + 用户 ID。 + + + SQL Server 的 SqlClient 提供程序的 DbProviderServices 实现。 + + + SqlProviderServices 类型的单一实例。 + + . + + + 这是已知的字符串,在配置文件和基于代码的配置中用作“提供程序固定名称”,用于指定 Microsoft SQL Server for ADO.NET 和实体框架提供程序服务。 + + + 注册一个处理程序,以处理来自数据库提供程序的非错误消息。 + 用来接收信息的连接。 + 用于处理消息的处理程序。 + + + 设置为 Microsoft.SqlServer.Types 程序集的全名来重写默认选择 + + + 将该标志设置为 false 可防止 值被截断到为列定义的小数位数。默认值为 true,指示将截断小数值,以便避免中断依赖于此行为的现有应用程序。 + 返回 + + + 表示可将提供程序不可知的迁移操作转换为可对 Microsoft SQL Server 数据库运行的 SQL 命令的提供程序。 + + + 初始化 类的新实例。 + + + 生成 SQL 以指定列的数据类型。此方法只生成实际类型,而不生成 SQL 创建列。 + 表示数据类型的 SQL。 + 列的定义。 + + + 为当前提供程序创建空连接。允许派生提供程序使用 之外的连接。 + 当前提供程序的空连接。 + + + 调用此方法以生成将尝试删除创建列时所创建的默认约束的 SQL。此方法通常由重写列的创建或更改的代码调用。 + 应用约束的表。 + 应用约束的列。 + 生成的 SQL 应写入的编写器。 + + + 生成 SQL 以指定将在列上设置的常量 bool 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量 byte[] 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 将一组迁移操作转换为 Microsoft SQL Server 特定 SQL。 + 为执行迁移操作而要执行的 SQL 语句的列表。 + 要转换的操作。 + 表示将面向的 SQL Server 版本的标记(即“2005", "2008"). + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成指定的更改过程操作。 + 更改过程操作。 + + + 重写此方法以在表的定义或其属性发生更改时生成 SQL。此方法的默认实现不执行任何操作。 + 描述对表的更改的操作。 + + + 为给定列模型生成 SQL。此方法由处理列的其他方法调用,并且可重写此方法以更改生成的 SQL。 + 要为其生成 SQL 的列。 + 生成的 SQL 应写入的编写器。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成指定的创建过程操作。 + 创建过程操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成指定的删除过程操作。 + 删除过程操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。允许派生提供程序处理其他操作类型。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成指定的移动过程操作。 + 移动过程操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成指定的重命名过程操作。 + 重命名过程操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 生成表示应用一系列迁移的指定更新数据库操作。生成的脚本是幂等的,这意味着其中包含检查是否已应用各迁移以及仅应用挂起迁移的条件逻辑。 + 更新数据库操作。 + + + 生成 SQL 以指定将在列上设置的常量 geogrpahy 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量 geometry 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量 DateTime 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量 DateTimeOffset 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量 Guid 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量字符串默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以指定将在列上设置的常量 TimeSpan 默认值。此方法只生成实际值,而不生成 SQL 设置默认值。 + 表示默认值的 SQL。 + 要设置的值。 + + + 生成 SQL 以创建数据库架构。应使用 Statement 方法添加生成的 SQL。 + 要创建的架构的名称。 + + + 生成 SQL 以将表标记为系统表。应使用 Statement 方法添加生成的 SQL。 + 要标记为系统表的表。 + 向其中写入生成的 SQL 的 。 + + + 为存储过程生成 SQL 主体。 + 存储过程的 SQL 主体。 + 表示针对插入、更新或删除操作的命令的命令目录树。 + 影响了参数名称的行。 + 提供程序清单标记。 + + + 返回要在迁移中没有显式指定默认值时用于存储生成的 GUID 列的列默认值。为本地 SQL Server 2005 和更高版本返回 newsequentialid()。为 SQL Azure 返回 newid()。 + 如上所述的 newsequentialid() 或 newid()。 + + + 生成带引号的名称。提供的名称可能包含或不包含架构。 + 带引号的名称。 + 要用引号引起来的名称。 + + + 将 SQL Server 的标识符用引号引起来。 + 保存的标识符。 + 要用引号引起来的标识符。 + + + 添加新的要针对数据库执行的 Statement。 + 包含要执行的 SQL 的编写器。 + 数据库提供程序的批处理终止符。 + + + 添加新的要针对数据库执行的 Statement。 + 要执行的语句。 + 指示是否应在用于进行迁移过程事务的事务范围外执行此语句。如果设置为 true,则在迁移过程失败时,不会回滚此操作。 + 数据库提供程序的批处理终止符。 + + + 将 sql 字符串拆分为一个或多个语句,必要时处理 T-SQL 实用工具语句。 + 要拆分为一个或多个语句来执行的 SQL。 + 获取或设置指示是否应在用于进行迁移过程事务的事务范围外执行此语句的值。如果设置为 true,则在迁移过程失败时,不会回滚此操作。 + + + 生成 SQL。应使用 Statement 方法添加生成的 SQL。 + 为之生成 SQL 的操作。 + + + 将 CREATE TABLE SQL 写入目标编写器。 + 为之生成 SQL 的操作。 + 目标编写器。 + + + 获取新的可用于生成 SQL 的 。这只是用于创建编写器的帮助器方法。写入编写器将不会导致注册要执行的 SQL。必须将生成的 SQL 传递给 Statement 方法。 + 用于 SQL 生成的空文本编写器。 + + + 包含在 Linq to Entities 中公开 SqlServer 方法的函数存根。 + + + 返回地理实例的开放地理空间信息联盟 (OGC) 已知文本 (WKT) 表示形式,通过实例携带的 Z(海拔)和 M(度量)值扩充该实例。 + 地理实例的开放地理空间信息联盟 (OGC) 已知文本 (WKT) 表示形式。 + 地理值。 + + + 返回地理实例的开放地理空间信息联盟 (OGC) 已知文本 (WKT) 表示形式,通过实例携带的 Z(海拔)和 M(度量)值扩充该实例。 + 几何实例的开放地理空间信息联盟 (OGC) 已知文本 (WKT) 表示形式。 + 几何值。 + + + 返回一个几何对象,它表示针对允许的指定公差,与地理实例之间的距离小于或等于指定值的所有点的并集。 + 与地理实例之间的距离小于或等于指定值的所有点的并集 + 地理值。 + 距离。 + 指定的公差。 + 指定公差值是相对的还是绝对的。 + + + 返回一个几何对象,它表示针对允许的指定公差,与几何实例之间的距离小于或等于指定值的所有点的并集。 + 与几何实例之间的距离小于或等于指定值的所有点的并集。 + 几何值。 + 距离。 + 指定的公差。 + 指定公差值是相对的还是绝对的。 + + + 返回由 EnvelopeCenter() 返回的点与地理实例的点之间的最大角度(度)。 + EnvelopeCenter() 返回的点之间的最大角度。 + 地理值。 + + + 返回可用作地理实例的边界圆中心的点。 + 指定边界圆的中心位置的 SqlGeography 值。 + 地理值。 + + + 提供快速的、只对交集编制索引的方法,以确定地理实例是否与另一 SqlGeography 实例相交(假定索引可用)。 + 如果某一地理实例可能与另一 SqlGeography 实例相交,则为 true;否则为 false。 + 地理值。 + 要与调用筛选器的实例进行比较的另一地理实例。 + + + 提供快速的、只对交集编制索引的方法,以确定地理实例是否与另一 SqlGeometry 实例相交(假定索引可用)。 + 如果某一地理实例可能与另一 SqlGeography 实例相交,则为 true;否则为 false。 + 几何值。 + 要与调用筛选器的实例进行比较的另一地理实例。 + + + 测试 SqlGeography 实例是否与指定的类型相同。 + 一个字符串,它指定在地理类型层次结构中公开的 12 种类型之一。 + 地理值。 + 一个字符串,它指定在地理类型层次结构中公开的 12 种类型之一。 + + + 测试 SqlGeometry 实例是否与指定的类型相同。 + 一个字符串,它指定在地理类型层次结构中公开的 12 种类型之一。 + 几何值。 + 一个字符串,它指定在地理类型层次结构中公开的 12 种类型之一。 + + + 将无效的几何实例转换为具有有效开放地理空间信息联盟 (OGC) 类型的几何实例。 + 已转换的几何实例。 + 几何值。 + + + 返回多边形实例中的总环数。 + 总环数。 + 地理值。 + + + 构造一个地理实例,它表示来自其 x 和 y 值以及空间引用 ID (SRID) 中的点实例。 + 构造的地理实例。 + 正在生成的点的 x 坐标。 + 正在生成的点的 y 坐标 + 地理实例的 SRID。 + + + 构造一个几何实例,它表示来自其 x 和 y 值以及空间引用 ID (SRID) 中的点实例。 + 构造的几何实例。 + 正在生成的点的 x 坐标。 + 正在生成的点的 y 坐标 + 地理实例的 SRID。 + + + 返回对具有给定公差的实例运行 Douglas-Peucker 算法而生成的给定地理实例的近似值。 + 返回 + 地理值。 + 输入到 Douglas-Peucker 算法的公差。公差必须是正数。 + + + 返回对具有给定公差的实例运行 Douglas-Peucker 算法而生成的给定地理实例的近似值。 + 返回 + 几何值。 + 输入到 Douglas-Peucker 算法的公差。公差必须是正数。 + + + 返回 SqlGeography 实例的指定环:1 ≤ n ≤ NumRings()。 + 表示由 n 指定的环的 SqlGeography 对象。 + 地理值。 + 介于 1 到多边形实例中的环数之间的整数表达式。 + + + 表示将实体框架与 Microsoft SQL Server 结合使用时将为地理空间类型提供支持的 的实现。 + + + 获取给定 值的已知二进制表示形式。 + 给定 值的已知二进制表示形式。 + 应为其生成已知二进制的地理值。 + + + 获取给定 值的已知二进制表示形式。 + 给定 值的已知二进制表示形式。 + 应为其生成已知二进制的几何值。 + + + 生成此 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeography 值的 GML 表示形式的字符串。 + 应生成 GML 的地理值。 + + + 生成此 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeometry 值的 GML 表示形式的字符串。 + 应生成 GML 的几何值。 + + + 获取给定 值的已知文本表示形式。此值仅应包含点的经度和纬度。 + 一个字符串,包含 的已知文本表示形式。 + 应为其生成已知文本的地理值。 + + + 获取给定 值的已知文本表示形式,仅包含点的 X 和 Y 坐标。 + 一个字符串,包含 的已知文本表示形式。 + 应为其生成已知文本的几何值。 + + + 返回 带有海拔和测量值的文本表示形式。 + + 的文本表示形式。 + 地理值。 + + + 返回 带有海拔和测量值的文本表示形式。 + + 的文本表示形式。 + 几何值。 + + + 创建一个地理值,该值表示所有距离小于或等于所给定 值的点。 + 一个新 DbGeography 值,表示所有距离小于或等于 的点。 + 地理值。 + 指定从 到缓冲区距离的双精度值。 + + + 创建一个几何值,该值表示所有距离小于或等于所给定 的点。 + 一个新 DbGeography 值,表示所有距离小于或等于 的点。 + 几何值。 + 指定从 到缓冲区距离的双精度值。 + + + 确定一个 值是否在空间上包含另一个值。 + 如果 包含 ,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + + 基于指定的已知 表示形式,创建一个兼容此空间服务实现的提供程序特定值。 + 一个提供程序特定的值,它按与此空间服务实现兼容的方式对 中包含的信息编码。 + 一个 实例,包含地理值的此已知表示形式。 + + + 基于指定的已知 表示形式,创建一个兼容此空间服务实现的提供程序特定值。 + 一个提供程序特定的值,它按与此空间服务实现兼容的方式对 中包含的信息编码。 + 一个 实例,包含几何值的此已知表示形式。 + + + 使用其中一个或这两个标准已知空间格式,创建表示指定 值的 实例。 + + 的已知表示形式,作为新的 + 地理值。 + + + 使用其中一个或这两个标准已知空间格式,创建表示指定 值的 实例。 + + 的已知表示形式,作为新的 + 几何值。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 相交,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + + 计算两个 值的差异。 + 表示 的差异的新的 DbGeography 值。 + 第一个地理值。 + 第二个地理值。 + + + 计算两个 值的差异。 + 表示 的差异的新的 DbGeometry 值。 + 第一个几何值。 + 第二个几何值。 + + + 确定两个给定的 值是否在空间上不相交。 + 如果 不与 相交,则为 true;否则为 false。 + 用来比较不相交性的第一个地理值。 + 用来比较不相交性的第二个地理值。 + + + 确定两个给定的 值是否在空间上不相交。 + 如果 不与 相交,则为 true;否则为 false。 + 用来比较不相交性的第一个几何值。 + 用来比较不相交性的第二个几何值。 + + + 计算两个 值中最接近的点之间的距离。 + 指定 中两个最接近的点之间的距离的双精度值。 + 第一个地理值。 + 第二个地理值。 + + + 计算两个 值中最接近的点之间的距离。 + 指定 中两个最接近的点之间的距离的双精度值。 + 第一个地理值。 + 第二个地理值。 + + + 如果表示地理集合,则返回给定 值的元素。 + 如果表示其他地理值的集合,则为在位置 处的 中的元素;否则为 null。 + 不需要表示地理集合的地理值。 + 在地理值中应提取元素的位置。 + + + 如果表示几何集合,则返回给定 值的元素。 + 如果表示其他地理值的集合,则为在位置 处的 中的元素;否则为 null。 + 不需要表示几何集合的几何值。 + 在几何值中应提取元素的位置。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值创建新的 值。 + 一个新 值,由已知二进制值使用默认 坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 一个新 值,由 GML 值使用默认 坐标系统标识符 (SRID) () 进行定义。 + 包含地理值的几何标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由 GML 值使用指定的坐标系标识符 (SRID) 进行定义。 + 包含地理值的几何标记语言 (GML) 表示形式的字符串。 + 值应使用的坐标系标识符。 + + + 基于与此空间服务实现兼容的提供程序特定的值创建新的 值。 + 一个新 DbGeometry 值,它受此空间服务实现和指定提供程序值的支持。 + 此空间服务实现可将其解释为地理值的提供程序特定的值。 + + + 基于指定的已知文本值创建新的 值。 + 一个新 值,由已知文本值使用默认 坐标系标识符 (SRID) 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值创建新的 值。 + 一个新 值,由已知二进制值使用默认 坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 一个新 值,由 GML 值使用默认 坐标系统标识符 (SRID) () 进行定义。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由 GML 值使用指定的坐标系标识符 (SRID) 进行定义。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + 值应使用的坐标系标识符。 + + + 基于与此空间服务实现兼容的提供程序特定的值创建新的 值。 + 一个新 DbGeometry 值,它受此空间服务实现和指定提供程序值的支持。 + 此空间服务实现可将其解释为几何值的提供程序特定的值。 + + + 基于指定的已知文本值创建新的 值。 + 一个新 值,由已知文本值使用默认 坐标系标识符 (SRID) 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 返回一个指示给定 值的面积、可以为 null 的双精度值,如果该值不表示面则可能为 null。 + 一个可以为 null 的双精度值,指示给定的 值的面积。 + 不需要表示面的地理值。 + + + 返回一个指示给定 值的面积、可以为 null 的双精度值,如果该值不表示面则可能为 null。 + 一个可以为 null 的双精度值,指示给定的 值的面积。 + 不需要表示面的几何值。 + + + 返回一个指示给定 值的边界、可以为 null 的双精度值。 + 给定 值的边界。 + 几何值。 + + + 返回表示给定 DbGeometry 值形心的 值,如果该值不表示面则可能为 null。 + 如果 表示面,则为它的形心;否则为 null。 + 不需要表示面的几何值。 + + + 返回一个指示给定 值的凸包、可以为 null 的双精度值。 + 给定 值的凸包。 + 几何值。 + + + 返回给定 值的坐标系标识符。 + 给定 值的坐标系标识符。 + 地理值。 + + + 返回给定 值的坐标系标识符。 + 给定 值的坐标系标识符。 + 几何值。 + + + 获取给定 值的维度(如果该值为一个集合)或最大的元素维度。 + + 的维度或最大元素维度(如果 为集合)。 + 应检索维度值的地理值。 + + + 获取给定 值的维度(如果该值为一个集合)或最大的元素维度。 + + 的维度或最大元素维度(如果 为集合)。 + 应检索维度值的几何值。 + + + 如果表示地理集合,则返回给定 值的元素数目。 + 如果 表示其他地理值的集合,则为它当中的元素个数;否则为 null。 + 不需要表示地理集合的地理值。 + + + 如果表示几何集合,则返回给定 值的元素数目。 + 如果 表示其他几何值的集合,则为它当中的元素数;否则为 null。 + 不需要表示几何集合的几何值。 + + + 如果表示点,则返回给定 值的海拔(Z 坐标)。 + 如果 表示点,则为它的海拔(Z 坐标);否则为 null。 + 不需要表示点的地理值。 + + + 如果表示点,则返回给定 值的海拔 (Z)。 + 如果 表示点,则为它的海拔(Z 坐标);否则为 null。 + 不需要表示点的几何值。 + + + 返回表示给定 DbGeography 值终点的 值,如果该值不表示曲线则可能为 null。 + 如果 表示曲线,则为它的终点;否则为 null。 + 不需要表示曲线的地理值。 + + + 返回表示给定 DbGeometry 值终点的 值,如果该值不表示曲线则可能为 null。 + 如果 表示曲线,则为它的终点;否则为 null。 + 不需要表示曲线的几何值。 + + + 获取给定的 值的包络线(最小边界框)作为几何值。 + 作为 值的 的包络线。 + 应检索包络线值的几何值。 + + + 返回表示给定 DbGeometry 值外部环的 值,如果该值不表示多边形则可能为 null。 + 如果此 表示多边形,则为表示其上外部环的 DbGeometry 值;否则为 null。 + 不需要表示多边形的几何值。 + + + 如果表示多边形,则返回给定 值中的内部环数。 + 如果此 表示多边形,则为它当中的元素数;否则为 null。 + 不需要表示多边形的几何值。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否闭合;如果该值不表示曲线则可能为 null。 + 如果给定的 值为闭合值,则为 true;否则为 false。 + 不需要表示曲线的地理值。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否闭合;如果该值不表示曲线则可能为 null。 + 如果给定的 值为闭合值,则为 true;否则为 false。 + 不需要表示曲线的几何值。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否为空。 + 如果给定的 为空,则为 true;否则为 false。 + 地理值。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否为空。 + 如果给定的 为空,则为 true;否则为 false。 + 几何值。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否是环;如果该值不表示曲线则可能为 null。 + 如果给定的 值是一个环,则为 true;否则为 false。 + 不需要表示曲线的几何值。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否很简单。 + 如果给定的 值简单,则为 true;否则为 false。 + 几何值。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否有效。 + 如果给定的 值有效,则为 true;否则为 false。 + 几何值。 + + + 如果表示点,则返回给定 值的纬度坐标。 + 给定 值的维度坐标。 + 不需要表示点的地理值。 + + + 返回一个指示给定 值的长度、可以为 null 的双精度值,如果该值不表示曲线则可能为 null。 + 给定 值的长度。 + 不需要表示曲线的地理值。 + + + 返回一个指示给定 值的长度、可以为 null 的双精度值,如果该值不表示曲线则可能为 null。 + 给定 值的长度。 + 不需要表示曲线的几何值。 + + + 如果表示点,则返回给定 值的经度坐标。 + 给定 值的经度坐标。 + 不需要表示点的地理值。 + + + 如果表示点,则返回给定 值的 M(度量值)坐标。 + 给定 值的 M(测量值)坐标。 + 不需要表示点的地理值。 + + + 如果表示点,则返回给定 值的 M(度量值)坐标。 + 给定 值的 M(测量值)坐标。 + 不需要表示点的几何值。 + + + 如果表示行字符串或线性环,则返回给定 值中的点数。 + 给定 值中的点数。 + 不需要表示行字符串或线性环的地理值。 + + + 如果表示行字符串或线性环,则返回给定 值中的点数。 + 给定 值中的点数。 + 不需要表示行字符串或线性环的几何值。 + + + 返回表示给定 DbGeometry 值面上点的 值,如果该值不表示面则可能为 null。 + 表示给定 的面上一个点的 值。 + 不需要表示面的几何值。 + + + 返回指示给定 值的空间类型名称的值。 + 给定的 值的空间类型名称。 + 地理值。 + + + 返回指示给定 值的空间类型名称的值。 + 给定的 值的空间类型名称。 + 几何值。 + + + 返回表示给定 DbGeography 值起点的 值,如果该值不表示曲线则可能为 null。 + 给定 值的起始点。 + 不需要表示曲线的地理值。 + + + 返回表示给定 DbGeometry 值起点的 值,如果该值不表示曲线则可能为 null。 + 给定 值的起始点。 + 不需要表示曲线的几何值。 + + + 如果表示点,则返回给定 值的 X 坐标。 + 给定 值的 X 坐标。 + 不需要表示点的几何值。 + + + 如果表示点,则返回给定 值的 Y 坐标。 + 给定 值的 Y 坐标。 + 不需要表示点的几何值。 + + + 如果表示多边形,则返回给定 值中的内部环。 + 如果表示多边形,则为位置 中的内部环;否则为 null。 + 不需要表示多边形的几何值。 + 在几何值中应提取元素的位置。 + + + 计算两个 值的交集。 + 一个新 值,表示 的交集。 + 第一个地理值。 + 第二个地理值。 + + + 计算两个 值的交集。 + 一个新 值,表示 的交集。 + 第一个几何值。 + 第二个地理值。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 相交,则为 true;否则为 false。 + 用来比较相交性的第一个地理值。 + 用来比较相交性的第二个地理值。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 相交,则为 true;否则为 false。 + 用来比较相交性的第一个几何值。 + 用来比较相交性的第二个几何值。 + + + 获取一个值,该值指示 EF 是否将在假定提供程序具有所需的类型/资源而非更快失败的情况下继续运行。默认值为 true。 + 如果 EF 将在假定提供程序具有所需的类型/资源而非更快失败的情况下继续运行,则为 true;否则为 false。 + + + 确定两个给定的 值是否在空间上重叠。 + 如果 重叠,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + + 如果表示行字符串或线性环,则返回给定 值的点元素。 + 如果表示行字符串或线性环,则为位置 中的点;否则为 null。 + 不需要表示行字符串或线性环的地理值。 + 在地理值中应提取元素的位置。 + + + 如果表示行字符串或线性环,则返回给定 值的点元素。 + 如果表示行字符串或线性环,则为位置 中的点;否则为 null。 + 不需要表示行字符串或线性环的几何值。 + 在几何值中应提取元素的位置。 + + + 根据给定的维度扩展的 9 交集模型 (DE-9IM) 交集模式来确定两个给定的 值在空间上是否相关。 + 如果根据指定的交集模式 ,此 值与 相关,则为 true;否则为 false。 + 第一个几何值。 + 应与第一个几何值比较相关性的几何值。 + 包含定义了相关性的 (DE-9IM) 交集模式的文本表示形式的字符串。 + + + 确定两个给定的 值在空间上是否相等。 + 如果 在空间上与 相等,则为 true;否则为 false。 + 要比较是否相等的第一个地理值。 + 要比较是否相等的第二个地理值。 + + + 确定两个给定的 值在空间上是否相等。 + 如果 在空间上与 相等,则为 true;否则为 false。 + 要比较是否相等的第一个几何值。 + 要比较是否相等的第二个几何值。 + + + 计算两个 值的对称差异。 + 一个新 值,表示 对称差异。 + 第一个地理值。 + 第二个地理值。 + + + 计算两个 值的对称差异。 + 一个新 值,表示 之间的对称差异。 + 第一个几何值。 + 第二个几何值。 + + + 确定两个给定的 值在空间上是否接触。 + 如果 相接,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + + 计算两个 值的并集。 + 一个新 值,表示 的并集。 + 第一个地理值。 + 第二个地理值。 + + + 计算两个 值的并集。 + 一个新 值,表示 的并集。 + 第一个几何值。 + 第二个几何值。 + + + 确定一个 值在空间上是否在另一几何值内。 + 如果 geometryValue 在 otherGeometry 中,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + + 包含 类的扩展方法。 + + + 配置用于等待此 的等待器,以避免封送继续部分回原始上下文,但是保留当前区域性和 UI 区域性。 + 用于等待此任务的对象。 + 要等待的任务。 + + + 配置用于等待此 的等待器,以避免封送继续部分回原始上下文,但是保留当前区域性和 UI 区域性。 + 用于等待此任务的对象。 + 要等待的任务。 + 相关 所生成的结果类型。 + + + 提供一个可等待的对象,它允许等待保留区域性的 + + + 构造 类的新实例。 + 要等待的任务。 + + + 获取用于等待此 的等待器。 + 等待器实例。 + + + 结束等待已完成的 + 未正确初始化等待器。 + 该任务已取消。 + 任务在错误状态下完成。 + + + 获取此 是否已完成的信息。 + + + 未实施此方法,不应调用它。 + 等待操作完成时要调用的操作。 + + + 计划继续操作到与此 关联的 + 等待操作完成时要调用的操作。 + + 参数为 null(在 Visual Basic 中为 Nothing)。 + 未正确初始化等待器。 + + + 提供一个可等待的对象,它允许等待保留区域性的 + 相关 所生成的结果类型。 + + + 构造 类的新实例。 + 要等待的任务。 + + + 获取用于等待此 的等待器。 + 等待器实例。 + + + 结束等待已完成的 + 已完成的 的结果。 + 未正确初始化等待器。 + 该任务已取消。 + 任务在错误状态下完成。 + + + 获取此 是否已完成的信息。 + + + 未实施此方法,不应调用它。 + 等待操作完成时要调用的操作。 + + + 计划继续操作到与此 关联的 + 等待操作完成时要调用的操作。 + + 参数为 null(在 Visual Basic 中为 Nothing)。 + 未正确初始化等待器。 + + + \ No newline at end of file diff --git a/Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net45/zh-Hans/EntityFramework.resources.dll b/Learun.Framework.Ultimate V7/packages/EntityFramework.6.2.0/lib/net45/zh-Hans/EntityFramework.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..6e55fdb5644bb4f12d3051675db85b1cd1966447 GIT binary patch literal 327376 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

-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 z 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 +>TtZR&ikU4Pq^f?dW`4mU2eR) z^EbxwnMiL}D{*$$y|Ui%OnSN}Xur03>;Cs@hTrbktnGgqI?dYD{-oHl zi?d(bs<-a^aCDmEX3uqOCx7kxXefDH@Ry*q-=z&R&ZI1CF)E6dGeH>|U~GkeRSd3}fV<+oVxxh3_~S#{(5G8upA zNlOHqJfy4H%XB{ZKFo;f3CZO%{jrgcxsZROq_)&&^=z9fFD9%#-p|&^9`@1F@cATEb`AH-0wRY5vX7)E;|G!<%`5!%3spo3`+PAw` mf1UW?!QX!&w}NNLwRal-(oysIX5MmQ`q2q8JRDzuEm#2je~N + + + EntityFramework + + + +

表示置于属性 (property) 上的某个属性 (attribute),以指示该属性 (property) 映射到的数据库列具有索引。 + + + 为将按约定命名并且没有指定列顺序、群集或唯一性的索引初始化新的 实例。 + + + 为具有给定名称并且没有指定列顺序、群集或唯一性的索引初始化新的 实例。 + 索引名称。 + + + 为具有给定名称和列顺序,但没有指定群集或唯一性的索引初始化新的 实例。 + 索引名称。 + 一个将用于确定多列索引的列顺序的数字。 + + + 确定此属性是否指定与给定属性相同的名称和配置。 + 如果其他对象等于此对象,则为 true,否则为 false。 + 要比较的属性。 + + + 确定此属性是否指定与给定属性相同的名称和配置。 + 如果其他对象等于此对象,则为 true,否则为 false。 + 要比较的属性。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取或设置一个值以指示索引是否定义群集索引。 + 如果索引定义群集索引,则为 true,如果索引定义非群集索引,则为 false。 + + + 获取或设置 是否已设置为一个值。 + 如果 已设置为一个值,则为 true;否则为 false. + + + 获取或设置一个值以指示是否定义唯一索引。 + 为 true,则定义唯一索引;为 false,则定义非唯一索引。 + + + 获取或设置 是否已设置为一个值。 + 如果 已设置为一个值,则为 true;否则为 false。 + + + 获取或设置索引名称。 + 索引名称。 + + + 获取或设置确定多列索引的列排序的数字。如果没有指定列顺序,它将为 -1。 + 确定多列索引的列排序的数字,或者如果已指定列顺序,则为 -1。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 为每个对象实例获取或设置不同的 ID,以便类型描述符不会尝试将所有 IndexAttribute 实例组合成单个实例。 + 每个对象实例的不同 ID。 + + + IDatabaseInitializer 的实现,它仅在数据库不存在时重新创建数据库并选择重新设置数据库的种子。若要设置数据库的种子,请创建一个派生类并重写 Seed 方法。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + + 应重写以向上下文实际添加数据来设置种子的方法。默认实现不执行任何操作。 + 要设置种子的上下文。 + + + 对象获取此类的实例,并且可使用该实例管理支持 DbContext 或连接的实际数据库。这包括对数据库执行创建、删除和存在性检查操作。请注意通过使用此类的静态方法,您只需使用一个连接(即无需完整上下文)即可对数据库执行删除和存在性检查。 + + + 对基础存储连接开始一个事务 + 一个包装对基础存储的事务对象的访问的 对象 + + + 使用指定的隔离级别对基础存储连接开始一个事务 + 一个包装对基础存储的事务对象的访问的 对象 + 用于创建基础存储事务的数据库隔离级别 + + + 获取或设置所有上下文操作的超时值(以秒为单位)。默认值为 null,null 值指示将使用基础提供程序的默认值。 + 超时值(秒);使用提供程序默认值时为 null。 + + + 检查数据库是否与当前 Code First 模型兼容。 + 如果上下文中的模型哈希与数据库中的模型哈希匹配,则为 true;否则为 false。 + 如果设置为 true,则当未在数据库中找到任何模型元数据时,将引发异常。如果设置为 false,则当未找到元数据时,此方法将返回 true。 + + + 返回此上下文使用的连接。如果连接不存在,这可能会导致创建连接。 + + + 在数据库服务器上为支持上下文中定义的模型创建一个新的数据库。请注意,在运行数据库初始化策略之前调用此方法将禁止执行该策略。 + + + 在数据库服务器上为支持上下文中定义的模型创建一个新的数据库(但仅在该服务器上没有带相同名称的数据库时这样做)。 + 如果数据库不存在且已创建,则为 true;否则为 false。 + + + 获取基础存储连接在其中登记的事务。可能为 null。 + + + 在从数据库名称或连接字符串创建 时要使用的连接工厂。 + + + 如果数据库服务器上存在数据库,则删除该数据库;否则不执行任何操作。从初始值设定项之外调用此方法会将数据库标记为尚未初始化。这意味着如果在删除数据库后尝试再次使用它,则将再次运行所有初始值设定项集,通常将尝试再次自动创建数据库。 + 如果数据库以前存在且已被删除,则为 true;否则为 false。 + + + 如果数据库服务器上存在数据库,则删除该数据库;否则不执行任何操作。 + 如果数据库以前存在且已被删除,则为 true;否则为 false。 + 与数据库的现有连接。 + + + 如果数据库服务器上存在数据库,则删除该数据库;否则不执行任何操作。按照 类的文档中描述的方法,使用给定的数据库名称或连接字符串创建与数据库的连接。 + 如果数据库以前存在且已被删除,则为 true;否则为 false。 + 数据库名称或数据库的连接字符串。 + + + 确定指定的数据库是否等于当前数据库。 + 如果指定的数据库等于当前数据库,则为 true;否则为 false。 + 要与当前对象进行比较的数据库。 + + + 对数据库执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 执行命令后由数据库返回的结果。 + 对于此命令控制事务的创建。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 执行命令后由数据库返回的结果。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 对于此命令控制事务的创建。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 对于此命令控制事务的创建。 + 命令字符串。 + 等待任务完成期间要观察的 。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 命令字符串。 + 等待任务完成期间要观察的 。 + 要应用于命令字符串的参数。 + + + 检查服务器上是否存在数据库。 + 如果数据库存在,则为 true;否则为 false。 + + + 检查服务器上是否存在数据库。 + 如果数据库存在,则为 true;否则为 false。 + 与数据库的现有连接。 + + + 检查服务器上是否存在数据库。按照 类的文档中描述的方法,使用给定的数据库名称或连接字符串创建与数据库的连接。 + 如果数据库存在,则为 true;否则为 false。 + 数据库名称或数据库的连接字符串。 + + + 返回此数据库的哈希函数。 + 此数据库的哈希函数。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在此上下文上运行注册的 。如果将“force”设置为 true,则将运行初始值设定项,不管它之前是否已运行。如果在应用程序正在运行时删除了数据库并且需要重新初始化数据库时,则这样做会很有用。如果将“force”设置为 false,则仅在尚未为此应用程序域中的此上下文、模型和连接运行初始值设定项的情况下运行它。当必须确保在开始某些操作之前已创建数据库并设定其种子时(这样偷懒的做法会导致问题,例如,当操作是事务的一部分时),通常会使用此方法。 + 如果设置为 true,则将运行初始值设定项,即使它之前已运行过也是如此。 + + + 设置此属性以将 生成的 SQL 记录到给定委托。例如,若要记录到控制台,请将此属性设置为 + + + 设置要用于给定上下文类型的数据库初始值设定项。当给定的 类型首次用于访问数据库时调用数据库初始值设定项。Code First 上下文的默认策略是 的实例。 + 要使用的初始值设定项或 null,后者对于指定的上下文类型禁用初始化。 + 上下文的类型。 + + + 创建一个原始 SQL 查询,该查询将返回给定泛型类型的元素。类型可以是包含与从查询返回的列名匹配的属性的任何类型,也可以是简单的基元类型。该类型不必是实体类型。即使返回对象的类型是实体类型,上下文也决不会跟踪此查询的结果。使用 方法可返回上下文跟踪的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.SqlQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.SqlQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 查询所返回对象的类型。 + + + 创建一个原始 SQL 查询,该查询将返回给定类型的元素。类型可以是包含与从查询返回的列名匹配的属性的任何类型,也可以是简单的基元类型。该类型不必是实体类型。即使返回对象的类型是实体类型,上下文也决不会跟踪此查询的结果。使用 方法可返回上下文跟踪的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.SqlQuery(typeof(Post), "SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.SqlQuery(typeof(Post), "SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + 查询所返回对象的类型。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + + + 返回数据库的字符串表示形式。 + 数据库的字符串表示形式。 + + + 如果您希望实体框架在外部事务内执行命令,则允许用户传递在 对象外创建的数据库事务。或者,传递 null 以清除该事务的框架知识。 + 外部事务 + 如果事务已完成,则引发此异常 + 如果与 对象关联的连接已在 事务中登记,则引发此异常 + 如果与 对象关联的连接已参与事务,则引发此异常 + 如果与事务关联的连接不匹配实体框架的连接,则引发此异常 + + + 从该类派生的类可与从 派生的类放置在同一个程序集中,以便定义应用程序的实体框架配置。通过调用受保护的方法并且在派生类型的构造函数中设置该类的受保护的属性,对配置进行设置。还可以在应用程序的配置文件中注册要使用的类型。有关实体框架配置的更多信息,请参见 http://go.microsoft.com/fwlink/?LinkId=260883。 + + + 初始化 类的新实例。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。 + 要添加的解析程序。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。 + 要添加的解析程序。 + + + 在应用程序启动时注册 。请注意,还可使用 随时添加和删除侦听器。 + 要注册的侦听器。 + + + 获取要用于解析实体框架中的服务依赖项的 + 要用于解析实体框架中的服务依赖项的 + + + 指定此实例是否等于指定对象。 + 如果此实例等于特定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 尝试从给定程序集发现和加载 。此方法应由工具使用以确保将正确配置加载到应用程序域中。工具应在访问 属性之前使用此方法。如果工具知道要使用的 类型,则应使用 方法,因为这会增加找到正确配置的机会。 + 要用于配置发现的 。 + + + 尝试发现和加载与给定 类型关联的 。此方法应由工具使用以确保将正确配置加载到应用程序域中。工具应在访问 属性之前使用此方法。 + 要用于配置发现的 类型。 + + + 在 DbConfiguration 已构造后、但在锁定可供使用之前在 EF 初始化过程中发生。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 此应用程序域的 的单一实例。可以在使用任何实体框架功能之前在应用程序启动时对此进行设置,并且在之后应被视作只读的。 + + 的实例。 + + + 从派生自 的类的构造函数调用此方法以设置工厂,从而允许 创建不具有公共无参数构造函数的上下文的实例。 + 用于创建上下文实例的委托。 + 应对其使用工厂的上下文类型。 + + + 从派生自 的类的构造函数调用此方法以设置工厂,从而允许 创建不具有公共无参数构造函数的上下文的实例。 + 应对其使用工厂的上下文类型。 + 用于创建上下文实例的委托。 + + + 从自 派生的类的构造函数调用此方法,以便设置要用于给定上下文类型的数据库初始值。当给定的 类型首次用于访问数据库时调用数据库初始值设定项。Code First 上下文的默认策略是 的实例。 + 要使用的初始值设定项或 null,后者对于指定的上下文类型禁用初始化。 + 上下文的类型。 + + + 从派生自 的类的构造函数调用此方法,以为 的类型设置要与 一起使用的工厂。 + 一个将创建格式化程序实例的委托。 + + + 设置 ,它用于在没有提供或没有可由 发现的其他连接字符串或连接的情况下按照约定创建连接。请注意,只要安装了 EntityFramework NuGet 包,就可以在 app.config 或 web.config 文件中设置默认连接工厂。与所有配置文件设置一样,在配置文件中设置的默认连接工厂将优先于使用此方法进行的任何设置。因此,必须首先从配置文件中删除该设置,然后调用此方法才会起作用。从自 派生的类的构造函数调用此方法,以便更改要使用的默认连接工厂。 + 连接工厂。 + + + 从派生自 的类的构造函数调用此方法,以设置一个 委托,该委托将用于为任何 创建默认 。仅当 中没有显式设置工厂且没有使用 方法为正在使用的提供程序注册工厂时,才会使用此默认工厂。 + 一个工厂,用于为表示默认架构的给定 创建 实例。 + + + 从派生自 的类的构造函数调用此方法,以设置将在需要空间提供程序且无法找到特定于提供程序的空间提供程序时使用的 的全局实例。通常,特定于提供程序的空间提供程序是从 实现中获取的,通过解析 的服务以将提供程序固定名称作为键传递,可返回此实现。但是,这并不适用于 的独立实例,因为无法知道要使用的空间提供程序。因此,在创建 的独立实例时会始终使用全局空间提供程序。 + 空间提供程序。 + + + 从派生自 的类的构造函数调用此方法,以注册 + 一个返回事务处理程序的新实例的函数。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序的 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 返回执行策略的新实例的函数。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序及给定服务器名称的 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 返回执行策略的新实例的函数。 + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + 从派生自 的类的构造函数调用此方法,以设置一个 委托,该委托允许为不具有显式工厂集的任何 的给定提供程序创建自定义的 + 此生成器应该用于的 ADO.NET 提供程序的固定名称。 + 一个工厂,用于为表示默认架构的给定 创建 实例。 + + + 从自 派生的类的构造函数调用此方法,以便设置 的实现,该实现允许无需打开连接即可从连接获取提供程序清单标记。 + 清单标记解析程序。 + + + 从派生自 的类的构造函数调用此方法,以便为 的实现设置工厂,从而允许将 实例所表示的自定义注释序列化到 EDMX XML 以及从中进行序列化。 + 将由此序列化程序处理的自定义注释的名称。 + 一个将用于创建序列化程序实例的委托。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序的 + 此生成器应该用于的 ADO.NET 提供程序的固定名称。 + 每次调用时都返回 SQL 生成器的新实例的委托。 + + + 从派生自 的类的构造函数调用此方法,以便将 设置为模型缓存键工厂,该工厂允许使用键来缓存要更改的 后的模型。 + 键工厂。 + + + 从自 派生的类的构造函数调用此方法,以便设置复数形式服务。 + 要使用的复数形式服务。 + + + 从自 派生的类的构造函数调用此方法,以便注册 ADO.NET 提供程序。 + ADO.NET 提供程序固定名称,指示此提供程序将用于的 ADO.NET 连接的类型。 + 提供程序实例。 + + + 从自 派生的类的构造函数调用此方法,以便设置 的实现,该实现允许在默认实现不足的情况下从 获取 + 提供程序工厂服务。 + + + 从自 派生的类的构造函数调用此方法,以便注册实体框架提供程序。 + ADO.NET 提供程序固定名称,指示此提供程序将用于的 ADO.NET 连接的类型。 + 提供程序实例。 + + + 从派生自 的类的构造函数调用此方法,以设置要用于特定提供程序和提供程序清单标记的 的实现。 + + 指示将使用此空间提供程序的 ADO.NET 连接的类型。 + 空间提供程序。 + + + 从派生自 的类的构造函数调用此方法,以设置要用于具有任何清单标记的特定提供程序的 的实现。 + ADO.NET 提供程序固定名称,指示将使用此空间提供程序的 ADO.NET 连接的类型。 + 空间提供程序。 + + + 从自 派生的类的构造函数调用此方法,以注册给定提供程序的数据库表的存在检查器。 + ADO.NET 提供程序固定名称,指示此提供程序将用于的 ADO.NET 连接的类型。 + 要使用的表存在检查器。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序的 + ADO.NET 提供程序固定名称,指示将使用此事务处理程序的 ADO.NET 连接的类型。 + 一个返回事务处理程序的新实例的函数。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序及给定服务器名称的 + ADO.NET 提供程序固定名称,指示将使用此事务处理程序的 ADO.NET 连接的类型。 + 一个返回事务处理程序的新实例的函数。 + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 可将此属性置于 的子类上,以指示 的子类,后者表示应用程序的基于代码的配置与上下文类型处于不同的程序集中。 + + + 指示应对此应用程序的基于代码的配置使用由给定程序集限定名称表示的 的子类。 + 要使用的 类型。 + + + 指示应对此应用程序的基于代码的配置使用 的给定子类。 + 要使用的 类型。 + + + 获取应对此应用程序的基于代码的配置使用的 的子类。 + 应对此应用程序的基于代码的配置使用的 的子类。 + + + DbContext 实例表示工作单元和存储库模式的组合,可用来查询数据库并将更改组合在一起,这些更改稍后将作为一个单元写回存储区中。DbContext 在概念上与 ObjectContext 类似。 + + + 使用约定构造一个新的上下文实例以创建将连接到的数据库的名称。按照约定,该名称是派生上下文类的全名(命名空间与类名称的组合)。请参见有关这如何用于创建连接的类备注。 + + + 通过现有连接来连接到数据库以构造一个新的上下文实例。如果 是 false,则释放上下文时将不会释放该连接。 + 要用于新的上下文的现有连接。 + 如果设置为 true,则释放上下文时将释放该连接;否则调用方必须释放该连接。 + + + 通过使用现有连接来连接到数据库以构造一个新的上下文实例,并从给定模型初始化该实例。如果 是 false,则释放上下文时将不会释放该连接。 + 要用于新的上下文的现有连接。 + 支持此上下文的模型。 + 如果设置为 true,则释放上下文时将释放该连接;否则调用方必须释放该连接。 + + + 围绕现有 ObjectContext 构造一个新的上下文实例。 + 要使用新的上下文包装的现有 ObjectContext。 + 如果设置为 true,则释放 DbContext 时将释放 ObjectContext;否则调用方必须释放该连接。 + + + 使用约定构造一个新的上下文实例以创建将连接到的数据库的名称,并从给定模型初始化该名称。按照约定,该名称是派生上下文类的全名(命名空间与类名称的组合)。请参见有关这如何用于创建连接的类备注。 + 支持此上下文的模型。 + + + 可以将给定字符串用作将连接到的数据库的名称或连接字符串来构造一个新的上下文实例。请参见有关这如何用于创建连接的类备注。 + 数据库名称或连接字符串。 + + + 可以将给定字符串用作将连接到的数据库的名称或连接字符串来构造一个新的上下文实例,并从给定模型初始化该实例。请参见有关这如何用于创建连接的类备注。 + 数据库名称或连接字符串。 + 支持此上下文的模型。 + + + 提供对用于处理实体的更改跟踪的上下文功能的访问。 + 一个用于访问处理更改跟踪的功能的对象。 + + + 提供对上下文的配置选项的访问。 + 一个用于访问配置选项的对象。 + + + 为此上下文创建一个数据库实例,该上下文允许您对基础数据库执行创建/删除/存在性检查操作。 + + + 调用受保护的 Dispose 方法。 + + + 释放上下文。在以下情况下也将释放基础 :它由此上下文创建,或者在创建此上下文时将所有权传递给了此上下文。在以下情况下也将释放与数据库的连接( 对象):它由此上下文创建,或者在创建此上下文时将所有权传递给了此上下文。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 获取给定实体的 对象,以便提供对与该实体有关的信息的访问以及对实体执行操作的功能。 + 实体的项。 + 实体。 + + + 获取给定实体的 对象,以便提供对与该实体有关的信息的访问以及对实体执行操作的功能。 + 实体的项。 + 实体。 + 实体的类型。 + + + 确定指定的 DbContext 是否等于当前 DbContext。 + 如果指定的 DbContext 等于当前 DbContext,则为 true;否则为 false。 + 要与当前 DbContext 进行比较的 DbContext。 + + + 返回此 DBContext 的哈希函数。 + 此 DBContext 的哈希函数。 + + + 返回当前 DbContext 的类型。 + 当前 DbContext 的类型。 + + + 验证跟踪实体,并返回包含验证结果的 的集合。 + 无效实体的验证结果集合。集合决不为 null,且不得包含 null 值或有效实体的结果。 + + + 在完成对派生上下文的模型的初始化后,并在该模型已锁定并用于初始化上下文之前,将调用此方法。虽然此方法的默认实现不执行任何操作,但可在派生类中重写此方法,这样便能在锁定模型之前对其进行进一步的配置。 + 定义要创建的上下文的模型的生成器。 + + + 将在此上下文中所做的所有更改保存到基础数据库。 + 已写入基础数据库的对象的数目。 + 向数据库发送更新时出错。 + 数据库命令未影响预期行数。这通常指示存在乐观并发冲突;即,某行自对它查询以来已在数据库中发生更改。 + 保存已中止,因为实体属性值的验证失败。 + 尝试使用不支持的行为,如对相同上下文实例并发执行多个异步命令。 + 上下文或连接已释放。 + 向数据库发送命令之前或之后,尝试在上下文中处理实体时发生错误。 + + + 将在此上下文中所做的所有更改异步保存到基础数据库。 + 表示异步保存操作的任务。任务结果包含已写入基础数据库的对象数目。 + 向数据库发送更新时出错。 + 数据库命令未影响预期行数。这通常指示存在乐观并发冲突;即,某行自对它查询以来已在数据库中发生更改。 + 保存已中止,因为实体属性值的验证失败。 + 尝试使用不支持的行为,如对相同上下文实例并发执行多个异步命令。 + 上下文或连接已释放。 + 向数据库发送命令之前或之后,尝试在上下文中处理实体时发生错误。 + + + 将在此上下文中所做的所有更改异步保存到基础数据库。 + 表示异步保存操作的任务。任务结果包含已写入基础数据库的对象数目。 + 等待任务完成期间要观察的 。 + 在已释放上下文时引发。 + + + 针对对上下文和基础存储中给定类型的实体的访问返回一个 实例。 + 给定实体类型的集。 + 应为其返回一个集的类型实体。 + + + 针对对上下文和基础存储中给定类型的实体的访问返回一个非泛型 实例。 + 给定实体类型的集。 + 应为其返回一个集的实体的类型。 + + + 扩展点允许用户重写仅验证添加的实体和修改的实体的默认行为。 + 如果继续验证,则为 true;否则为 false。 + 应验证的 DbEntityEntry 实例。 + + + 返回基础化此上下文的实体框架 ObjectContext。 + + + 返回 DbContext 的字符串表示形式。 + DbContext 的字符串表示形式。 + + + 扩展点允许用户自定义实体的验证或筛选出验证结果。由 调用。 + 实体验证结果。重写时可能为 null。 + 要验证的 DbEntityEntry 实例。 + 包含用于自定义验证的附加信息的用户定义的字典。它将被传递给 并将作为 公开。此参数是可选的,并且可为 null。 + + + 包装对基础存储连接的事务对象的访问并确保实体框架在该事务的上下文内对数据库执行命令。通过对 对象调用 BeginTransaction() 来检索此类的实例。 + + + 提交基础存储事务。 + + + 清除此事务对象并确保实体框架不再使用该事务。 + + + 释放此事务对象占用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 确定此实例是否与指定对象相同。 + 如果此实例与指定对象相同,则为 true;否则为 false。 + 要与此实例进行比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取与此实例关联的基础类型。 + 与此实例关联的基础类型。 + + + 回滚基础存储事务。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 获取基础化此上下文事务的数据库(存储)事务。 + 基础化此上下文事务的数据库(存储)事务。 + + + 指示给定的方法是 EDM 函数的代理。 + + + 初始化 类的新实例。 + 映射到的函数的命名空间。 + 映射到的函数的名称。 + + + 映射到的函数的名称。 + 映射到的函数的名称。 + + + 映射到的函数的命名空间。 + 映射到的函数的命名空间。 + + + 提供在 LINQ to Entities 查询中使用的公开 EDM 规范函数的公共语言运行时 (CLR) 方法。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为非 Unicode 字符串处理的运算符。 + 作为非 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为 Unicode 字符串处理的运算符。 + 作为 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTime EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTimeOffset EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + 新日期的时区偏移量部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateTime EDM 函数以创建新的 对象。 + 新的时间跨度。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个时间跨度间隔的小时数。 + 第一个时间跨度和第二个时间跨度间隔的小时数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个时间跨度间隔的微秒数。 + 第一个时间跨度和第二个时间跨度间隔的微秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个时间跨度间隔的毫秒数。 + 第一个时间跨度和第二个时间跨度间隔的毫秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个时间跨度间隔的分钟数。 + 第一个时间跨度和第二个时间跨度间隔的分钟数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个时间跨度间隔的纳秒数。 + 第一个时间跨度和第二个时间跨度间隔的纳秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个时间跨度间隔的秒数。 + 第一个时间跨度和第二个时间跨度间隔的秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 GetTotalOffsetMinutes EDM 函数以返回指定的日期/时间偏移 UTC 的分钟数。该值通常介于 +780 到 -780 之间(+ 或 - 13 小时)。 + 输入对 UTC 的偏移量。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Left 函数以返回字符串中最左侧指定数目的字符。 + 包含从输入字符串左侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Reverse 函数以返回其字符顺序反转的指定字符串。 + 以反转字符顺序显示的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Right 函数以返回字符串中最右侧指定数目的字符。 + 包含从输入字符串右侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + DbModelBuilder 用于将 CLR 类映射到数据库架构。此以代码为中心的方法称作“Code First”,可用于生成实体数据模型 (EDM) 模型。 + + + 初始化 类的新实例。发现初始模型的过程将使用您计算机上安装的实体框架的最新版本中所包含的一组约定。 + + + 初始化 类的新实例,它将使用一组特定的约定来发现初始模型。 + 要使用的约定的版本。 + + + 使用此生成器基于执行的配置来创建一个 。连接用于确定要使用的数据库提供程序,因为这会影响生成的模型的数据库层。 + 已生成的模型。 + 用来确定提供程序信息的连接。 + + + 使用此生成器基于执行的配置来创建一个 。必须指定提供程序信息,因为这会影响生成的模型的数据库层。对于 SqlClient,固定名称为“System.Data.SqlClient”,清单标记为版本年份(例如,“2005”、“2008”等)。 + 已生成的模型。 + 模型将用于的数据库提供程序。 + + + 将一个类型注册为模型中的复杂类型,并返回一个可用来配置复杂类型的对象。可对同一类型多次调用此方法以执行多行配置。 + 指定的复杂类型的配置对象。 + 要注册或配置的类型。 + + + 获取此 DbModelBuilder 的 。注册器允许使用此生成器来注册派生的实体和复杂类型配置。 + + + 提供对处理约定的此 DbModelBuilder 的设置的访问。 + + + 将实体类型注册为模型的一部分,并返回一个可用来配置实体的对象。可对同一实体多次调用此方法以执行多行配置。 + 指定的实体类型的配置对象。 + 要注册或配置的类型。 + + + 指定 是否等于指定的对象。 + 如果 等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置默认数据库架构名称。此默认数据库架构名称用于不具有显式配置的架构名称的数据库对象。 + 同一个 DbModelBuilder 实例,以便多个调用可以链接在一起。 + 默认数据库架构的名称。 + + + 从模型中排除类型。这用于在初始模型发现期间从根据约定添加的模型中移除类型。 + 同一个 DbModelBuilder 实例,以便多个调用可以链接在一起。 + 要排除的类型。 + + + 从模型中排除指定的类型。这用于在初始模型发现期间从根据约定添加的模型中移除类型。 + 同一个 DbModelBuilder 实例,以便多个调用可以链接在一起。 + 要从模型中排除的类型。 + + + 开始配置适用于模型中所有属性的轻型约定。 + 约定的配置对象。 + + + 开始配置适用于模型中指定类型的所有基元属性的轻型约定。 + 约定的配置对象。 + 此约定将适用于的属性类型。 + + + 将实体类型注册为模型的一部分。 + 要注册的类型。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 开始配置应用于模型中从泛型参数指定的类型派生或实现泛型参数指定的类型的所有实体和复杂类型的轻型约定。此方法不会将类型注册为模型的一部分。 + 约定的配置对象。 + 此约定将适用于的实体类型或复杂类型。 + + + 开始配置应用于模型中所有实体和复杂类型的轻型约定。 + 约定的配置对象。 + + + 可直接将此枚举中的值提供给 类,也可以在应用到派生自 的类的 中使用该值。使用的值可定义在从代码生成模型(也称为“Code First”)时应使用的 DbContext 和 DbModelBuilder 约定的版本。 + + + 指示应使用 约定的最新版本。 + + + 指示应使用实体框架 4.1 版附带的 约定的版本。 + + + 指示应使用实体框架 5.0 版附带的 约定的版本。 + + + 指示面向 .Net Framework 4 时,应使用实体框架 5.0 版附带的 约定的版本。 + + + 指示应使用实体框架 6.0 版附带的 约定的版本。 + + + 此特性可应用于派生自 的类,以便在从代码生成模型(也称为“Code First”)时设置应使用的 DbContext 和 约定的版本。有关 DbModelBuilder 版本的详细信息,请参见 枚举。 + + + 初始化 类的新实例。 + 要使用的 约定版本。 + + + 获取 约定版本。 + + 约定版本。 + + + 非泛型版本的 ,可在生成时不知道实体类型时使用。 + + + 从派生类型的构造函数中进行调用时,创建一个 实例,它将用作 DbSet 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking、AsStreaming 和 Include,它们的默认实现是空操作。 + + + 将给定实体以“已添加”状态添加到集的基础上下文中,这样一来,当调用 SaveChanges 时,会将该实体插入到数据库中。 + 实体。 + 要添加的实体。 + + + 将给定实体集合添加到基础化集的上下文中(每个实体都置于“已添加”状态),这样当调用 SaveChanges 时,会将它插入到数据库中。 + 实体集合。 + 要添加的实体集合。 + + + 将给定实体附加到集的基础上下文中。也就是说,将实体以“未更改”的状态放置到上下文中,就好像从数据库读取了该实体一样。 + 实体。 + 要附加的实体。 + + + 返回等效泛型 对象。 + 泛型集对象。 + 已为其创建集的实体的类型。 + + + 为此集的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + + + 为此集的类型或派生自此集类型的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + 要创建的实体的类型。 + + + 返回指定的集是否等于当前集。 + 如果指定的对象等于当前集,则为 true;否则为 false。 + 要与当前对象进行比较的集。 + + + 查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 找到的实体或为 null。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 等待任务完成期间要观察的 。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 返回指定集的哈希函数。 + 集的哈希函数。 + + + 获取当前集的类型。 + 当前集的类型。 + + + 获取 ,它表示此集中的所有“已添加”、“未更改”和“已修改”实体的本地视图。在上下文中添加或删除实体时,该本地视图将保持同步。同样,在本地视图中添加或删除实体也会自动在上下文中添加或删除实体。 + 本地视图。 + + + 将给定实体标记为“已删除”,这样一来,当调用 SaveChanges 时,将从数据库中删除该实体。请注意,在调用此方法之前,该实体必须以另一种状态存在于该上下文中。 + 实体。 + 要删除的实体。 + + + 从基础化集的上下文中删除给定实体集合(每个实体都置于“已删除”状态),这样当调用 SaveChanges 时,会从数据库中删除它。 + 实体集合。 + 要删除的实体集合。 + + + 创建一个原始 SQL 查询,该查询将返回此集中的实体。默认情况下,上下文会跟踪返回的实体;可通过对返回的 调用 AsNoTracking 来更改此设置。请注意返回实体的类型始终是此集的类型,而不会是派生的类型。如果查询的一个或多个表可能包含其他实体类型的数据,则必须编写适当的 SQL 查询以确保只返回适当类型的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Set(typeof(Blog)).SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Set(typeof(Blog)).SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + + + DbSet 表示上下文中给定类型的所有实体的集合或可从数据库中查询的给定类型的所有实体的集合。可以使用 DbContext.Set 方法从 DbContext 中创建 DbSet 对象。 + 定义集的类型。 + + + 从派生类型的构造函数中进行调用时,创建一个 实例,它将用作 DbSet 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking、AsStreaming 和 Include,它们的默认实现是空操作。 + + + 将给定实体以“已添加”状态添加到集的基础上下文中,这样一来,当调用 SaveChanges 时,会将该实体插入到数据库中。 + 要添加的实体。 + + + 将给定实体集合添加到基础化集的上下文中(每个实体都置于“已添加”状态),这样当调用 SaveChanges 时,会将它插入到数据库中。 + 实体集合。 + 要添加的实体集合。 + + + 将给定实体附加到集的基础上下文中。也就是说,将实体以“未更改”的状态放置到上下文中,就好像从数据库读取了该实体一样。 + 要附加的实体。 + + + 为此集的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + + + 为此集的类型或派生自此集类型的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 要创建的实体的类型。 + + + 确定指定的 DbSet 是否等于当前 DbSet。 + 如果指定的 DbSet 等于当前 DbSet,则为 true;否则为 false。 + 要与当前 DbSet 进行比较的对象。 + + + 查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 找到的实体或为 null。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 要查找的实体的主键值。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 等待任务完成期间要观察的 。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 返回此 DbSet 的哈希函数。 + 此 DbSet 的哈希函数。 + + + 返回当前 DbSet 的类型。 + 当前 DbSet 的类型。 + + + 获取 ,它表示此集中的所有“已添加”、“未更改”和“已修改”实体的本地视图。在上下文中添加或删除实体时,该本地视图将保持同步。同样,在本地视图中添加或删除实体也会自动在上下文中添加或删除实体。 + 本地视图。 + + + 返回等效非泛型 对象。 + 非泛型集对象。 + 泛型集对象。 + + + 将给定实体标记为“已删除”,这样一来,当调用 SaveChanges 时,将从数据库中删除该实体。请注意,在调用此方法之前,该实体必须以另一种状态存在于该上下文中。 + 要删除的实体。 + + + 从基础化集的上下文中删除给定实体集合(每个实体都置于“已删除”状态),这样当调用 SaveChanges 时,会从数据库中删除它。 + 实体集合。 + 要删除的实体集合。 + + + 创建一个原始 SQL 查询,该查询将返回此集中的实体。默认情况下,上下文会跟踪返回的实体;可通过对返回的 调用 AsNoTracking 来更改此设置。请注意返回实体的类型始终是此集的类型,而不会是派生的类型。如果查询的一个或多个表可能包含其他实体类型的数据,则必须编写适当的 SQL 查询以确保只返回适当类型的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Blogs.SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Blogs.SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + + + IDatabaseInitializer 的实现,它总是会在首次在应用程序域中使用上下文时,重新创建数据库并可以选择重新设置数据库的种子。若要设置数据库的种子,请创建一个派生类并重写 Seed 方法。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + 为 null。 + + + 应重写以向上下文实际添加数据来设置种子的方法。默认实现不执行任何操作。 + 要设置种子的上下文。 + + + IDatabaseInitializer 的实现,它仅在模型自数据库创建后发生更改时删除数据库、重新创建数据库并选择重新设置数据库的种子。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + 为 null。 + + + 应重写以向上下文实际添加数据来设置种子的方法。默认实现不执行任何操作。 + 要设置种子的上下文。 + + + 描述实体的状态。 + + + 实体将由上下文跟踪,但是在数据库中还不存在。 + + + 实体将由上下文跟踪并存在于数据库中,但是已被标记为在下次调用 SaveChanges 时从数据库中删除。 + + + 该实体未由上下文跟踪。刚使用新运算符或某个 Create 方法创建实体后,实体就处于此状态。 + + + 实体将由上下文跟踪并存在于数据库中,已修改其中的一些或所有属性值。 + + + 实体将由上下文跟踪并存在于数据库中,其属性值与数据库中的值相同。 + + + 此接口的实现用于在首次使用 派生类的实例时初始化基础数据库。此初始化可以有条件地创建数据库和/或使用数据设置其种子。使用 类的静态 InitializationStrategy 属性设置所用的策略。提供以下实现: + 此类型参数是逆变。即可以使用指定的类型或派生程度更低的类型。 有关协变和逆变的详细信息,请参阅。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + + + 表示上下文中给定类型的所有实体的集合或可从数据库中查询的给定类型的所有实体的集合。 是 IDbSet 的具体实现。 + 定义集的类型。 + + + 将给定实体以“已添加”状态添加到集的基础上下文中,这样一来,当调用 SaveChanges 时,会将该实体插入到数据库中。 + 实体。 + 要添加的实体。 + + + 将给定实体附加到集的基础上下文中。也就是说,将实体以“未更改”的状态放置到上下文中,就好像从数据库读取了该实体一样。 + 实体。 + 要附加的实体。 + + + 为此集的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + + + 为此集的类型或派生自此集类型的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + 要创建的实体的类型。 + + + 查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 找到的实体或为 null。 + 要查找的实体的主键值。 + + + 获取 ,它表示此集中的所有“已添加”、“未更改”和“已修改”实体的本地视图。在上下文中添加或删除实体时,该本地视图将保持同步。同样,在本地视图中添加或删除实体也会自动在上下文中添加或删除实体。 + 本地视图。 + + + 将给定实体标记为“已删除”,这样一来,当调用 SaveChanges 时,将从数据库中删除该实体。请注意,在调用此方法之前,该实体必须以另一种状态存在于该上下文中。 + 实体。 + 要删除的实体。 + + + 将使用 Code First 迁移将数据库更新到最新版本的 的实现。 + 上下文的类型。 + 初始化过程中要使用的迁移配置的类型。 + + + 初始化 MigrateDatabaseToLatestVersion 类的新实例,该类将使用通过默认构造函数或已注册工厂(如果适用)构造的上下文中的连接信息。 + + + 初始化 MigrateDatabaseToLatestVersion 类的新实例,该类指定是否使用触发初始化的上下文中的连接信息来执行迁移。 + 如果设置为 true,则初始值设定项使用触发初始化的上下文中的连接信息来运行。否则,从使用默认构造函数或已注册工厂(如果适用)构造的上下文中获取连接信息。 + + + 初始化 MigrateDatabaseToLatestVersion 类的新实例,该类指定是否使用触发初始化的上下文中的连接信息来执行迁移。也允许指定在初始化期间要使用的迁移配置。 + 如果设置为 true,则初始值设定项使用触发初始化的上下文中的连接信息来运行。否则,从使用默认构造函数或已注册工厂(如果适用)构造的上下文中获取连接信息。 + 在初始化期间要使用的迁移配置。 + + + 初始化将使用配置文件中的特定连接字符串连接到数据库以执行迁移的 MigrateDatabaseToLatestVersion 类的新实例。 + 用于迁移的连接字符串的名称。 + + + 初始化给定上下文的数据库。 + 上下文。 + + + 不执行任何操作的 的实现。使用此初始值设定项将禁用给定上下文类型的数据库初始化。将此类的实例传递给 将等效于传递 null。正在使用 解析初始值设定项时,此类的实例必须用于禁用初始化。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + + + 的扩展方法。 + + + 返回 实现,该实现与给定的 保持同步。 + 绑定列表。 + 绑定列表将与其保持同步的集合。 + 元素类型。 + + + 提供用于 Entity Framework LINQ 查询的有用扩展方法。 + + + 异步确定序列的所有元素是否满足条件。 + 表示异步操作的任务。如果源序列的每个元素都通过了指定谓词中的测试,则任务结果包含 true;否则为 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 是 null。 + + 不实现 + + + 异步确定序列的所有元素是否满足条件。 + 表示异步操作的任务。如果源序列的每个元素都通过了指定谓词中的测试,则任务结果包含 true;否则为 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 是 null。 + + 不实现 + + + 异步确定序列是否包含任何元素。 + 表示异步操作的任务。如果源序列包含任何元素,则任务结果包含 true;否则包含 false。 + 要检查为空的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步确定序列的任何元素是否满足条件。 + 表示异步操作的任务。如果源序列的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步确定序列的任何元素是否满足条件。 + 表示异步操作的任务。如果源序列的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步确定序列是否包含任何元素。 + 表示异步操作的任务。如果源序列包含任何元素,则任务结果包含 true;否则包含 false。 + 要检查为空的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。此方法通过调用基础查询对象的 AsNoTracking 方法来运行。如果基础查询对象没有 AsNoTracking 方法,则调用此方法将不会有任何影响。 + 应用 NoTracking 的新查询,如果不支持 NoTracking,则为源查询。 + 源查询。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。此方法通过调用基础查询对象的 AsNoTracking 方法来运行。如果基础查询对象没有 AsNoTracking 方法,则调用此方法将不会有任何影响。 + 应用 NoTracking 的新查询,如果不支持 NoTracking,则为源查询。 + 源查询。 + 元素类型。 + + + 返回将流式处理结果而非缓存它的新查询。此方法通过调用基础查询对象的 AsStreaming 方法来运行。如果基础查询对象没有 AsStreaming 方法,则调用此方法将不会有任何影响。 + 应用 AsStreaming 的新查询,如果不支持 AsStreaming,则为源查询。 + 要应用 AsStreaming 的 。 + + + 返回将流式处理结果而非缓存它的新查询。此方法通过调用基础查询对象的 AsStreaming 方法来运行。如果基础查询对象没有 AsStreaming 方法,则调用此方法将不会有任何影响。 + 应用 AsStreaming 的新查询,如果不支持 AsStreaming,则为源查询。 + 要应用 AsStreaming 的 。 + + 的元素的类型。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 通过使用默认的相等比较器异步确定序列是否包含指定的元素。 + 表示异步操作的任务。如果输入序列包含指定的值,则任务结果包含 true;否则包含 false。 + 一个返回其单个元素的 。 + 要在序列中定位的对象。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 通过使用默认的相等比较器异步确定序列是否包含指定的元素。 + 表示异步操作的任务。如果输入序列包含指定的值,则任务结果包含 true;否则包含 false。 + 一个返回其单个元素的 。 + 要在序列中定位的对象。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列中的元素数。 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回满足条件的序列中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回满足条件的序列中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回序列中的元素数。 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回序列的第一个元素。 + 表示异步操作的任务。任务结果包含 中的第一个元素。 + 一个返回其第一个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 源序列为空。 + + + 异步返回满足指定条件的序列的第一个元素。 + 表示异步操作的任务。任务结果包含通过 中测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + + + 异步返回满足指定条件的序列的第一个元素。 + 表示异步操作的任务。任务结果包含通过 中测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + + + 异步返回序列的第一个元素。 + 表示异步操作的任务。任务结果包含 中的第一个元素。 + 一个返回其第一个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 源序列为空。 + + + 异步返回序列的第一个元素;如果序列不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果 为空,则任务结果包含 default ();否则,包含 中的第一个元素。 + 一个返回其第一个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回满足指定条件的序列的第一个元素;如果未找到此类元素,则返回默认值。 + 表示异步操作的任务。如果 为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回满足指定条件的序列的第一个元素;如果未找到此类元素,则返回默认值。 + 表示异步操作的任务。如果 为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + + + 异步返回序列的第一个元素;如果序列不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果 为空,则任务结果包含 default ();否则,包含 中的第一个元素。 + 一个返回其第一个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + 等待任务完成期间要观察的 。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + + 的元素的类型。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在其上调用 Include 的源 。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 IQueryable&lt;T&gt;,它具有定义的查询路径。 + 要在其上调用 Include 的源 IQueryable。 + 表示要包括的路径的 lambda 表达式。 + 要查询的实体类型。 + 要包含的导航属性的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在其上调用 Include 的源 。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + 要查询的实体类型。 + + + 枚举服务器查询等查询,例如 的查询,以及查询结果将加载到关联的 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 + 源查询。 + + + 异步枚举服务器查询等查询,例如 的查询,以及查询结果将加载到关联的 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 + 表示异步操作的任务。 + 源查询。 + + + 异步枚举服务器查询等查询,例如 的查询,以及查询结果将加载到关联的 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 + 表示异步操作的任务。 + 源查询。 + 等待任务完成期间要观察的 。 + + + 异步返回表示序列中的总元素数的 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回表示满足条件的序列中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回表示满足条件的序列中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回表示序列中的总元素数的 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回序列的最大值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最大结果值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最大结果值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的最大值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的最小值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最小结果值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最小结果值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的最小值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的唯一元素;如果序列中并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素。 + 一个返回其单个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 源序列为空。 + + + 异步返回满足指定条件的序列的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素。 + 一个 ,用于返回单个元素。 + 用于测试元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回满足指定条件的序列的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素。 + 一个返回其单个元素的 。 + 用于测试元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回序列的唯一元素;如果序列中并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素。 + 一个返回其单个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + 源序列为空。 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + + + 异步返回满足指定条件的序列的唯一元素;如果此类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素;如果没有找到此类元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + 用于测试元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回满足指定条件的序列的唯一元素;如果此类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素;如果没有找到此类元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + 用于测试元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + + + 跳过序列中指定数量的元素,然后返回剩余的元素。 + 一个序列,其中包含输入序列中指定索引后出现的元素。 + 要从中返回元素的序列。 + 计算结果为要跳过的元素数的表达式。 + source 的元素的类型。 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 从序列开始处起,返回指定数量的连续元素。 + 一个序列,其中包含输入序列开头的指定数量的元素。 + 要从中返回元素的序列。 + 计算结果为要返回的元素数的表达式。 + source 的元素的类型。 + + + 通过异步枚举从 创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + 要从中创建数组的 。 + + 的元素的类型。 + + + 通过异步枚举从 创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + 要从中创建数组的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + + 创建 ,方法是:根据指定的键选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + + 的元素的类型。 + + 返回的键类型。 + + + 创建 ,方法是:根据指定的键选择器函数和比较器来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + + 的元素的类型。 + + 返回的键类型。 + + + 创建 ,方法是:根据指定的键选择器函数和比较器来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + + 创建 ,方法是:根据指定的键选择器函数和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数、比较器和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数、比较器和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个将从中创建 。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个将从中创建 。 + 等待任务完成期间要观察的 。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个将从中创建 。 + + 的元素的类型。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个要从中创建列表的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + + 在执行数据库命令或查询期间控制事务创建行为。 + + + 如果存在现有事务,则使用它,否则在没有事务的情况下执行命令或查询。 + + + 如果不存在任何事务,则使用新事务进行操作。 + + + 表示在尝试准备或执行 CommandCompilation 时出现的失败。此异常旨在提供一个常见异常,人们可以捕获该异常以便在使用 EntityCommand 执行语句时承载提供程序异常(SqlException、OracleException)。 + + + 初始化 的新实例,没有消息,没有内部异常。可能不应该存在,但它有益于 FxCop。 + + + 使用消息(但没有内部异常)初始化 的新实例。可能不应该存在,但它有益于 FxCop。 + 消息。 + + + 使用消息和内部异常实例初始化 的新实例。 + 消息。 + 内部异常。 + + + 表示在尝试准备或执行 CommandExecution 时出现的失败。此异常旨在提供一个常见异常,人们可以捕获该异常以便在使用 EntityCommand 执行语句时承载提供程序异常(SqlException、OracleException)。 + + + 初始化 EntityCommandExecutionException 的新实例,没有消息,没有内部异常。可能不应该存在,但它有益于 FxCop。 + + + 使用消息(但没有内部异常)初始化 EntityCommandExecutionException 的新实例。可能不应该存在,但它有益于 FxCop。 + 描述错误的消息。 + + + 使用消息和内部异常实例初始化 EntityCommandExecutionException 的新实例。 + 描述错误的消息。 + 导致此当前异常的内部异常。 + + + 提供实体客户端使用的异常。 + + + 使用默认值初始化 类的新实例。 + + + 初始化 类的新实例。 + 序列化信息。 + 流上下文。 + + + 初始化接受预先格式化消息的 类的新实例。 + 本地化的错误消息。 + + + 初始化接受预先格式化消息和内部异常的 类的新实例。 + 本地化的错误消息。 + 内部异常。 + + + 表示实体的标识符。 + + + 初始化 类的新实例。 + + + 使用给定的键值初始化 类的新实例。 + 实体的 EntitySet 名称,由 EntityContainer 名称限定。 + 标识实体的键-值对。 + + + 使用给定的键值初始化 类的新实例。 + 实体的 EntitySet 名称,由 EntityContainer 名称限定。 + 标识实体的键-值对。 + + + 使用给定单个键名称和值初始化 类的新实例。 + 实体的 EntitySet 名称,由 EntityContainer 名称限定。 + 标识实体的键名称。 + 标识实体的键值。 + + + 获取或设置 EntityContainer 名称,该名称标识包含实体的实体容器。 + EntityContainer 名称,该名称标识包含实体的实体容器。 + + + 获取或设置标识实体的键值。 + 标识实体的键值。 + + + 获取单一 ,其标识因失败的 TREAT 操作产生的实体。 + 标识因失败的 TREAT 操作产生的实体的单一 + + + 获取或设置 EntitySet 名称,该名称标识包含实体的实体集。 + EntitySet 名称,用于标识包含实体的实体集。 + + + 指示此实例是否与给定的键相等的值。 + 如果此实例与给定的键相等,则为 true;否则为 false。 + 要与此实例进行比较的键。 + + + 指示此实例是否与给定的键相等的值。 + 如果此实例与给定的键相等,则为 true;否则为 false。 + 要与此实例进行比较的键。 + + + 从给定的元数据工作区按实体容器名称和实体集名称获取此实体键的实体集。 + 给定工作区中此实体键的实体集。 + 要在其中查找实体集的工作区。 + 在工作区中找不到该实体集。 + + + 返回基于值的哈希代码,以便允许在哈希表中使用 EntityKey。 + 的哈希值。 + + + 获取一个值,该值指示此键是否为临时键。 + 如果此键是临时键,则为 true;否则为 false。 + + + 获取用来标识只读实体的单一 + 用来标识只读实体的单一 + + + 在反序列化此 后调用。 + 序列化上下文。 + + + 在反序列化此 后调用。 + 序列化上下文。 + + + 指示两个键是否相等的值。 + 如果两个键相等,则为 true;否则为 false。 + 要比较的键。 + 要比较的键。 + + + 指示两个键是否不相等的值。 + 如果两个键不相等,则为 true;否则为 false。 + 要比较的键。 + 要比较的键。 + + + 与作为 EntityKey 的一部分的键有关的信息。键成员包含键名称和值。 + + + 创建空的 EntityKeyMember。此构造函数由序列化过程使用。 + + + 使用指定的键名称和值创建一个新的 EntityKeyMember。 + 键名称 + 键值 + + + 键名称 + + + 返回 EntityKeyMember 的字符串表示形式 + EntityKeyMember 的字符串表示形式 + + + 键值 + + + 表示一个 eSQL Query 编译异常;可能导致引发此异常的异常条件的类别主要是:1) 语法错误:在查询文本分析期间和在某一给定查询与 eSQL 形式语法不符时引发;2) 语义错误:在 eSQL 语言的语义规则未满足时(例如元数据或架构信息等不准确或未提供、类型验证错误、作用域规则冲突、未定义变量的用户等)引发。有关更多信息,请参见 eSQL 语言规范。 + + + 使用一般性错误消息初始化 的新实例。 + + + 使用给定的消息初始化 的新实例。 + 错误消息。 + + + 使用给定的消息和 innerException 实例初始化 的新实例。 + 错误消息。 + 内部异常。 + + + 获取发生错误的大致列号。 + 发生错误的大致列号。 + + + 获取发生错误的大致上下文(如果有)。 + 发生错误的大致上下文(如果有)。 + + + 获取解释未接受查询或空 String.Empty 的原因的错误说明 + 解释未接受查询或空 String.Empty 的原因的错误说明。 + + + 获取发生错误的大致行号 + 发生错误的大致行号。 + + + 提供支持结构化类型和丰富元数据信息的 DataRecord 接口。 + + + 获取描述记录内容的 DataRecordInfo 属性。 + 描述记录内容的 DataRecordInfo 属性。 + + + 以 DbDataReader 对象的形式返回嵌套的读取器。 + 作为 DbDataReader 对象的嵌套读取器。 + 列的序号。 + + + 使用指定的索引获取一个 DbDataRecord 对象。 + DbDataRecord 对象。 + 行的索引。 + + + 引发来指示命令目录树无效。 + + + 使用默认消息构造一个新的 InvalidCommandTreeException。 + + + 使用指定的消息构造一个新的 InvalidCommandTreeException。 + 异常消息 + + + 使用指定的消息和内部异常构造一个新的 InvalidCommandTreeException。 + 异常消息。 + 导致此 InvalidCommandTreeException 的异常。 + + + 映射异常类。请注意,此类具有状态 - 因此,即使您更改其内部,也可能是重大更改 + + + 具有默认消息的构造函数 + + + 默认构造函数 + 本地化的错误消息 + + + 构造函数 + 本地化的错误消息 + 内部异常 + + + 元数据异常类 + + + 具有默认消息的构造函数 + + + 默认构造函数 + 本地化的错误消息 + + + 构造函数 + 本地化的错误消息 + 内部异常 + + + 在存储区中找不到请求的对象时将引发此异常。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + + + 初始化 类的新实例以及初始化获取消息和内部异常的构造函数的新实例。 + 本地化的错误消息。 + 内部异常。 + + + 在更新操作与并发约束冲突时将会引发此异常。 + + + 使用默认值初始化 类的新实例。 + + + 使用指定的消息初始化 类的新实例。 + 与异常关联的消息。 + + + 使用指定的消息和内部异常初始化 类的新实例。 + 与异常关联的消息。 + 导致异常的错误。 + + + 使用指定的消息和内部异常初始化 类的新实例。 + 消息。 + 导致异常的错误。 + 状态项。 + + + 表示属性约束异常类。请注意,此类具有状态 - 因此,即使您更改其内部,也可能是重大更改。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + + + 使用提供的消息和内部异常初始化 类的新实例 + 本地化的错误消息。 + 内部异常。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + 属性名称。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + 属性名称。 + 内部异常。 + + + 获取违反了约束的属性的名称。 + 违反了约束的属性的名称。 + + + 在存储提供程序表现出的行为与实体客户端提供程序不兼容时引发的异常。 + + + 初始化 类的新实例。 + + + 使用指定的错误消息初始化 类的新实例。 + 描述此异常的错误消息。 + + + 使用指定的错误消息和内部异常初始化 类的新实例。 + 描述此异常的错误消息。 + 造成当前异常的内部异常。 + + + 在将更改保存到存储区期间引发的异常无法更新。 + + + 使用默认值初始化 类的新实例。 + + + 使用序列化数据初始化 类的新实例。 + 包含有关异常的序列化信息的对象。 + 有关源或目标的上下文信息。 + + + 初始化带有错误消息的 类的新实例。 + 描述此异常的错误消息。 + + + 初始化带有错误消息和内部异常的 类的新实例。 + 描述此异常的错误消息。 + 造成当前异常的内部异常。 + + + 初始化带有错误消息、内部异常和状态条目的 类的新实例。 + 描述此异常的错误消息。 + 造成当前异常的内部异常。 + 错误中暗含的状态条目。 + + + 获取错误中暗含的状态条目。 + 错误中暗含的状态条目。 + + + 提供一个简单方法以便访问类型信息和列信息的 DataRecordInfo 类。 + + + 使用数据字段的可枚举集合初始化一个特定类型的新 对象。 + 此对象表示的类型的元数据,由 提供。 + 表示列信息的 对象的可枚举集合。 + + + 获取此 对象的 + + 对象。 + + + 获取此对象的类型信息作为 对象。 + 一个 值。 + + + 表示准备好的命令定义,可以缓存和重复使用以便避免重新准备命令。 + + + 初始化 类的新实例。 + + + 使用提供的 初始化 类的新实例。 + 提供的 。 + 用于克隆 的方法 + + + 创建和返回可执行的 DbCommand 对象。 + 用于数据库的命令。 + + + 所有 CLR 类型的元数据接口 + + + 初始化 类的新实例。 + + + 排序规则方面的名称 + + + 要传递给 GetInformation 以便获取 ConceptualSchemaDefinition 的值 + + + 要传递给 GetInformation 以便获取 ConceptualSchemaDefinitionVersion3 的值 + + + DefaultValue 方面的名称 + + + 提供程序编写人员应重写此方法,以返回带有已转义的通配符和转义符的参数。仅当 SupportsEscapingLikeArgument 返回 true 时才使用此方法。 + 带有已转义的通配符和转义符的参数。 + 要转义的参数。 + + + FixedLength 方面的名称 + + + 在派生类中重写时,此方法返回特定于提供程序的信息。 + 表示基础数据存储目录的映射的 XmlReader 对象。 + 要返回的信息的类型。 + + + 在派生类中重写时,此方法将指定的存储类型以及该类型的一组方面映射到 EDM 类型。 + 描述 EDM 类型以及该类型的一组方面的 实例。 + TypeUsage 实例,它描述要映射到 EDM 类型的存储类型以及该类型的一组方面。 + + + 返回特定类型的 FacetDescription 对象。 + 用于指定的 EDM 类型的 FacetDescription 对象。 + 要返回方面描述的 EDM 类型。 + + + 获取特定于提供程序的信息。 + 特定于提供程序的信息。 + 要返回的信息的类型。 + + + 在派生类中重写时,返回提供程序清单支持的 EDM 函数的集合。 + EDM 函数的集合。 + + + 在派生类中重写时,此方法将指定的 EDM 类型以及该类型的一组方面映射到存储类型。 + TypeUsage 实例,它描述存储类型以及该类型的一组方面。 + TypeUsage 实例,它描述要映射到存储类型的 EDM 类型以及该类型的一组方面。 + + + 在派生类中重写时,返回数据源支持的一组基元类型。 + 数据源支持的一组类型。 + + + IsStrict 方面的名称 + + + MaxLength 方面的名称 + + + 获取此提供程序清单使用的命名空间。 + 此提供程序清单使用的命名空间。 + + + Nullable 方面的名称 + + + Precision 方面的名称 + + + Scale 方面的名称 + + + SRID 方面的名称 + + + 要传递给 GetInformation 以便获取 StoreSchemaDefinition 的值 + + + 要传递给 GetInformation 以便获取 StoreSchemaDefinitionVersion3 的值 + + + 要传递给 GetInformation 以便获取 StoreSchemaMapping 的值 + + + 要传递给 GetInformation 以便获取 StoreSchemaMappingVersion3 的值 + + + 指示提供程序是否支持在 Like 表达式中使用转义字符串作为模式。 + 如果此提供程序支持在 Like 表达式中使用转义字符串作为模式,则返回 true;否则返回 false。 + 如果提供程序支持转义,则为要用作转义符的字符。 + + + 返回一个布尔值,该布尔值指定提供程序是否可处理包含 DbInExpression 的实例的表达式目录树。默认实现返回 false 以保证向后兼容性。派生类可以重写此方法。 + false + + + Unicode 方面的名称 + + + 用于生成命令定义的工厂;使用该对象的类型作为提供程序工厂上 IServiceProvider.GetService 方法的参数; + + + 初始化 类的新实例。 + + + 添加一个 ,它将用于在使用应用程序配置文件中的某一项或通过 中基于代码的注册将某派生类型注册为 EF 提供程序时解析附加的默认提供程序服务。 + 要添加的解析程序。 + + + 请参见问题 2390 - 在 DbCommand 上克隆 DesignTimeVisible 属性可能导致死锁。因此此处允许重写子类。 + + 的克隆版本 + 要克隆的 对象 + + + 基于原型命令创建默认的 DbCommandDefinition 对象。此方法旨在使提供程序编写者从命令生成默认命令定义。注意:这将克隆原型 + 可执行的命令定义对象 + 原型命令 + + + 若给定命令目录树,创建命令定义对象。 + 可执行的命令定义对象 + 语句的命令目录树 + + + 从指定的清单和命令目录树创建命令定义。 + 已创建的命令定义。 + 清单。 + 命令目录树。 + + + 创建一个由连接指示的数据库并且基于 storeItemCollection 的内容创建架构对象(表、主键、外键)。 + 与需要创建并且用 storeItemCollection 参数指示的存储对象进行填充的不存在的数据库的连接。 + 创建数据库所需的任何命令的执行超时。 + 创建脚本所应基于的所有存储项的集合。 + + + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本,生成可创建架构对象(表、主键、外键)的数据定义语言 (DDL) 脚本。 + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本创建架构对象的 DDL 脚本。 + 标识目标版本的提供程序清单标记。 + 数据库的结构。 + + + 为指定的提供程序清单和命令目录树创建命令定义对象。 + 可执行的命令定义对象。 + 以前从存储提供程序检索的提供程序清单。 + 语句的命令目录树。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 创建一个由连接指示的数据库并且基于 StoreItemCollection 的内容创建架构对象(表、主键、外键)。 + 与需要创建并且用 storeItemCollection 参数指示的存储对象进行填充的不存在的数据库的连接。 + 创建数据库所需的任何命令的执行超时。 + 创建脚本所应基于的所有存储项的集合。 + + + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本,生成可创建架构对象(表、主键、外键)的数据定义语言 (DDL) 脚本。 + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本创建架构对象的 DDL 脚本。 + 标识目标版本的提供程序清单标记。 + 数据库的结构。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 删除指定的数据库。 + 到某个需要删除的现有数据库的连接。 + 删除数据库所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于删除数据库。 + + + 获取空间服务。 + 空间服务。 + 与提供程序清单关联的标记信息。 + + + 删除指定的数据库。 + 到某个需要删除的现有数据库的连接。 + 删除数据库所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于删除数据库。 + + + 如果给定路径以 |DataDirectory| 开头则展开该路径中的 |DataDirectory| 并且返回扩展的路径;如果给定路径未以 |DataDirectory| 开头,则返回给定字符串。 + 展开的路径。 + 要展开的路径。 + + + 返回表示 CSDL 说明的 XML 读取器 + 表示 CSDL 说明的 XmlReader + CSDL 说明的名称。 + + + 在派生类中重写时,返回派生自 DbProviderManifest 的类的实例。 + 表示提供程序清单的 DbProviderManifest 对象。 + 与提供程序清单关联的标记信息。 + + + 返回给定连接的提供程序清单标记。 + 指定连接的提供程序清单标记。 + 从中查找清单标记的连接。 + + + 获取空间数据读取器。 + 空间数据读取器。 + 空间数据来自于的读取器。 + 与提供程序清单关联的标记信息。 + + + 获取将用于执行使用指定连接的方法的 + + 的一个新实例。 + 数据库连接 + + + 获取将用于执行使用指定连接的方法的 。此重载应由派生类用于与包装提供程序兼容。 + + 的一个新实例。 + 数据库连接 + 提供程序固定名 + + + 基于指定的 DbConnection 检索 DbProviderFactory。 + 检索到的 DbProviderFactory。 + 要使用的连接。 + + + 使用指定的版本信息返回提供程序清单。 + 使用指定版本信息的提供程序清单。 + 与提供程序清单关联的标记信息。 + + + 返回给定连接的提供程序清单标记。 + 提供程序清单标记。 + 到提供程序的连接。 + + + 返回给定连接的提供程序。 + 基于指定连接实例化的 + 到提供程序的连接。 + + + 在使用应用程序配置文件中的某一项或通过 中基于代码的注册将某一派生类型注册为 EF 提供程序时调用,用于解析附加的默认提供程序服务。此类中此方法的实现使用通过 AddDependencyResolver 方法添加的解析程序来解析依赖项。 + 给定类型的实例;如果无法解析服务,则为 null。 + 要解析的服务的类型。 + 为解析服务提供附加信息的可选键。 + + + 在使用应用程序配置文件中的某一项或通过 中基于代码的注册将某一派生类型注册为 EF 提供程序时调用,用于解析附加的默认提供程序服务。此类中此方法的实现使用通过 AddDependencyResolver 方法添加的解析程序来解析依赖项。 + 满足给定类型和键的所有注册的服务;如果没有,则为空枚举。 + 要解析的服务的类型。 + 为解析服务提供附加信息的可选键。 + + + 获取空间数据读取器。 + 空间数据读取器。 + 空间数据来自于的读取器。 + 与提供程序清单关联的清单标记。 + + + 获取空间服务。 + 空间服务。 + 有关将对其使用空间服务的数据库的信息。 + + + 获取空间服务。 + 空间服务。 + 与提供程序清单关联的标记信息。 + + + 注册一个处理程序,以处理来自数据库提供程序的非错误消息。 + 用来接收信息的连接。 + 用于处理消息的处理程序。 + + + 为给定的 设置参数值和适当的方面。 + 参数。 + 参数的类型。 + 参数的值。 + + + 为给定的 设置参数值和适当的方面。 + 参数。 + 参数的类型。 + 参数的值。 + + + 接受 XmlReader 的 ProviderManifest 的专用化 + + + 初始化 类的新实例。 + 一个 对象,该对象提供对提供程序清单文件中的 XML 数据的访问。 + + + 返回指定的 Entity Data Model (EDM) 类型的方面说明列表。 + 一个 类型的集合,其中包含指定的 EDM 类型的方面说明列表。 + 要为其检索方面说明的 。 + + + 返回提供程序支持的函数的列表。 + 一个 类型的集合,其中包含提供程序支持的函数的列表。 + + + 返回存储提供程序支持的基元类型的列表。 + 一个 类型的集合,其中包含存储提供程序支持的基元类型的列表。 + + + 获取此提供程序清单支持的命名空间名称。 + 此提供程序清单支持的命名空间名称。 + + + 获取指定的存储类型名称的最佳映射等效 Entity Data Model (EDM) 类型。 + 指定的存储类型名称的最佳映射等效 EDM 类型。 + + + 获取指定的存储类型名称的最佳映射等效存储基元类型。 + 指定的存储类型名称的最佳映射等效存储基元类型。 + + + 提供一个简单方法以便访问类型信息和列信息的 EntityRecordInfo 类。 + + + 使用数据字段的可枚举集合、特定键和实体集信息初始化特定实体类型的 类的新实例。 + 实体的 ,由该 对象描述的 表示。 + 表示列信息的 对象的可枚举集合。 + 实体的键。 + 该实体所属的实体集。 + + + 获取实体的 + 实体的键。 + + + 在列序号和 MemberMetadata 之间提供关联的 FieldMetadata 类。 + + + 使用指定的序号值和字段类型初始化新的 对象。 + 用于指定元数据位置的整数。 + 字段类型。 + + + 获取此 对象的字段类型。 + 对象的字段类型。 + + + 获取此 对象的序号。 + 表示序号值的整数。 + + + 表示实现要派生自的 IExpressionVisitor 接口的类型的抽象基类型。 + + + 初始化 类的新实例。 + + + 实现命令目录树的访问者模式。 + 命令目录树。 + + + 实现删除命令目录树的访问者模式。 + 删除命令目录树。 + + + 实现函数命令目录树的访问者模式。 + 函数命令目录树。 + + + 实现插入命令目录树的访问者模式。 + 插入命令目录树。 + + + 实现修改子句的访问者模式。 + 修改子句。 + + + 实现修改子句的集合的访问者模式。 + 修改子句。 + + + 实现查询命令目录树的访问者模式。 + 查询命令目录树。 + + + 实现 set 子句的访问者模式。 + set 子句。 + + + 实现更新命令目录树的访问者模式。 + 更新命令目录树。 + + + 实现要派生自的 IExpressionVisitor 接口的类型的抽象基类型。 + + + 初始化 类的新实例。 + + + + 的访问者模式方法。 + 正在访问的 DbAndExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbApplyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbArithmeticExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbCaseExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbCastExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbComparisonExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbConstantExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbCrossJoinExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DeRefExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbDistinctExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbElementExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbEntityRefExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbExceptExpression。 + + 为 null + + + 遇到其他无法识别的类型的 时进行调用。 + 表达式 + + 为 null + 如果调用此方法,则始终引发,因为它指示 属于不支持的类型 + + + + 的访问者模式方法。 + 正在访问的 DbFilterExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbFunctionExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbInExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIntersectExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIsEmptyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIsNullExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIsOfExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbJoinExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbLambdaExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbLikeExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbLimitExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbNewInstanceExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbNotExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbNullExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbOfTypeExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbOrExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbParameterReferenceExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbProjectExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbPropertyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbQuantifierExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbRefExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbRefKeyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbRelationshipNavigationExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbScanExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbSkipExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbSortExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbTreatExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbUnionAllExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbVariableReferenceExpression。 + + 为 null + + + 用于访问指定的 的方便的方法。 + 要访问的聚合。 + + 为 null + + + 用于访问列表中的每个 (如果列表是非 null 的)的方便的方法。 + 要访问的聚合的列表。 + + 为 null + + + 用于访问指定的 的方便的方法。 + 要访问的 DbBinaryExpression。 + + 为 null + + + 用于访问指定的 的方便的方法(如果非 null)。 + 要访问的表达式。 + + 为 null + + + 用于在访问了 DbExpressionBinding 后进行后处理的方便的方法。 + 以前访问的 DbExpressionBinding。 + + + 用于访问指定的 的方便的方法。 + 要访问的 DbExpressionBinding。 + + 为 null + + + 用于访问给定列表中的每个 (如果列表是非 null 的)的方便的方法。 + 要访问的表达式的列表。 + + 为 null + + + 指示 的分组键已访问并且现在将要访问聚合的方便的方法。 + DbGroupByExpression 的 DbGroupExpressionBinding + + + 用于在访问了 DbGroupExpressionBinding 后进行后处理的方便的方法。 + 以前访问的 DbGroupExpressionBinding。 + + + 用于访问指定的 的方便的方法。 + 要访问的 DbGroupExpressionBinding。 + + 为 null + + + 用于在访问了 DbLambda 后进行后处理的方便的方法。 + 以前访问的 DbLambda。 + + + 指示现在将要访问的 Lambda 的正文的方便方法。 + 将要访问的 DbLambda。 + + 为 null + + + 用于访问指定的 的方便的方法。 + 要访问的 DbUnaryExpression。 + + 为 null + + + 聚合是伪表达式。聚合在外观上与表达式相似,但其可以出现的位置有严格的限制 - 只能出现在 group-by 表达式的聚合子句中。 + + + 获取定义要聚合的参数的表达式列表。 + + + 获取此聚合的结果类型。 + + + 表示两个 Boolean 参数之间的逻辑与运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示一个应用运算,它是对指定输入集中的每个元素的指定 functor 调用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取 ,它指定对输入集中的每个元素调用的 functor。 + + + 获取用于指定输入集的 + + + 表示应用于两个数值参数的算术运算(加法、减法、乘法、除法、取模或求反)。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于定义当前参数的表达式列表。 + + + 接受两个表达式操作数的表达式的抽象基类型。 + + + 获取定义左边参数的 + + + 获取定义右边参数的 + + + 表示 Case When...Then...Else 逻辑运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取此 DbCaseExpression 的 Else 子句。 + + + 获取此 DbCaseExpression 的 Then 子句。 + + + 获取此 DbCaseExpression 的 When 子句。 + + + 表示应用于多态参数的强制转换运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示删除、查询、插入和更新 DbCommandTree 类型的抽象基类型。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取此命令目录树所使用的元数据必须驻留于其中的数据空间。 + 此命令目录树所使用的元数据必须驻留于其中的数据空间。 + + + 获取此命令目录树使用的元数据工作区。 + 此命令目录树使用的元数据工作区。 + + + 获取在此命令目录树中可以引用的每个参数的名称和相应类型。 + 在此命令目录树中可以引用的每个参数的名称和相应类型。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 获取命令目录树是否使用数据库的 null 语义。 + 命令目录树使用数据库的 null 语义。 + + + 描述不同的数据库命令。 + + + 指定删除命令。 + + + 指定函数命令。 + + + 指定插入命令。 + + + 指定查询命令。 + + + 指定更新命令。 + + + 表示应用于两个参数的比较运算(相等、大于、大于或等于、小于、小于或等于、不相等)。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示常量值。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取常量值。 + + + 表示给定集合参数之间的无条件联接运算 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个 列表,该列表提供要联接的输入集。 + + + 表示用一个规范命令目录树代表的单行删除操作。 + + + 初始化 类的新实例。 + 元数据工作区。 + 数据空间。 + 数据库表达式绑定。 + 数据库表达式。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取一个 ,它指定用于确定目标集合中应删除的成员的谓词。 + 用于确定目标集合中应删除的成员的谓词。 + + + 使用指定的 Ref 表示给定实体的检索。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示从指定的集操作数中删除重复的元素。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示指定的集操作数到单一实例的转换。如果该集为空,则转换将返回 null;否则,该转换将返回集中的元素之一。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示作为 Ref 对指定实体的引用的检索。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示左右操作数之间的集减法运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示所有表达式的基类型。 + + + 实现不生成结果值的表达式访问者的访问者模式接口。 + DbExpressionVisitor 的实例。 + + 为 null。 + + + 实现生成特定类型的结果值的表达式访问者的访问者模式接口方法。 + + 的一个实例。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + + 生成的结果的类型。 + + 为 null。 + + + 确定指定的对象是否等于当前 DbExpression 实例。 + 如果指定的对象等于当前 DbExpression 实例,则为 true;否则为 false。 + 要与当前 进行比较的对象。 + + + 获取表达式的类型,类型指示该表达式的运算。 + 表达式的类型,指示该表达式的运算。 + + + 创建表示指定的二进制值的 ,可以为 null。 + 表示指定的二进制值的 + 返回的表达式应基于的二进制值。 + + + 创建表示指定的(可以为 null)布尔值的 + 表示指定的布尔值的 + 返回的表达式应基于的布尔值。 + + + 创建表示指定的(可以为 null)字节值的 + 表示指定的字节值的 + 返回的表达式应基于的字节值。 + + + 创建表示指定的(可以为 null) 值的 + 表示指定的 DateTime 值的 + 返回的表达式应基于的 DateTime 值。 + + + 创建表示指定(可为空值的) 值的 + 表示指定的 DateTimeOffset 值的 + 返回的表达式应基于的 DateTimeOffset 值。 + + + 创建表示指定的(可以为 null)十进制值的 + 表示指定的十进制值的 + 返回的表达式应基于的十进制值。 + + + 创建表示指定的(可以为 null)双精度值的 + 表示指定的双精度值的 + 返回的表达式应基于的双精度值。 + + + 创建表示指定的 值的 ,可以为 null。 + 表示指定的 DbGeography 值的 + 返回的表达式应基于的 DbGeography 值。 + + + 创建表示指定的 值的 ,可以为 null。 + 表示指定的 DbGeometry 值的 + 返回的表达式应基于的 DbGeometry 值。 + + + 创建表示指定(可为空值的) 值的 + 表示指定的 Guid 值的 + 返回的表达式应基于的 Guid 值。 + + + 创建表示指定的(可以为 null)Int16 值的 + 表示指定的 Int16 值的 + 返回的表达式应基于的 Int16 值。 + + + 创建表示指定的(可以为 null)Int32 值的 + 表示指定的 Int32 值的 + 返回的表达式应基于的 Int32 值。 + + + 创建表示指定的(可以为 null)Int64 值的 + 表示指定的 Int64 值的 + 返回的表达式应基于的 Int64 值。 + + + 创建表示指定的(可以为 null)单精度值的 + 表示指定的单精度值的 + 返回的表达式应基于的单精度值。 + + + 创建表示指定的字符串值的 + 表示指定的字符串值的 + 返回的表达式应基于的字符串值。 + + + 用作此类型的哈希函数。 + 返回当前表达式的哈希代码。 + + + 将一个 8 位无符号整数数组转换成 + 一个 ,表示转换后的 8 位无符号整数数组。 + 一个 8 位无符号整数数组。 + + + 将一个 DbGeography 对象转换成 + 表示转换后的 DbGeography 对象的 + DbGeography 对象。 + + + 将一个 DBGeometry 对象转换成 + 表示转换后的 DbGeography 对象的 + DbGeometry 对象。 + + + 将一个可以为 null 的布尔对象转换为 + 表示转换后的可以为 null 的布尔对象的 + 可以为 null 的布尔对象。 + + + 将一个可以为 null 的 8 位无符号整数转换成 + 表示转换后的 8 位无符号整数的 + 可以为 null 的 8 位无符号整数。 + + + 将一个可以为 null 的 对象转换成 + 一个表示 对象的 + 可为 null 的 对象。 + + + 将一个可以为 null 的 对象转换成 + 一个表示可以为 null 的 + 可为 null 的 对象。 + + + 将一个可以为 null 的十进制对象转换为 + 表示可以为 null 的十进制对象的 + 可以为 null 的十进制对象。 + + + 将一个可以为 null 的双精度对象转换为 + 表示可以为 null 的双精度对象的 + 可以为 null 的双精度对象。 + + + 将一个可以为 null 的 Guid 对象转换为 + 一个 ,表示可为 null 的 对象。 + 可为 null 的 对象。 + + + 将一个可以为 null 的 16 位无符号整数转换成 + 一个 ,表示可为 null 的 16 位无符号整数。 + 可以为 null 的 16 位无符号整数。 + + + 将一个可以为 null 的 32 位无符号整数转换成 + 一个 ,表示可为 null 的 32 位无符号整数。 + 可以为 null 的 32 位无符号整数。 + + + 将一个可以为 null 的 64 位无符号整数转换成 + 一个 ,表示可为 null 的 64 位无符号整数。 + 可以为 null 的 64 位无符号整数。 + + + 将一个可以为 null 的单精度浮点数字转换成 + 一个表示单精度浮点数字的 + 单精度浮点数。 + + + 转换 Unicode 字符 的有序集合。 + 表示 Unicode 字符的有序集合的 + Unicode 字符的有序集合。 + + + 获取表达式的结果类型的类型元数据。 + 表达式的结果类型的类型元数据。 + + + 描述表达式的绑定。在概念上与 C# 中的 foreach 循环类似。DbExpression 属性定义要循环访问的集合,而 Var 属性提供一个方式以便在迭代过程中引用该集合的当前元素。DbExpressionBinding 用于描述关系表达式(例如 )的集参数。 + + + 获取用于定义输入集的 + + + 获取引用元素变量的 + + + 获取指定给元素变量的名称。 + + + 获取元素变量的类型元数据。 + + + 描述表达式的不同“种类”(类) + + + 全部为 True。 + + + 逻辑与。 + + + 任何项均为 True。 + + + 条件 Case 语句。 + + + 多态类型转换。 + + + 一个常量值。 + + + Cross Apply + + + 交叉联接 + + + 引用。 + + + 重复删除。 + + + 除法。 + + + 集到单一转换。 + + + 实体引用值检索。 + + + 相等 + + + Set 减法 + + + 限制。 + + + 完全外部联接 + + + 独立函数的调用 + + + 大于。 + + + 大于或等于。 + + + 分组。 + + + 在其中。 + + + 内部联接 + + + 交集。 + + + 空集确定。 + + + Null 确定。 + + + 类型比较(指定的类型或子类型)。 + + + 类型比较(仅限指定的类型)。 + + + lambda 函数的应用 + + + 左外部联接 + + + 小于。 + + + 小于或等于。 + + + 字符串比较。 + + + 结果计数限制 (TOP n)。 + + + 减法。 + + + 取模。 + + + 乘法。 + + + 实例、行和集构造。 + + + 逻辑非。 + + + 不相等。 + + + Null。 + + + 按类型(或子类型)的集成员。 + + + 按(确切)类型的集成员。 + + + 逻辑或。 + + + Outer Apply。 + + + 对参数的引用。 + + + 加法。 + + + 投影。 + + + 静态或实例属性检索。 + + + 引用。 + + + 引用键值检索。 + + + (组合或关联)关系的导航。 + + + 实体集或关系集扫描。 + + + 跳过有序集合中的元素。 + + + 排序。 + + + 类型转换。 + + + 求反。 + + + 并集(包含重复项)。 + + + 对变量的引用。 + + + 确保某一给定表达式目录树中的所有元数据都来自指定的元数据工作区,并且可能在需要时将表达式重新绑定和重新生成到适当的替代元数据。 + + + 初始化 类的新实例。 + 目标工作区。 + + + 实现检索实例属性的访问者模式。 + 实现的访问者。 + 表达式。 + + + 实现对实体集的访问者模式。 + 实现的访问者模式。 + 实体集。 + + + 实现函数的访问者模式。 + 实现的访问者模式。 + 函数元数据。 + + + 实现类型的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 实现类型用法的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 应由不返回结果值的访问者实现的表达式访问者模式抽象基类。 + + + 初始化 类的新实例。 + + + DbAndExpression 的访问者模式方法。 + 正在访问的 DbAndExpression。 + + + DbApplyExpression 的访问者模式方法。 + 正在访问的 DbApplyExpression。 + + + DbArithmeticExpression 的访问者模式方法。 + 正在访问的 DbArithmeticExpression。 + + + DbCaseExpression 的访问者模式方法。 + 正在访问的 DbCaseExpression。 + + + DbCastExpression 的访问者模式方法。 + 正在访问的 DbCastExpression。 + + + DbComparisonExpression 的访问者模式方法。 + 正在访问的 DbComparisonExpression。 + + + DbConstantExpression 的访问者模式方法。 + 正在访问的 DbConstantExpression。 + + + DbCrossJoinExpression 的访问者模式方法。 + 正在访问的 DbCrossJoinExpression。 + + + DbDerefExpression 的访问者模式方法。 + 正在访问的 DbDerefExpression。 + + + DbDistinctExpression 的访问者模式方法。 + 正在访问的 DbDistinctExpression。 + + + DbElementExpression 的访问者模式方法。 + 正在访问的 DbElementExpression。 + + + DbEntityRefExpression 的访问者模式方法。 + 正在访问的 DbEntityRefExpression。 + + + DbExceptExpression 的访问者模式方法。 + 正在访问的 DbExceptExpression。 + + + 遇到其他无法识别的类型的表达式时进行调用。 + 表达式。 + + + DbFilterExpression 的访问者模式方法。 + 正在访问的 DbFilterExpression。 + + + DbFunctionExpression 的访问者模式方法。 + 正在访问的 DbFunctionExpression。 + + + DbGroupByExpression 的访问者模式方法。 + 正在访问的 DbGroupByExpression。 + + + DbInExpression 的访问者模式方法。 + 正在访问的 DbInExpression。 + + + DbIntersectExpression 的访问者模式方法。 + 正在访问的 DbIntersectExpression。 + + + DbIsEmptyExpression 的访问者模式方法。 + 正在访问的 DbIsEmptyExpression。 + + + DbIsNullExpression 的访问者模式方法。 + 正在访问的 DbIsNullExpression。 + + + DbIsOfExpression 的访问者模式方法。 + 正在访问的 DbIsOfExpression。 + + + DbJoinExpression 的访问者模式方法。 + 正在访问的 DbJoinExpression。 + + + DbLambdaExpression 的访问者模式方法。 + 正在访问的 DbLambdaExpression。 + + + DbLikeExpression 的访问者模式方法。 + 正在访问的 DbLikeExpression。 + + + DbLimitExpression 的访问者模式方法。 + 正在访问的 DbLimitExpression。 + + + DbNewInstanceExpression 的访问者模式方法。 + 正在访问的 DbNewInstanceExpression。 + + + DbNotExpression 的访问者模式方法。 + 正在访问的 DbNotExpression。 + + + DbNullExpression 的访问者模式方法。 + 正在访问的 DbNullExpression。 + + + DbOfTypeExpression 的访问者模式方法。 + 正在访问的 DbOfTypeExpression。 + + + DbOrExpression 的访问者模式方法。 + 正在访问的 DbOrExpression。 + + + DbParameterReferenceExpression 的访问者模式方法。 + 正在访问的 DbParameterReferenceExpression。 + + + DbProjectExpression 的访问者模式方法。 + 正在访问的 DbProjectExpression。 + + + DbPropertyExpression 的访问者模式方法。 + 正在访问的 DbPropertyExpression。 + + + DbQuantifierExpression 的访问者模式方法。 + 正在访问的 DbQuantifierExpression。 + + + DbRefExpression 的访问者模式方法。 + 正在访问的 DbRefExpression。 + + + DbRefKeyExpression 的访问者模式方法。 + 正在访问的 DbRefKeyExpression。 + + + DbRelationshipNavigationExpression 的访问者模式方法。 + 正在访问的 DbRelationshipNavigationExpression。 + + + DbScanExpression 的访问者模式方法。 + 正在访问的 DbScanExpression。 + + + DbSkipExpression 的访问者模式方法。 + 正在访问的 DbSkipExpression。 + + + DbSortExpression 的访问者模式方法。 + 正在访问的 DbSortExpression。 + + + DbTreatExpression 的访问者模式方法。 + 正在访问的 DbTreatExpression。 + + + DbUnionAllExpression 的访问者模式方法。 + 正在访问的 DbUnionAllExpression。 + + + DbVariableReferenceExpression 的访问者模式方法。 + 正在访问的 DbVariableReferenceExpression。 + + + 应由返回特定类型的结果值的访问者实现的表达式访问者模式抽象基类。 + 访问者生成的结果值的类型。 + + + 初始化 类的新实例。 + + + DbAndExpression 的类型化访问者模式方法。 + 正在访问的 DbAndExpression。 + + + DbApplyExpression 的类型化访问者模式方法。 + 正在访问的 DbApplyExpression。 + + + DbArithmeticExpression 的类型化访问者模式方法。 + 正在访问的 DbArithmeticExpression。 + + + DbCaseExpression 的类型化访问者模式方法。 + 正在访问的 DbCaseExpression。 + + + DbCastExpression 的类型化访问者模式方法。 + 正在访问的 DbCastExpression。 + + + DbComparisonExpression 的类型化访问者模式方法。 + 正在访问的 DbComparisonExpression。 + + + DbConstantExpression 的类型化访问者模式方法。 + 正在访问的 DbConstantExpression。 + + + DbCrossJoinExpression 的类型化访问者模式方法。 + 正在访问的 DbCrossJoinExpression。 + + + DbDerefExpression 的访问者模式方法。 + 正在访问的 DbDerefExpression。 + + + DbDistinctExpression 的类型化访问者模式方法。 + 正在访问的 DbDistinctExpression。 + + + DbElementExpression 的类型化访问者模式方法。 + 正在访问的 DbElementExpression。 + + + DbEntityRefExpression 的访问者模式方法。 + 正在访问的 DbEntityRefExpression。 + + + DbExceptExpression 的类型化访问者模式方法。 + 正在访问的 DbExceptExpression。 + + + 遇到其他无法识别的类型的表达式时进行调用。 + 表达式。 + + + DbFilterExpression 的类型化访问者模式方法。 + 正在访问的 DbFilterExpression。 + + + DbFunctionExpression 的访问者模式方法 + 正在访问的 DbFunctionExpression。 + + + DbGroupByExpression 的类型化访问者模式方法。 + 正在访问的 DbGroupByExpression。 + + + DbInExpression 的类型化访问者模式方法。 + 正在访问的 DbInExpression。 + + + DbIntersectExpression 的类型化访问者模式方法。 + 正在访问的 DbIntersectExpression。 + + + DbIsEmptyExpression 的类型化访问者模式方法。 + 正在访问的 DbIsEmptyExpression。 + + + DbIsNullExpression 的类型化访问者模式方法。 + 正在访问的 DbIsNullExpression。 + + + DbIsOfExpression 的类型化访问者模式方法。 + 正在访问的 DbIsOfExpression。 + + + DbJoinExpression 的类型化访问者模式方法。 + 正在访问的 DbJoinExpression。 + + + DbLambdaExpression 的访问者模式方法。 + 正在访问的 DbLambdaExpression。 + + + DbLikeExpression 的访问者模式方法。 + 正在访问的 DbLikeExpression。 + + + DbLimitExpression 的访问者模式方法。 + 正在访问的 DbLimitExpression。 + + + DbNewInstanceExpression 的类型化访问者模式方法。 + 正在访问的 DbNewInstanceExpression。 + + + DbNotExpression 的类型化访问者模式方法。 + 正在访问的 DbNotExpression。 + + + DbNullExpression 的类型化访问者模式方法。 + 正在访问的 DbNullExpression。 + + + DbOfTypeExpression 的类型化访问者模式方法。 + 正在访问的 DbOfTypeExpression。 + + + DbOrExpression 的类型化访问者模式方法。 + 正在访问的 DbOrExpression。 + + + DbParameterReferenceExpression 的类型化访问者模式方法。 + 正在访问的 DbParameterReferenceExpression。 + + + DbProjectExpression 的类型化访问者模式方法。 + 正在访问的 DbProjectExpression。 + + + DbPropertyExpression 的类型化访问者模式方法。 + 正在访问的 DbPropertyExpression。 + + + DbQuantifierExpression 的类型化访问者模式方法。 + 正在访问的 DbQuantifierExpression。 + + + DbRefExpression 的类型化访问者模式方法。 + 正在访问的 DbRefExpression。 + + + DbRefKeyExpression 的访问者模式方法。 + 正在访问的 DbRefKeyExpression。 + + + DbRelationshipNavigationExpression 的类型化访问者模式方法。 + 正在访问的 DbRelationshipNavigationExpression。 + + + DbScanExpression 的类型化访问者模式方法。 + 正在访问的 DbScanExpression。 + + + DbSkipExpression 的类型化访问者模式方法。 + 正在访问的 DbSkipExpression。 + + + DbSortExpression 的类型化访问者模式方法。 + 正在访问的 DbSortExpression。 + + + DbTreatExpression 的类型化访问者模式方法。 + 正在访问的 DbTreatExpression。 + + + DbUnionAllExpression 的类型化访问者模式方法。 + 正在访问的 DbUnionAllExpression。 + + + DbVariableReferenceExpression 的类型化访问者模式方法。 + 正在访问的 DbVariableReferenceExpression。 + + + 表示一个谓词,该谓词应用于某一输入集以便生成满足它的一组元素。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取指定用于筛选输入集的谓词的 + + + 对应于聚合函数的调用的聚合类型。 + + + 获取一个值,该值指示是否以不同风格应用聚合函数 + + + 获取指定要调用的聚合函数的方法元数据。 + + + 表示以规范命令树表示的函数调用。 + + + 构造一个新的 DbFunctionCommandTree,它使用指定的元数据工作区、数据空间和函数元数据。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 要调用的 EDM 函数。 + 函数的结果类型。 + 与要调用的函数关联的参数。 + + + 获取或设置命令目录树类型。 + 命令目录树类型。 + + + 获取表示要调用的函数的 + 表示要调用的函数的 + + + 获取函数的结果类型;当前被约束为 RowTypes 的集合。与典型的 RowType 实例不同,仅指示名称/类型不是参数顺序。 + 函数的结果类型。 + + + 表示对函数的调用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取 列表,该列表提供函数的参数。 + + + 获取要调用的函数的元数据。 + + + 表示构成组的元素的集合。 + + + 表示一个分组运算,分组运算是根据指定的键表达式将输入集中的元素分组,后接指定聚合函数的应用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取 列表,该列表提供要应用的聚合函数。 + + + 获取 ,它指定输入集,并提供对集元素和组元素变量的访问。 + + + 获取 列表,该列表提供分组键。 + + + 定义输入集到 的绑定。除了 的属性之外,DbGroupExpressionBinding 还通过 <seealso cref="P:System.Data.Entity.Core.Common.CommandTrees.DbGroupExpressionBinding.GroupVariable" /> 变量引用提供对组元素的访问,并且通过 <seealso cref="P:System.Data.Entity.Core.Common.CommandTrees.DbGroupExpressionBinding.GroupAggregate" /> 属性提供对组聚合的访问。 + + + 获取用于定义输入集的 + + + 获取 DbGroupAggregate,它表示组的元素集合。 + + + 获取引用组元素变量的 DbVariableReferenceExpression。 + + + 获取指定给组元素变量的名称。 + + + 获取组元素变量的类型元数据。 + + + 获取引用元素变量的 DbVariableReferenceExpression。 + + + 获取指定给元素变量的名称。 + + + 获取元素变量的类型元数据。 + + + 表示一个布尔表达式,该布尔表达式测试某一指定的项是否与列表中的任何元素匹配。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取指定要匹配的项的 DbExpression。 + + + 获取要针对某一匹配进行测试的 DbExpression 的列表。 + + + 表示用一个规范命令目录树代表的单行插入操作。如果设置了 属性,此命令将返回一个读取器;否则,它将返回一个指示受影响的行数的标量值。 + + + 初始化 类的新实例。 + 元数据。 + 数据空间。 + 数据库目标。 + 确定插入的行中的列值的 Set 子句。 + 指定要基于修改的行返回的结果投影的 。 + + + 获取命令目录树类型。 + 命令目录树类型。 + + + 获取一个 ,它指定要基于修改的行返回的结果投影。如果为 null,则指示不应从此命令返回任何结果。 + 指定要基于修改的行返回的结果投影的 + + + 获取确定插入的行中的列值的 Set 子句。 + 确定插入的行中的列值的 Set 子句。 + + + 表示左右操作数之间的交集运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示应用于单集参数的空集确定。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示应用于单个参数的 null 确定。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示单个参数针对指定类型的类型比较。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取参数的类型元数据将与其进行比较的类型元数据。 + + + 表示在指定的联接条件下,在给定的集合参数之间进行的内部、左外部或完全外部联接运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取定义要应用的联接条件的 + + + 获取提供左输入的 + + + 获取提供右输入的 + + + 表示 Lambda 函数的应用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个 列表,该列表提供 Lambda 函数应该应用于的参数。 + + + 获取表示此表达式应用的 Lambda 函数的 + + + 表示针对指定的模式与可选的转义字符串进行的字符串比较 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个表达式,它指定要针对给定模式进行比较的字符串 + + + 获取一个表达式,它提供用于比较的可选的转义字符串 + + + 获取一个表达式,它指定比较给定字符串时所针对的模式 + + + 表示将参数集合中的元素数限制为指定的限值。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取指定输入集合的表达式。 + + + 获取指定从输入集合中返回的元素数限制的表达式。 + + + 获取限制操作是否将包括等值结果,在存在等值时,这可以生成比该限值指定的结果更多的结果。 + + + 在插入或更新修改操作中指定单个子句,请参见 + + + 表示以规范命令目录树表示的 DML 操作 + + + 获取为 DML 操作指定目标表的 + + + 表示给定类型(包括集类型和记录类型)的新实例的构造。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个 列表,该列表可为新实例提供属性/列值或集元素。 + + + 表示对单个 Boolean 参数执行的逻辑非运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示 null。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示从给定的集参数中检索属于指定类型的元素。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取应从集参数中检索的元素类型的元数据。 + + + 表示两个 Boolean 参数的逻辑或。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示对在包含此表达式的命令目录树上声明的参数的引用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取所引用的参数的名称。 + + + 表示给定值集在指定输入集上的投影。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取定义投影的 + + + 提供用于检索实例属性的方法和属性。此类不能被继承。 + + + 为不生成结果值的表达式实现访问者模式。 + + 的一个实例。 + visitor 为 null。 + + + 为生成特定类型的结果值的表达式实现访问者模式。 + 一个由 生成的特定类型结果值。 + 生成特定类型结果值的类型化 的一个实例。 + 访问者生成的结果类型。 + visitor 为 null。 + + + 获取 ,它定义应从中检索属性的实例。 + 用于定义应从中检索属性的实例的 + + + 允许隐式强制转换为 + 转换后的值。 + 要转换的表达式。 + + + 获取要检索的属性的属性元数据。 + 要检索的属性的属性元数据。 + + + 基于此属性表达式创建一个新的键/值对。 + 具有从 派生的键和值的新键/值对。 + + + 表示对指定输入集中的元素执行的指定种类(Any、All)的限定符操作。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取应为输入集中的每个元素计算的 Boolean 谓词。 + + + 表示一项以规范命令目录树形式表示的查询操作。 + + + 初始化使用指定元数据工作区的 类的新实例。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 一个定义查询逻辑的 。 + + 为 null。 + + 不表示有效数据空间。 + + + 初始化使用指定元数据工作区的 类的新实例。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 一个定义查询逻辑的 。 + 若为 true,则验证树;否则为 false。在设置为 false 时,将禁用对目录树的验证。 + + 为 null。 + + 不表示有效数据空间。 + + + 初始化 类的新实例。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 一个定义查询逻辑的 。 + 若为 true,则验证树;否则为 false。在设置为 false 时,将禁用对目录树的验证。 + 若为 true,则使用数据库 null 语义;否则为 false。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取定义查询逻辑的 + 一个定义查询逻辑的 + + + 表示对某一给定实体集中的特定实例的(强类型)引用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取包含该实例的实体集的元数据。 + + + 表示将指定引用的键值作为行检索。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示给定“源”角色、“目标”角色和源角色的实例的情况下关系的导航(组合或关联) + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取要从其开始导航的关系端的元数据 + + + 获取要导航到的关系端的元数据 + + + 获取 ,它指定应从其开始导航的“源”关系端的实例。 + + + 获取要导航的关系的元数据 + + + 表示某一给定实体集的所有元素的“扫描”。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取所引用的实体集或关系集的元数据。 + + + 指定用于设置属性值的修改操作中的子句。 + + + 获取一个指定应更新的属性的 + + + 获取一个 ,它指定用于更新属性的新值。 + + + 表示应用在给定排序键中描述的顺序后输入集的指定数目的元素的跳过操作。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取指定要在输入集合中跳过的元素数的表达式。 + + + 获取用于指定输入集的 + + + 获取一个定义排序顺序的 列表。 + + + 指定可在 DbSortExpression 中用作排序顺序的一部分的排序关键字。 + + + 获取一个布尔值,该值指示此排序关键字是否按升序排序。 + + + 获取一个字符串值,该值指定此排序关键字的排序规则。 + + + 获取为此排序关键字提供值的 + + + 表示一项基于给定的排序关键字应用于指定输入集中的元素的排序操作。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取一个定义排序顺序的 列表。 + + + 表示单个参数向指定类型的类型转换。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 接受单个表达式操作数的表达式的抽象基类型 + + + 获取定义参数的 + + + 表示左右操作数之间的 set 联合(不移除重复项)运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示一项以命令目录树形式表示的单行更行操作。此类不能被继承。 + + + 初始化 类的新实例。 + 将对其运行此命令的模型。 + 数据空间。 + 数据操作语言 (DML) 操作的目标表。 + 一个谓词,用于确定目标集合中应更新的成员。 + 定义更新操作的更新 Set 子句列表。 + 一个 ,它指定要基于修改的行返回的结果投影。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取一个 ,它指定用于确定目标集合中应更新的成员的谓词。 + 一个 ,指定用于确定目标集合中应更新的成员的谓词。 + + + 获取一个 ,它指定要基于修改的行返回的结果投影。 + 一个 ,它指定要基于修改的行返回的结果投影。如果为 null,则指示不应从此命令返回任何结果。 + + + 获取定义更新操作的更新 Set 子句列表。 + 定义更新操作的更新 Set 子句列表。 + + + 表示对当前处于范围内的某个变量的引用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取所引用的变量的名称。 + + + 从给定的根表达式访问表达式目录树的每个元素。如果任何元素发生更改,则目录树将被重新生成回根目录并且返回新的根表达式;否则,返回原始根表达式。 + + + 初始化 类的新实例。 + + + 当使用指定的范围变量进入表达式访问者的范围时表示事件。 + 范围变量的集合。 + + + 退出表达式访问者的范围。 + + + 用表达式访问者的新表达式替换旧表达式。 + 旧表达式。 + 新表达式。 + + + 当重新绑定表达式访问者的变量时表示事件。 + 变量的位置。 + 重新绑定的变量的引用。 + + + 实现逻辑与表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbAndExpression。 + + + 为调用指定输入集中每个元素的指定函数实现访问者模式。 + 实现的访问者。 + 正在访问的 DbApplyExpression。 + + + 实现应用于数值参数的算术运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbArithmeticExpression。 + + + 实现 When、Then 和 Else 子句的访问者模式。 + 实现的访问者。 + 正在访问的 DbCaseExpression。 + + + 实现将单个参数转换为指定类型的类型转换的访问者模式。 + 实现的访问者。 + 正在访问的 DbCastExpression。 + + + 实现应用于两个参数的比较运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbComparisonExpression。 + + + 实现不同类型常量的访问者模式。 + 实现的访问者。 + 正在访问的 DbConstantExpression。 + + + 实现给定集合参数之间的无条件联接操作的访问者模式。 + 实现的访问者。 + 正在访问的 DbCrossJoinExpression。 + + + 实现基于指定引用检索实体的表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbDerefExpression。 + + + 实现从指定的集参数中删除的重复元素的访问者模式。 + 实现的访问者。 + 正在访问的 DbDistinctExpression。 + + + 实现指定的集参数到单一实例的转换的访问者模式。 + 实现的访问者。 + 正在访问的 DbElementExpression。 + + + 实现从基础实体实例提取引用的表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbEntityRefExpression。 + + + 实现左操作数和右操作数之间设置的减法运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbExceptExpression。 + + + 实现表达式类型所需的基本功能的访问者模式。 + 实现的访问者。 + 正在访问的 DbExpression。 + + + 实现应用于筛选输入集的谓语的访问者模式。 + 实现的访问者。 + 正在访问的 DbFilterExpression。 + + + 实现调用某个函数的访问者模式。 + 实现的访问者。 + 正在访问的 DbFunctionExpression。 + + + 通过运算实现针对某个组的访问者模式。 + 实现的访问者。 + 正在访问的 DbGroupByExpression。 + + + 实现 DbInExpression 的访问者模式。 + 实现的访问者。 + 正在访问的 DbInExpression。 + + + 实现左操作数和右操作数之间设置的交集运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbIntersectExpression。 + + + 实现应用于单集参数的空集确定的访问者模式。 + 实现的访问者。 + 正在访问的 DbIsEmptyExpression。 + + + 实现应用于单个参数的 null 确定的访问者模式。 + 实现的访问者。 + 正在访问的 DbIsNullExpression。 + + + 实现将单个参数与指定类型进行比较的类型比较的访问者模式。 + 实现的访问者。 + 正在访问的 DbIsOfExpression。 + + + 实现指定联接条件下给定集合参数之间内部联接、左外部联接或完全外部联接运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbJoinExpression。 + + + 实现将 lambda 函数应用于 DbExpression 对象所表示的参数的访问者模式。 + 实现的访问者。 + 正在访问的 DbLambdaExpression。 + + + 实现与带有可选转义字符串的指定模式进行字符串比较的访问者模式。 + 实现的访问者。 + 正在访问的 DbLikeExpression。 + + + 实现将参数集合中的元素数目限制为指定限值的访问者模式。 + 实现的访问者。 + 正在访问的 DbLimitExpression。 + + + 实现构建给定类型的新实例(包括集和记录类型)的访问者模式。 + 实现的访问者。 + 正在访问的 DbNewInstanceExpression。 + + + 实现单个布尔参数的逻辑非运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbNotExpression。 + + + 实现对类型化 null 文本的引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbNullExpression。 + + + 实现根据给定集参数检索指定类型的元素的访问者模式。 + 实现的访问者。 + 正在访问的 DbOfTypeExpression。 + + + 实现两个布尔参数的逻辑或的访问者模式。 + 实现的访问者。 + 正在访问的 DbOrExpression。 + + + 实现对包含此表达式的命令目录树中所声明参数的引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbParameterReferenceExpression。 + + + 实现对指定表达式的给定输入集的投影的访问者模式。 + 实现的访问者。 + 正在访问的 DbProjectExpression。 + + + 实现检索实例属性的访问者模式。 + 实现的访问者。 + 正在访问的 DbPropertyExpression。 + + + 实现对指定输入集元素执行的指定类型的限定符运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbQuantifierExpression。 + + + 实现对实体集内特定实例的强类型引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbRefExpression。 + + + 实现根据基础引用值检索键值的访问者模式。 + 实现的访问者。 + 正在访问的 DbRefKeyExpression。 + + + 实现关系导航的访问者模式。 + 实现的访问者。 + 正在访问的 DbRelationshipNavigationExpression。 + + + 实现对 Target 属性所指示的实体集或关系集的扫描的访问者模式。 + 实现的访问者。 + 正在访问的 DbScanExpression。 + + + 实现 skip 表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbSkipExpression。 + + + 实现可用作排序顺序一部分的排序关键字的访问者模式。 + 实现的访问者。 + 正在访问的 DbSortExpression。 + + + 实现应用于多态参数的类型转换运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbTreatExpression。 + + + 实现左操作数和右操作数之间设置的并集运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbUnionAllExpression。 + + + 实现对当前处于范围内的变量的引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbVariableReferenceExpression。 + + + 实现对聚合的访问者模式。 + 实现的访问者模式。 + 要访问的聚合。 + + + 实现对实体集的访问者模式。 + 实现的访问者模式。 + 实体集。 + + + 实现表达式的访问者模式。 + 实现的访问者模式。 + 表达式。 + + + 实现表达式绑定的访问者模式。 + 实现的访问者模式。 + 表达式绑定。 + + + 实现表达式绑定列表的访问者模式。 + 实现的访问者模式。 + 表达式绑定列表。 + + + 实现表达式列表的访问者模式。 + 实现的访问者模式。 + 表达式列表。 + + + 实现函数的访问者模式。 + 实现的访问者模式。 + 函数元数据。 + + + 实现函数聚合的访问者模式。 + 实现的访问者模式。 + 聚合。 + + + 实现组聚合的访问者模式。 + 实现的访问者模式。 + 聚合。 + + + 实现组表达式绑定的访问者模式。 + 实现的访问者模式。 + 绑定。 + + + 实现 Lambda 函数的访问者模式。 + 实现的访问者模式。 + Lambda 函数。 + + + 实现排序子句的访问者模式。 + 实现的访问者模式。 + 排序子句。 + + + 实现排序顺序的访问者模式。 + 实现的访问者模式。 + 排序顺序。 + + + 实现类型的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 实现类型用法的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 提供一个用于构造 的 API,并且允许该 API 作为针对表达式类型本身的扩展方法来访问。 + + + 创建一个新的 + 具有对给定函数和参数的引用的一个新的函数聚合。该函数聚合的 Distinct 属性将具有值 false。 + 定义聚合运算的函数。 + 要对其计算聚合函数的参数。 + + 为 null。 + + 不是聚合函数,或者具有多个实参;或者 的结果类型不相等或不能提升为 的形参类型。 + + + 创建以不同风格应用的一个新的 + 具有对给定函数和参数的引用的一个新的函数聚合。该函数聚合的 Distinct 属性将具有值 true。 + 定义聚合运算的函数。 + 要对其计算聚合函数的参数。 + + 为 null。 + + 不是聚合函数,或者具有多个实参;或者 的结果类型不相等或不能提升为 的形参类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的所有元素。 + 表示 All 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式。 + 一个方法,它表示要为输入集的每个成员计算的谓词。此方法必须生成一个表达式,该表达式具有提供谓词逻辑的 Boolean 结果类型。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的所有元素。 + 表示 All 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式绑定。 + 一个表达式,它表示要针对输入集的每个成员计算的谓词。 + + 为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个 ,它对左边参数和右边参数执行逻辑与运算。 + 具有指定参数的新 DbAndExpression。 + 指定左边参数的布尔表达式。 + 指定右边参数的布尔表达式。 + + 为 null。 + + 不具有布尔结果类型。 + + + 创建一个新的 ,它确定指定的集参数是否非空。 + 一个新的 ,它使用指定的参数应用于新的 + 一个指定输入集的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的任何元素。 + 表示 Any 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式。 + 一个方法,它表示要为输入集的每个成员计算的谓词。此方法必须生成一个表达式,该表达式具有提供谓词逻辑的 Boolean 结果类型。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的任何元素。 + 表示 Any 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式绑定。 + 一个表达式,它表示要针对输入集的每个成员计算的谓词。 + + 为 null。 + + 不具有布尔结果类型。 + + + 以键/值对对象的形式返回指定参数。 + 键/值对对象。 + 键/值对中的值。 + 键/值对中的键。 + + + 以键/值对对象的形式返回指定参数。 + 键/值对对象。 + 键/值对中的值。 + 键/值对中的键。 + + + 创建一个新的 ,它使用生成的变量名称绑定给定的表达式。 + 具有指定的表达式和生成的变量名称的一个新的表达式绑定。 + 要绑定的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它使用指定的变量名称绑定给定的表达式。 + 具有指定表达式和变量名称的一个新的表达式绑定。 + 要绑定的表达式。 + 应该用于绑定的变量名称。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 + 具有指定事例和默认结果的一个新的 DbCaseExpression。 + 为每个事例提供条件的表达式的列表。 + 提供每个事例的结果的表达式列表。 + 定义没有匹配事例时的结果的表达式。 + + 为 null 或包含 null,或者 为 null。 + + 为空,或者 包含带有非布尔结果类型的表达式,或者没有适用于 中所有表达式的通用结果类型。 + + + 创建一个新的 ,它将强制转换运算应用于一个多态参数。 + 具有指定的参数和目标类型的一个新的 DbCastExpression。 + 应对其应用强制转换的参数。 + 指定要强制转换为的类型的类型元数据。 + + 为 null。 + 指定的强制转换无效。 + + + 使用给定的常量值创建一个具有指定基元类型的新的 + 具有给定值和 结果类型的一个新的 DbConstantExpression。 + 常量值的类型。 + 要表示的常量值。 + valueconstantType + + 不是有效常量类型的实例, 不表示基元类型,或者 所属的基元类型与 表示的基元类型不同。 + + + 使用给定的常量值创建一个新的 + 具有给定值的一个新的 DbConstantExpression。 + 要表示的常量值。 + + 为 null。 + + 不是有效常量类型的实例。 + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它对基于键值对给定类型的特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 引用的实体的特定类型。此实体类型必须与实体集的元素类型处于同一层次结构。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 不是来自 的元素类型所在的层次结构(子类型、超类型或相同类型)。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它对基于键值对给定类型的特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 引用的实体的特定类型。此实体类型必须与实体集的元素类型处于同一层次结构。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 不是来自 的元素类型所在的类型层次结构(子类型、超类型或相同类型)。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。 + 具有指定的输入和应用绑定以及 CrossApply 的 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个方法,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + 没有集合结果类型。 + + 的结果包含为 Null 的名称或表达式。 + + 的结果包含在表达式绑定中无效的名称或表达式。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。 + 具有指定的输入和应用绑定以及 CrossApply 的 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个 ,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + + 创建一个新的 ,它无条件联接输入表达式绑定列表指定的集。 + 具有 CrossJoin 的 的一个新的 DbCrossJoinExpression,它表示输入集的无条件联接。 + 指定输入集的表达式绑定列表。 + + 为 null 或包含 null。 + + 包含的表达式绑定数目少于 2。 + + + 创建一个新的 ,它根据给定的引用表达式检索特定实体。 + 检索指定实体的一个新的 DbDerefExpression。 + 一个提供引用的 。此表达式必须具有引用类型。 + + 为 null + + 没有引用结果类型。 + + + 创建一个新的 ,它从给定的集参数中删除重复项。 + 一个新的 DbDistinctExpression,它表示应用于指定集参数的不同运算。 + 定义要对其执行不同运算的集的表达式。 + + 为 null。 + + 没有引用结果类型。 + + + 创建一个新的 ,它用左边参数除以右边参数。 + 表示除法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它将一个集转换为单一实例。 + 一个 DbElementExpression,它表示从集参数到单一实例的转换。 + 一个指定输入集的表达式。 + + 为 null。 + + 没有引用结果类型。 + + + 创建一个新的 ,它比较左边参数和右边参数是否相等。 + 表示相等比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它计算从左边集参数中减去右边集参数的结果。 + 一个新的 DbExceptExpression,它表示从左边参数中减去右边参数之差。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 为 null。 + + 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它确定指定的集参数是否非空。 + 一个新的 ,它使用指定的参数应用于新的 + 一个指定输入集的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 使用布尔值 false 创建一个 + 带布尔值 false 的 + + + 创建一个新的 ,它使用指定的谓词筛选给定输入集中的元素。 + 生成筛选的集的一个新的 DbFilterExpression。 + 一个指定输入集的表达式绑定。 + 一个表达式,它表示要针对输入集的每个成员计算的谓词。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 FullOuterJoin 作为 + 一个 为 FullOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的完全外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个表示联接条件的方法。此方法必须生成一个具有布尔结果类型的表达式,该表达式提供联接条件的逻辑。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式绑定和右边表达式绑定指定的集,并且使用 FullOuterJoin 作为 + 一个 为 FullOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的完全外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个指定联接条件的表达式。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它以结构化形式检索指定实体的引用。 + 检索对指定实体的引用的一个新的 DbEntityRefExpression。 + 提供实体的表达式。此表达式必须具有实体结果类型。 + + 为 null。 + + 没有实体结果类型。 + + + 创建一个新的 ,它以结构化形式检索指定引用的键值。 + 检索指定引用的键值的一个新的 DbRefKeyExpression。 + 提供引用的表达式。此表达式的引用类型必须具有实体元素类型。 + + 为 null。 + + 没有实体结果类型。 + + + 创建一个新的 ,它确定左边参数是否大于右边参数。 + 表示大于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它确定左边参数是否大于或等于右边参数。 + 表示大于或等于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + left 或 right 为 null。 + left 与 right 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 对指定参数创建一个新的 + 一个新的组聚合,它表示按给定参数引用的组的元素。 + 通过其执行嵌套运算的参数。 + + 为 null。 + + + 创建一个新的组表达式绑定,该绑定使用生成的变量名称和组变量名称来绑定给定的表达式。 + 一个新的组表达式绑定,该绑定具有指定的表达式以及生成的变量名称和组变量名称。 + 要绑定的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它使用指定的变量名称和组变量名称来绑定给定的表达式。 + 具有指定的表达式、变量名称和组变量名称的一个新的组表达式绑定。 + 要绑定的表达式。 + 应该用于绑定的变量名称。 + 在分组表达式中使用新的组表达式绑定时应该用于引用该组的变量名称。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它根据指定的组键对输入集的元素进行分组并应用给定的聚合。 + 具有指定的输入集、分组键和聚合的一个新的 DbGroupByExpression。 + 指定输入集的 。 + 定义分组列的字符串表达式对的列表。 + 指定要应用的聚合的表达式列表。 + + 为 null, 包含为 null 的键列名称或表达式,或者聚合包含为 null 的聚合列名称或 + + 均为空,或指定了无效或重复的列名称。 + + + 创建一个 ,它将指定表达式的结果与指定列表中常量表达式的结果进行匹配。 + 如果 DbConstantExpression 列表非空,则为具有指定参数的一个新的 DbInExpression;否则为 false 常量表达式。 + 要匹配的 DbExpression。 + 要针对某一匹配进行测试的 DbConstantExpression 的列表。 + + 为 null。 + + 的结果类型与来自 的表达式的结果类型不同。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 InnerJoin 作为 + 一个 InnerJoin 为 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的内部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个表示联接条件的方法。此方法必须生成一个具有布尔结果类型的表达式,该表达式提供联接条件的逻辑。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 InnerJoin 作为 + 一个 InnerJoin 为 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的内部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个指定联接条件的表达式。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它计算左边集参数和右边集参数的交集。 + 一个新的 DbIntersectExpression,它表示左边参数和右边参数的交集。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 或 right 为 + + 之间不存在任何常用集合结果类型。 + + + 创建一个新的 ,它表示对给定参数应用指定的 Lambda 函数。 + 表示 Lambda 函数应用的一个新的 DbLambdaExpression。 + 一个 实例,它表示要应用的 Lambda 函数。 + 提供参数的表达式列表。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它表示对给定参数应用指定的 Lambda 函数。 + 表示 Lambda 函数应用的一个新的 DbLambdaExpression。 + 一个 实例,它表示要应用的 Lambda 函数。 + 提供参数的表达式。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它表示使用给定的参数调用指定的函数。 + 表示函数调用的一个新的 DbFunctionExpression。 + 要调用的函数的元数据。 + 为函数提供参数的表达式列表。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它表示使用给定的参数调用指定的函数。 + 表示函数调用的一个新的 DbFunctionExpression。 + 要调用的函数的元数据。 + 为函数提供参数的表达式。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它确定指定的集参数是否为空集。 + 具有指定参数的一个新的 DbIsEmptyExpression。 + 一个指定输入集的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它确定指定的参数是否为 null。 + 具有指定参数的一个新的 DbIsNullExpression。 + 指定参数的表达式。 + + 为 null。 + + 有一个集合结果类型。 + + + 创建一个新的 ,它确定给定的参数是否为指定的类型或子类型。 + 具有指定的实例和类型以及 DbExpressionKind IsOf 的一个新的 DbIsOfExpression。 + 指定实例的表达式。 + 类型元数据,它指定应与实例的结果类型进行比较的类型。 + + 为 null。 + + 的结果类型不处于相同的类型层次结构中。 + + + 创建一个新的 表达式,该表达式确定给定的参数是否属于指定的类型且只属于该类型(而非子类型)。 + 具有指定的实例和类型以及 DbExpressionKind IsOfOnly 的一个新的 DbIsOfExpression。 + 指定实例的表达式。 + 类型元数据,它指定应与实例的结果类型进行比较的类型。 + + 为 null。 + + 的结果类型不处于相同的类型层次结构中。 + + + 创建一个新的 ,它基于指定的外部键和内部键之间的相等条件联接外部表达式和内部表达式指定的集,并且使用 InnerJoin 作为 + 一个 InnerJoin 为 的新的 DbJoinExpression,它表示基于比较外部键值和内部键值是否相等的联接条件应用于左边输入集和右边输入集的内部联接运算。 + 指定外部集参数的 。 + 指定内部集参数的 。 + 一个方法,它指定如何从外部集的元素派生外部键值。 + 一个方法,它指定如何从内部集的元素派生内部键值。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不能比较是否相等。 + + + 创建一个新的 ,它对外部和内部表达式指定的集投影指定的选择器,基于指定的外部键和内部键之间的相等条件进行联接,并且使用 InnerJoin 作为 + 一个新的 DbProjectExpression,它使用指定的选择器作为其投影并且使用一个新的 DbJoinExpression 作为其输入。输入 DbJoinExpression 是使用 InnerJoin 的 创建的,它表示基于比较外部键值和内部键值是否相等的联接条件应用于左边输入集和右边输入集的内部联接运算。 + 指定外部集参数的 。 + 指定内部集参数的 。 + 一个方法,它指定如何从外部集的元素派生外部键值。 + 一个方法,它指定如何从内部集的元素派生内部键值。 + 一个方法,它指定如何从内部和外部集的元素派生结果集的元素。此方法必须生成与 Join 兼容且可以解析为 的类型的实例。备注中说明了针对 的兼容性要求。 + 选择器的类型。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + 在转换为 DbExpression 之后 的结果为 null。 + + 生成的表达式不能比较是否相等。 + + 的结果与 SelectMany 不兼容。 + + + 使用指定的内联 Lambda 函数实现和形参创建 + 一个新的 DbLambda,它描述具有指定主体和形参的内联 Lambda 函数。 + 一个定义 Lambda 函数的逻辑的表达式。 + 一个 集合,该集合表示 Lambda 函数的形参。这些变量可以有效地在 表达式中使用。 + + 为 null 或包含 null,或者 为 null。 + + 包含多个具有相同变量名称的元素。 + + + 使用指定的内联 Lambda 函数实现和形参创建 + 一个新的 DbLambda,它描述具有指定主体和形参的内联 Lambda 函数。 + 一个定义 Lambda 函数的逻辑的表达式。 + 一个 集合,该集合表示 Lambda 函数的形参。这些变量可以有效地在 body 表达式中使用。 + + 为 null 或包含 null,或者 为 null。 + + 包含多个具有相同变量名称的元素。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 LeftOuterJoin 作为 + 一个 为 LeftOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的左外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个表示联接条件的方法。此方法必须生成一个具有布尔结果类型的表达式,该表达式提供联接条件的逻辑。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式绑定和右边表达式绑定指定的集,并且使用 LeftOuterJoin 作为 + 一个 为 LeftOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的左外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个指定联接条件的表达式。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它确定左边参数是否小于右边参数。 + 表示小于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它确定左边参数是否小于或等于右边参数。 + 表示小于或等于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它将指定的输入字符串与给定的模式进行比较。 + 具有指定输入、模式和 null 转义的一个新的 DbLikeExpression。 + 指定输入字符串的表达式。 + 指定模式字符串的表达式。 + + 为 null。 + + 不具有字符串结果类型。 + + + 创建一个新的 ,它使用可选转义符将指定的输入字符串与给定的模式进行比较。 + 具有指定的输入、模式和转义符的一个新的 DbLikeExpression。 + 指定输入字符串的表达式。 + 指定模式字符串的表达式。 + 指定转义字符串的可选表达式。 + + 或转义符为 + + 或转义符不具有字符串结果类型。 + + + 创建一个新的 ,它将参数集合中的元素数目限制为指定的计数限值。输出中不包括等值结果。 + 一个新的 DbLimitExpression,它具有指定参数以及不包括等值结果的计数限值。 + 一个指定输入集合的表达式。 + 指定限值的表达式。 + + 为 null。 + + 不具有集合结果类型,或者 不具有等同于或可提升为 64 位整数类型的结果类型。 + + + 创建一个新的 ,它从左边参数中减去右边参数。 + 表示减法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它计算左边参数除以右边参数所得的余数。 + 表示取模运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它用左边参数乘以右边参数。 + 表示乘法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它表示组合或关联的导航。 + 一个新的 DbRelationshipNavigationExpression,它表示从指定的导航源实例的指定关系类型的指定源和目标关系端的导航。 + 一个表达式,它指定应作为导航起点的实例。 + 属性的元数据,表示作为导航的源的关系端。 + 属性的元数据,表示作为导航的目标的关系端。 + + 为 null。 + + 不是由相同关系类型声明的,或者 的结果类型与 的属性类型不兼容。 + + + 创建一个新的 ,它表示组合或关联的导航。 + 一个新的 DbRelationshipNavigationExpression,它表示从指定的导航源实例的指定关系类型的指定源和目标关系端的导航。 + 表示关系的关系类型的元数据。 + 关系类型的属性名称,它表示作为导航的源的关系端。 + 关系类型的属性名称,它表示作为导航的目标的关系端。 + 一个表达式,它指定应作为导航起点的实例。 + + + 为 null。 + + 与此命令目录树的元数据工作区不关联,或者 与其他命令目录树相关联,或者 未声明具有 名称的关系端属性,或者 具有与 不兼容的结果类型。 + + + 创建一个新的 ,它对参数值求反。 + 表示求反运算的一个新的 DbArithmeticExpression。 + 指定参数的表达式。 + + 为 null。 + 不存在针对 的任何数值结果类型。 + + + 创建一个新的 。如果类型参数为集合类型,则参数将指定集合的元素。否则,参数将用作新实例中的属性值或列值。 + 具有指定的类型和参数的一个新的 DbNewInstanceExpression。 + 新实例的类型。 + 指定新实例的值的表达式,根据实例的类型对其进行解释。 + + 为 null,或者 包含 null。 + + 为空,或者包含的表达式的结果类型与 的要求不匹配(在备注部分中进行了说明)。 + + + 创建一个新的 。如果类型参数为集合类型,则参数将指定集合的元素。否则,参数将用作新实例中的属性值或列值。 + 具有指定的类型和参数的一个新的 DbNewInstanceExpression。 + 新实例的类型。 + 指定新实例的值的表达式,根据实例的类型对其进行解释。 + instanceTypeargumentsarguments + + 为 null,或者 包含 null。 + + + 创建一个新的 ,它构造一个包含指定元素的集合。集合的类型基于元素的通用类型。如果不存在通用元素类型,将引发异常。 + 具有指定的集合类型和参数的一个新的 DbNewInstanceExpression。 + 提供集合元素的表达式列表。 + + 为 null 或包含 null。 + + 为空,或包含不存在通用结果类型的表达式。 + + + 创建一个新的 ,它构造一个包含指定元素的集合。集合的类型基于元素的通用类型。如果不存在通用元素类型,将引发异常。 + 具有指定的集合类型和参数的一个新的 DbNewInstanceExpression。 + 提供集合元素的表达式列表。 + + 为 null 或包含 null。 + + 为空,或包含不存在通用结果类型的表达式。 + + + 创建一个新的 ,它构造指定集合类型的空集合。 + 具有指定的集合类型和空 Arguments 列表的一个新的 DbNewInstanceExpression。 + 要创建的集合的类型元数据。 + + 为 null。 + + 不是集合类型。 + + + 创建一个新的 ,它生成具有指定的命名列和给定值并且指定为表达式的一行。 + 表示行的构造的一个新的 DbNewInstanceExpression。 + 定义行的结构和值的字符串-DbExpression 键/值对的列表。 + + 为 null,或者包含具有 null 列名或表达式的元素。 + + 为空,或包含重复的或无效的列名称。 + + + 创建一个 ,它对给定的参数执行逻辑求反运算。 + 使用指定参数的一个新的 DbNotExpression。 + 一个指定参数的布尔表达式。 + + 为 null。 + 参数不具有布尔结果类型。 + + + 创建一个新的 ,它比较左边参数和右边参数是否不相等。 + 表示不相等比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行相等比较的结果类型。 + + + 创建一个新的 ,它表示类型化的 null 值。 + DbNullExpression 的实例。 + null 值的类型。 + + 为 null。 + + + 创建一个新的 ,它生成一个集,该集由属于指定类型的给定输入集的元素构成。 + 具有指定的集参数和类型以及 为 ExpressionKind 的一个新的 DbOfTypeExpression。 + 指定输入集的 。 + 要使输入集的元素包括在结果集中,这些元素必须具有的类型的类型元数据。 + + 为 null。 + + 不具有集合结果 ,或者类型所处于的类型层次结构与 的集合结果类型的元素类型不同。 + + + 创建一个新的 ,它生成一个集,该集由恰好属于指定类型的给定输入集的元素构成。 + 具有指定的集参数和类型以及 为 ExpressionKind 的一个新的 DbOfTypeExpression。 + 指定输入集的 。 + 要使输入集的元素包括在结果集中,这些元素必须严格匹配的类型的类型元数据。 + + 为 null。 + + 不具有集合结果 ,或者类型所处于的类型层次结构与 的集合结果类型的元素类型不同。 + + + 创建一个 ,它对左边参数和右边参数执行逻辑或运算。 + 具有指定参数的一个新的 DbOrExpression。 + 指定左边参数的布尔表达式。 + 指定右边参数的布尔表达式。 + leftright + leftright + + + 创建一个新的 ,它使用升序排序顺序和默认排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的结果类型。 + + + 创建一个新的 ,它使用升序排序顺序和指定排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 创建一个新的 ,它使用降序排序顺序和默认排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + + 创建一个新的 ,它使用降序排序顺序和默认排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。其 计算结果为空集的行具有值为 null 的 apply 列值。 + 具有指定的输入和应用绑定且 OuterApply 为 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个方法,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + 没有集合结果类型。 + apply 的结果包含为 null 的名称或表达式。 + apply 的结果包含在表达式绑定中无效的名称或表达式。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。其 计算结果为空集的行具有值为 null 的 apply 列值。 + 具有指定的输入和应用绑定且 OuterApply 为 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个 ,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + + 创建一个新的 ,它使用指定的名称和类型引用参数。 + 表示对具有指定名称和类型的参数的引用的 DbParameterReferenceExpression;表达式的结果类型将与 相同。 + 引用参数的类型。 + 引用参数的名称。 + + + 创建一个新的 ,它将左边参数与右边参数相加。 + 表示加法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + left 与 right 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它对给定的输入集投影指定的表达式。 + 表示投影运算的一个新的 DbProjectExpression。 + 一个指定输入集的表达式绑定。 + 要对集投影的表达式。 + + 为 null。 + + + 创建一个新的 ,它表示对指定属性的检索。 + 表示属性检索的一个新的 DbPropertyExpression。 + 要从中检索属性的实例。如果该属性是静态的,则可能为 null。 + 要检索的属性的元数据。 + + 为 null,或者 为 null 并且属性不是静态的。 + + + 创建一个新的 ,它表示对指定导航属性的检索。 + 表示导航属性检索的一个新的 DbPropertyExpression。 + 要从中检索导航属性的实例。 + 要检索的导航属性的元数据。 + + 为 null 或 为 null。 + + + 创建一个新的 ,它表示对指定关系端成员的检索。 + 表示关系端成员检索的一个新的 DbPropertyExpression。 + 要从中检索关系端成员的实例。 + 要检索的关系端成员的元数据。 + + 为 null,或者 为 null 并且属性不是静态的。 + + + 创建一个新的 ,它表示从给定实例中检索具有指定名称的实例属性。 + 表示属性检索的一个新的 DbPropertyExpression。 + 要从中检索属性的实例。 + 要检索的属性的名称。 + + 为 null,或者 为 null 并且属性不是静态的。 + 没有具有指定名称的属性是由 类型声明的。 + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 一个 ,它使用与引用的实体类型的 Key 属性在数目、类型和顺序上相匹配的列构造一个记录。 + + 为 null。 + keyRow + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 一个 ,它使用与引用的实体类型的 Key 属性在数目、类型和顺序上相匹配的列构造一个记录。 + 引用应针对的实体的类型。 + + 为 null。 + + 与实体集的实体类型不处于相同的类型层次结构,或者 不具有与引用的实体集的实体类型的键属性匹配的记录结果类型。 + + + 创建一个新的 ,它引用指定的实体集或关系集。 + 基于指定的实体或关系集的一个新的 DbScanExpression。 + 要引用的实体或关系集的元数据。 + + 为 null。 + + + 创建一个新的 ,它对给定的输入集选择指定的表达式。 + 表示选择运算的一个新的 DbProjectExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生投影的表达式。此方法必须生成与 Select 兼容且可以解析为 的类型的实例。备注中说明了针对 的兼容性要求。 + + 的方法结果类型。 + + 为 null + + 的结果为 null。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。然后创建了 ,它对每一行选择指定的 ,并且生成结果的整个集合。 + 一个新的 DbProjectExpression,它从具有指定输入和应用绑定且 CrossApply 为 的一个新的 DbApplyExpression 中选择 apply 列。 + 指定输入集的 。 + 一个方法,它表示要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有集合类型。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。然后创建了 ,它对每一行选择指定的 ,并且生成结果的整个集合。 + 一个新的 DbProjectExpression,它从具有指定输入和应用绑定且 CrossApply 为 的一个新的 DbApplyExpression 中选择给定选择器的结果。 + 指定输入集的 。 + 一个方法,它表示要对输入集的每个成员计算一次的逻辑。 + 一个方法,它指定如何在给定输入集和应用集的元素的情况下派生结果集的元素。此方法必须生成与 SelectMany 兼容且可以解析为 的类型的实例。备注中说明了针对 的兼容性要求。 + + 的方法结果类型。 + + 为 null。 + 生成的表达式为 null。 + 在转换为 DbExpression 时 的结果为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有集合类型。 + + + 创建一个表示将属性设置为值的新 + 新创建的 set 子句。 + 要设置的属性。 + 要将属性设置为的值。 + + + 创建一个新的 ,它在跳过指定数目的元素之前,按照指定的排序规范对给定的输入集进行排序。 + 表示跳过操作的一个新的 DbSkipExpression。 + 一个指定输入集的表达式绑定。 + 确定应如何对输入集元素进行排序的排序规范列表。 + 一个表达式,它指定要在有序集中跳过的元素数目。 + + 为 null,或者 包含 null。 + + 为空,或者 不是 ,或者具有不等同于或不能提升为 64 位整数类型的结果类型。 + + + 创建一个新的 ,它从给定的有序输入集中跳过指定数目的元素。 + 表示跳过操作的一个新的 DbSkipExpression。 + 指定有序输入集的 。 + 一个表达式,它指定要在有序集中跳过的元素数目。 + + 为 null。 + + 不是 ,或者具有不等同于或不能提升为 64 位整数类型的结果类型。 + + + 创建一个新的 ,它按照指定的排序规范对给定的输入集进行排序。 + 表示排序运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式绑定。 + 确定应如何对输入集元素进行排序的排序规范列表。 + + 为 null,或者 包含 null。 + + 为空。 + + + 创建一个新的 ,它将参数集合中的元素数目限制为指定的计数限值。输出中不包括等值结果。 + 一个新的 DbLimitExpression,它具有指定参数以及不包括等值结果的计数限值。 + 一个指定输入集合的表达式。 + 指定限值的表达式。 + + 为 null。 + + 不具有集合结果类型,或者 不具有等同于或可提升为 64 位整数类型的结果类型。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按升序排序顺序的指定排序键和默认排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的结果类型。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按升序排序顺序的指定排序键和指定的排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按降序排序顺序的指定排序键和默认排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的结果类型。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按降序排序顺序的指定排序键和指定的排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 使用升序排序顺序和默认排序规则创建一个新的 + 使用给定的排序关键字和升序排序顺序的一个新的排序子句。 + 定义排序键的表达式。 + + 为 null。 + + 不具有可比较顺序的结果类型。 + + + 使用升序排序顺序和指定的排序规则创建一个新的 + 具有给定的排序键和排序规则以及升序排序顺序的一个新的排序语句。 + 定义排序键的表达式。 + 排序所依据的排序规则。 + + 为 null。 + + 为空,或者只包含空白字符。 + + 不具有可比较顺序的结果类型。 + + + 使用降序排序顺序和默认排序规则创建一个新的 + 具有给定排序键和降序排序顺序的一个新的排序语句。 + 定义排序键的表达式。 + + 为 null。 + + 不具有可比较顺序的结果类型。 + + + 使用降序排序顺序和指定的排序规则创建一个新的 + 具有给定的排序键和排序规则以及降序排序顺序的一个新的排序语句。 + 定义排序键的表达式。 + 排序所依据的排序规则。 + + 为 null。 + + 为空,或者只包含空白字符。 + + 不具有可比较顺序的结果类型。 + + + 创建一个新的 + 具有指定的参数和类型的一个新的 DbTreatExpression。 + 指定实例的表达式。 + treat-as 类型的类型元数据。 + + 为 null。 + + 的结果类型不处于相同的类型层次结构中。 + + + 使用布尔值 true 创建一个 + 带布尔值 true 的 + + + 创建一个新的 ,它对参数值求反。 + 表示求反运算的一个新的 DbArithmeticExpression。 + 指定参数的表达式。 + + 为 null。 + 不存在针对 的任何数值结果类型。 + + + 创建一个新的 ,它计算左边集参数和右边集参数的并集并且删除了重复项。 + 一个新的 DbExpression,它计算左边参数和右边参数的并集,并且不含重复项。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 为 null。 + + 之间不存在具有可进行相等比较的元素类型的任何常用集合结果类型。 + + + 创建一个新的 ,它计算左边集参数和右边集参数的并集且不删除重复项。 + 一个新的 DbUnionAllExpression,它是左边参数和右边参数的并集并且包括重复项。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 为 null。 + + 之间不存在任何常用集合结果类型。 + + + 创建一个新的 ,它使用指定的名称和类型引用变量。 + 一个 DbVariableReferenceExpression,它表示对具有指定名称和类型的变量的引用;表达式的结果类型将与 相同。 + 引用变量的类型。 + 引用变量的名称。 + + + 创建一个新的 ,它使用指定的谓词筛选给定输入集中的元素。 + 表示 Any 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式。 + 一个方法,它表示要为输入集的每个成员计算的谓词。此方法必须生成一个表达式,该表达式具有提供谓词逻辑的 Boolean 结果类型。 + + 为 null。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 提供一个用于构造调用规范 EDM 函数的 的 API,并且允许该 API 作为针对表达式类型本身的扩展方法来访问。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有数值结果类型)调用规范“Abs”函数。表达式的结果类型与 的结果类型相同。 + 返回 的绝对值的一个新的 DbFunctionExpression。 + 一个指定数值的表达式。 + + 为 null。 + 没有规范“Abs”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime 或 DateTimeOffset 以及整数结果类型)调用规范“AddDays”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的天数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的天数。 + + 为 null。 + 没有规范“AddDays”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddHours”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的小时数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的小时数。 + + 为 null。 + 没有规范“AddHours”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddMicroseconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的微秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的微秒数。 + + 为 null。 + 没有规范“AddMicroseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddMilliseconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的毫秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的毫秒数。 + + 为 null。 + 没有规范“AddMilliseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddMinutes”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的分钟数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的分钟数。 + + 为 null。 + 没有规范“AddMinutes”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime 或 DateTimeOffset 以及整数结果类型)调用规范“AddMonths”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的月份数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的月份数。 + + 为 null。 + 没有规范“AddMonths”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddNanoseconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的纳秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的纳秒数。 + + 为 null。 + 没有规范“AddNanoseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddSeconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的秒数。 + + 为 null。 + 没有规范“AddSeconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime 或 DateTimeOffset 以及整数结果类型)调用规范“AddYears”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的年份数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的年份数。 + + 为 null。 + 没有规范“AddYears”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Avg”函数。表达式的结果类型与集合的元素类型相同。 + 生成平均值的新的 DbFunctionExpression。 + 一个表达式,它指定应计算平均值的集合。 + + 为 null。 + 没有规范“Avg”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有相同的整数结果类型)调用规范“BitwiseAnd”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位与运算生成的值。 + 指定第一个操作数的表达式。 + 指定第二个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseAnd”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有整数结果类型)调用规范“BitwiseNot”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位取非运算生成的值。 + 指定第一个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseNot”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有相同的整数结果类型)调用规范“BitwiseOr”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位或运算生成的值。 + 指定第一个操作数的表达式。 + 指定第二个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseOr”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有相同的整数结果类型)调用规范“BitwiseXor”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位异或(异或)运算生成的值。 + 指定第一个操作数的表达式。 + 指定第二个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseXor”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有单精度、双精度或十进制结果类型)调用规范“Ceiling”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回不小于 的最小整数值。 + 一个指定数值的表达式。 + + 为 null。 + 没有规范“Ceiling”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“Concat”函数。表达式的结果类型为字符串。 + 一个生成串联字符串的新的 DbFunctionExpression。 + 一个表达式,它指定在串连结果字符串中应在最前面出现的字符串。 + 一个表达式,它指定在串连结果字符串中应在第二位出现的字符串。 + + 为 null。 + 没有规范“Concat”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“Contains”函数。表达式的结果类型为 Boolean。 + 一个新的 DbFunctionExpression,它返回指示 是否在 之内出现的布尔值。 + 一个表达式,它指定要从中搜索出现的任何 的字符串。 + 一个表达式,它指定要在 中搜索的字符串。 + + 为 null。 + 没有规范“Contains”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Count”函数。表达式的结果类型为 Edm.Int32。 + 生成计数值的新的 DbFunctionExpression。 + 一个表达式,它指定应对其计算计数值的集合。 + + 为 null。 + 没有规范“Count”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数调用规范“CreateDateTime”函数。 必须具有结果类型 Edm.Double,所有其他参数必须具有结果类型 Edm.Int32。表达式的结果类型为 Edm.DateTime。 + 一个新 DbFunctionExpression,它基于指定的值返回新的 DateTime。 + 一个表达式,它为新的 DateTime 实例提供年份值。 + 一个表达式,它为新的 DateTime 实例提供月份值。 + 一个表达式,它为新的 DateTime 实例提供日期值。 + 一个表达式,它为新的 DateTime 实例提供小时值。 + 一个表达式,它为新的 DateTime 实例提供分钟值。 + 一个表达式,它为新的 DateTime 实例提供秒钟值。 + + 为 null。 + 没有规范“CreateDateTime”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数调用规范“CreateDateTimeOffset”函数。 必须具有结果类型 Edm.Double,所有其他参数必须具有结果类型 Edm.Int32。表达式的结果类型为 Edm.DateTimeOffset。 + 一个新 DbFunctionExpression,它基于指定的值返回新的 DateTimeOffset。 + 一个表达式,它为新的 DateTimeOffset 实例提供年份值。 + 一个表达式,它为新的 DateTimeOffset 实例提供月份值。 + 一个表达式,它为新的 DateTimeOffset 实例提供日期值。 + 一个表达式,它为新的 DateTimeOffset 实例提供小时值。 + 一个表达式,它为新的 DateTimeOffset 实例提供分钟值。 + 一个表达式,它为新的 DateTimeOffset 实例提供秒钟值。 + 一个表达式,它为新的 DateTimeOffset 实例按时区偏移量值提供分钟数。 + + 为 null。 + 没有规范“CreateDateTimeOffset”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数调用规范“CreateTime”函数。 必须具有结果类型 Edm.Double,所有其他参数必须具有结果类型 Edm.Int32。表达式的结果类型为 Edm.Time。 + 一个新 DbFunctionExpression,它基于指定的值返回新的时间。 + 一个表达式,它为新的 DateTime 实例提供小时值。 + 一个表达式,它为新的 DateTime 实例提供分钟值。 + 一个表达式,它为新的 DateTime 实例提供秒钟值。 + + 为 null。 + 没有规范“CreateTime”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它调用规范“CurrentDateTime”函数。 + 一个新的 DbFunctionExpression,它将当前日期和时间作为 Edm.DateTime 实例返回。 + + + 创建一个 ,它调用规范“CurrentDateTimeOffset”函数。 + 一个新的 DbFunctionExpression,它将当前日期和时间作为 Edm.DateTimeOffset 实例返回。 + + + 创建一个 ,它调用规范“CurrentUtcDateTime”函数。 + 一个新的 DbFunctionExpression,它将当前 UTC 日期和时间作为 Edm.DateTime 实例返回。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“Day”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数日期值。 + 一个表达式,它指定应从中检索日期的值。 + + 为 null。 + 没有规范“Day”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DayOfYear”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回年份值的整数日期。 + 一个表达式,它指定应从中检索日期(以一年中的第几天表示)的值。 + + 为 null。 + 没有规范“DayOfYear”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DiffDays”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的天数差。 + 一个表达式,它指定第一个 DateTime 或 DateTimeOffset 值。 + 一个表达式,它指定应为其计算距离 的天数差的 DateTime 或 DateTimeOffset。 + + 为 null。 + 没有规范“DiffDays”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffHours”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的小时差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的小时差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffHours”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffMicroseconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的微秒差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的微秒差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffMicroseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffMilliseconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的毫秒差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的毫秒差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffMilliseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffMinutes”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的分钟差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的分钟差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffMinutes”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DiffMonths”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的月份差。 + 一个表达式,它指定第一个 DateTime 或 DateTimeOffset 值。 + 一个表达式,它指定应为其计算距离 的月份差的 DateTime 或 DateTimeOffset。 + + 为 null + 没有规范“DiffMonths”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffNanoseconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的纳秒差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的纳秒差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffNanoseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffSeconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的秒钟差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的秒钟差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffSeconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DiffYears”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的年份差。 + 一个表达式,它指定第一个 DateTime 或 DateTimeOffset 值。 + 一个表达式,它指定应为其计算距离 的年份差的 DateTime 或 DateTimeOffset。 + + 为 null。 + 没有规范“DiffYears”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“EndsWith”函数。表达式的结果类型为 Boolean。 + 一个新的 DbFunctionExpression,它指示 是否以 结尾。 + 一个表达式,指定要在其中查找指定的 的字符串。 + 一个表达式,指定应在 中查找的后缀。 + + 为 null。 + 没有规范“EndsWith”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有单精度、双精度或十进制结果类型)调用规范“Floor”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回不大于 的最大整数值。 + 一个指定数值的表达式。 + + 为 null。 + 没有规范“Floor”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTimeOffset 结果类型)调用规范“GetTotalOffsetMinutes”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 相对于 GMT 的偏移分钟数。 + 一个表达式,它指定应从中检索相对于 GMT 的偏移分钟数的 DateTimeOffset 值。 + + 为 null。 + 没有规范“GetTotalOffsetMinutes”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Hour”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数小时值。 + 一个表达式,它指定应从中检索小时的值。 + + 为 null。 + 没有规范“Hours”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“IndexOf”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 的第一个索引。 + 一个表达式,它指定要在 中搜索的字符串。 + 一个表达式,它指定应检查的位于 内的字符串。 + + 为 null。 + 没有规范“IndexOf”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串和整数结果类型)调用规范“Left”函数。表达式的结果类型为字符串。 + 一个新的 DbFunctionExpression,它从 中返回长度为 的最左侧子字符串。 + 一个表达式,它指定要从中提取最左侧子字符串的字符串。 + 一个表达式,它指定要从 中提取的最左侧子字符串的长度。 + + 为 null。 + 没有规范“Left”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“Length”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回 的长度。 + 一个表达式,它指定应计算其长度的字符串。 + + 为 null。 + 没有规范“Length”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“BigCount”函数。表达式的结果类型为 Edm.Int64。 + 生成计数值的新的 DbFunctionExpression。 + 一个表达式,它指定应对其计算计数值的集合。 + + 为 null。 + 没有规范“BigCount”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Max”函数。表达式的结果类型与集合的元素类型相同。 + 生成最大值的新的 DbFunctionExpression。 + 一个表达式,它指定应从中检索最大值的集合。 + + 为 null。 + 没有规范“Max”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Millisecond”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 中返回整数毫秒值。 + 一个表达式,它指定应从中检索毫秒的值。 + + 为 null。 + 没有规范“Millisecond”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Min”函数。表达式的结果类型与集合的元素类型相同。 + 生成最小值的新的 DbFunctionExpression。 + 一个表达式,它指定应从中检索最小值的集合。 + + 为 null。 + 没有规范“Min”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Minute”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数分钟值。 + 一个表达式,它指定应从中检索分钟的值。 + + 为 null。 + 没有规范“Minute”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“Month”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数月份值。 + 一个表达式,它指定应从中检索月份的值。 + + 为 null。 + 没有规范“Month”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它调用规范“NewGuid”函数。 + 返回新的 GUID 值的新的 DbFunctionExpression。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有数值结果类型)调用规范“Power”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回按 指定的幂次执行幂运算的 的值。 + 一个表达式,它指定要计算给定幂次的数值。 + 一个表达式,它指定应对 进行幂运算的幂值。 + + 为 null。 + 没有规范“Power”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“Replace”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它基于 返回一个新字符串,其中,出现的每个 都会被 替代。 + 一个表达式,它指定要在其中执行替代操作的字符串。 + 指定要替代的字符串的表达式。 + 指定替代字符串的表达式。 + + 为 null。 + 没有规范“Replace”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“Reverse”函数。表达式的结果类型也为字符串。 + 一个 DbFunctionExpression,它生成 的颠倒顺序的值。 + 指定要颠倒顺序的字符串的表达式。 + + 为 null。 + 没有规范“Reverse”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串和整数结果类型)调用规范“Right”函数。表达式的结果类型为字符串。 + 一个新的 DbFunctionExpression,它从 中返回长度为 的最右侧子字符串。 + 一个表达式,它指定要从中提取最右侧子字符串的字符串。 + 一个表达式,它指定要从 中提取的最右侧子字符串的长度。 + + 为 null。 + 没有规范“Right”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有单精度、双精度或十进制结果类型)调用规范“Round”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将指定的参数舍入为最接近的整数值。 + 指定要舍入的数值的表达式。 + + 为 null。 + 没有规范“Round”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有单精度、双精度或十进制以及整数结果类型)调用规范“Round”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它按照 指定的精度将指定的参数舍入为最接近的整数值。 + 指定要舍入的数值的表达式。 + 一个表达式,它指定在舍入时要使用的精度的位数。 + + 为 null + 没有规范“Round”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Second”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数秒钟值。 + 一个表达式,它指定应从中检索秒钟的值。 + + 为 null。 + 没有规范“Second”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“StartsWith”函数。表达式的结果类型为 Boolean。 + 一个新的 DbFunctionExpression,它指示 是否以 开头。 + 一个表达式,指定要在其中查找指定的 的字符串。 + 一个表达式,指定应在 中查找的前缀。 + + 为 null。 + 没有规范“StartsWith”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的非 null 成员调用规范“StDev”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它对集合的非 null 成员生成标准偏差值。 + 一个表达式,它指定应计算标准偏差的集合。 + + 为 null。 + 没有规范“StDev”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的总体调用规范“StDevP”函数。表达式的结果类型为 Edm.Double。 + 生成标准偏差值的新的 DbFunctionExpression。 + 一个表达式,它指定应计算标准偏差的集合。 + + 为 null。 + 没有规范“StDevP”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串和整数结果类型)调用规范“Substring”函数。表达式的结果类型为字符串。 + 一个新的 DbFunctionExpression,它从 中返回以 开头的长度为 的子字符串。 + 一个表达式,它指定要从中提取子字符串的字符串。 + 一个表达式,它指定要从其获取子字符串的起始索引。 + 一个表达式,它指定子字符串的长度。 + + 为 null。 + 没有规范“Substring”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Sum”函数。表达式的结果类型与集合的元素类型相同。 + 生成总和的新的 DbFunctionExpression。 + 一个表达式,它指定应计算总和的集合。 + + 为 null。 + 没有规范“Sum”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“ToLower”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回转换为小写的 的值。 + 一个表达式,它指定应转换为小写的字符串。 + + 为 null。 + 没有规范“ToLower”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“ToUpper”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回转换为大写的 的值。 + 一个表达式,它指定应转换为大写的字符串。 + + 为 null。 + 没有规范“ToUpper”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“Trim”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回删除了前导和尾随空格的 的值。 + 一个表达式,它指定应删除其前导和尾随空格的字符串。 + + 为 null。 + 没有规范“Trim”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“RTrim”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回删除了尾随空格的 的值。 + 一个表达式,它指定应删除其尾随空格的字符串。 + + 为 null。 + 没有规范“RTrim”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“LTrim”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回删除了前导空格的 的值。 + 一个表达式,它指定应删除其前导空格的字符串。 + + 为 null。 + 没有规范“LTrim”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有单精度、双精度或十进制以及整数结果类型)调用规范“Truncate”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它按照 指定的精度将指定的参数截断为最接近的整数值。 + 一个表达式,它指定要截断的数值。 + 一个表达式,它指定要在截断时要使用的精度位数。 + + 为 null。 + 没有规范“Truncate”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“TruncateTime”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回其时间设置为零的 的值。 + 一个表达式,它指定应截断其时间部分的值。 + + 为 null。 + 没有规范“TruncateTime”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的非 null 成员调用规范“Var”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它生成集合的非 null 成员的方差值。 + 一个表达式,它指定应计算其方差的集合。 + + 为 null。 + 没有规范“Var”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的总体调用规范“VarP”函数。表达式的结果类型为 Edm.Double。 + 生成方差值的新的 DbFunctionExpression。 + 一个表达式,它指定应计算其方差的集合。 + + 为 null。 + 没有规范“VarP”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“Year”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数年份值。 + 一个表达式,它指定应从中检索年份的值。 + + 为 null。 + 没有规范“Year”函数的重载接受结果类型为 的参数。 + + + 表示 Row 类,它旨在提供用于调用 <see cref="M:System.Data.Entity.Core.Common.CommandTrees.ExpressionBuilder.DbExpressionBuilder.NewRow(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Data.Entity.Core.Common.CommandTrees.DbExpression}})" /> 的类似构造函数的方法。 + + + 使用指定的第一列值和可选的连续列值来初始化 类的新实例。 + 提供新的行实例中的第一列的键/值对(必需)。 + 提供新的行实例中的任何后续列的键/值对(可选)。 + + + 将一个 Row 对象转换成 + 表示转换后的 Row 对象的 + Row 对象。 + + + 创建一个新的 ,它基于此行实例中包含的列构造一个新行。 + 一个新的 DbNewInstanceExpression,它使用与此行实例相同的列名和 DbExpression 值构造一行。 + + + 提供一个 API 以便构造调用空间相关的规范 EDM 函数的 ,并且在适用时允许该 API 作为针对表达式类型本身的扩展方法来访问。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Area”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的区域,如果 spatialValue 不是图面,则返回 null。 + 一个表达式,它指定应为其计算面积的空间表面值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“AsBinary”函数。表达式的结果类型为 Edm.Binary。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的已知二进制表示形式。 + 一个表达式,它指定应从其生成已知二进制表示形式的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“AsGml”函数。表达式的结果类型为 Edm.String。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的地理标记语言 (GML) 表示形式。 + 一个表达式,它指定应从其生成地理标记语言 (GML) 表示形式的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“AsText”函数。表达式的结果类型为 Edm.String。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的已知文本表示形式。 + 一个表达式,它指定应从其生成已知文本表示形式的空间值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“Centroid”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的形心点(可能不在图面本身上),如果 geometryValue 不是图面,则返回 null。 + 一个表达式,它指定应从其检索形心的几何表面值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“CoordinateSystemId”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 spatialValue 返回整数 SRID 值。 + 一个表达式,它指定应从其检索坐标系 ID (SRID) 的值。 + + + 创建一个 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Distance”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue1 和 spatialValue1 最近两点之间的距离。 + 指定第一个空间值的表达式。 + 一个表达式,它指定将测量其与 spatialValue1 之间距离的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Elevation”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的海拔值,如果 spatialValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索海拔(Z 坐标)值的空间点值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“EndPoint”函数。结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的结束点,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索端点的空间曲线值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“ExteriorRing”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回多边形 geometryValue 的外部环,如果 geometryValue 不是多边形,则返回 null。 + 几何值。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyCollectionFromBinary”函数。geographyCollectionWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理集合值。 + 提供地理集合值的已知二进制表示形式的表达式。 + 提供地理集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyCollectionFromText”函数。geographyCollectionWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理集合值。 + 提供地理集合值的已知文本表示形式的表达式。 + 提供地理集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有二进制结果类型)调用规范“GeographyFromBinary”函数。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的二进制值返回新的地理值。 + 提供地理值的已知二进制表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyFromBinary”函数。wellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的已知二进制表示形式的表达式。 + 提供地理值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeographyFromGml”函数。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于具有基础提供程序的默认坐标系 ID (SRID) 的指定值返回新的地理值。 + 提供地理值的地理标记语言 (GML) 表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyFromGml”函数。geographyMarkup 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的地理标记语言 (GML) 表示形式的表达式。 + 提供地理值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeographyFromText”函数。表达式的结果类型为 Edm.Geography。其值具有基础提供程序的默认坐标系 ID (SRID)。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的已知文本表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyFromText”函数。wellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的已知文本表示形式的表达式。 + 提供地理值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyLineFromBinary”函数。lineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理线条值。 + 提供地理线条值的已知二进制表示形式的表达式。 + 提供地理线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyLineFromText”函数。lineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理线条值。 + 提供地理线条值的已知文本表示形式的表达式。 + 提供地理线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiLineFromBinary”函数。multiLineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多线条值。 + 提供地理多线条值的已知二进制表示形式的表达式。 + 提供地理多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiLineFromText”函数。multiLineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多线条值。 + 提供地理多线条值的已知文本表示形式的表达式。 + 提供地理多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPointFromBinary”函数。multiPointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多点值。 + 提供地理多点值的已知二进制表示形式的表达式。 + 提供地理多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPointFromText”函数。multiPointWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多点值。 + 提供地理多点值的已知文本表示形式的表达式。 + 提供地理多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPolygonFromBinary”函数。multiPolygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多多边形值。 + 提供地理多多边形值的已知二进制表示形式的表达式。 + 提供地理多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPolygonFromText”函数。multiPolygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多多边形值。 + 提供地理多多边形值的已知文本表示形式的表达式。 + 提供地理多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPointFromBinary”函数。pointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理点值。 + 提供地理点值的已知二进制表示形式的表达式。 + 提供地理多点值的 systempointWellKnownBinaryValue 的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPointFromText”函数。 + 规范的“GeographyPointFromText”函数。 + 提供地理点值的已知文本表示形式的表达式。 + 提供地理点值的坐标 systempointWellKnownTextValue 的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPolygonFromBinary”函数。polygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多边形值。 + 提供地理多边形值的已知二进制表示形式的表达式。 + 提供地理多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPolygonFromText”函数。polygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多边形值。 + 提供地理多边形值的已知文本表示形式的表达式。 + 提供地理多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryCollectionFromBinary”函数。geometryCollectionWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何集合值。 + 提供几何集合值的已知二进制表示形式的表达式。 + 提供几何集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryCollectionFromText”函数。geometryCollectionWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何集合值。 + 提供几何集合值的已知文本表示形式的表达式。 + 提供几何集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有二进制结果类型)调用规范“GeometryFromBinary”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的二进制值返回新的几何值。 + 提供几何值的已知二进制表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryFromBinary”函数。wellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的已知二进制表示形式的表达式。 + 提供几何值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeometryFromGml”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于具有基础提供程序的默认坐标系 ID (SRID) 的指定值返回新的几何值。 + 提供几何值的地理标记语言 (GML) 表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryFromGml”函数。geometryMarkup 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的地理标记语言 (GML) 表示形式的表达式。 + 提供几何值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeometryFromText”函数。表达式的结果类型为 Edm.Geometry。其值具有基础提供程序的默认坐标系 ID (SRID)。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的已知文本表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryFromText”函数。wellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的已知文本表示形式的表达式。 + 提供几何值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryLineFromBinary”函数。lineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何线条值。 + 提供几何线条值的已知二进制表示形式的表达式。 + 提供几何线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryLineFromText”函数。lineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何线条值。 + 提供几何线条值的已知文本表示形式的表达式。 + 提供几何线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiLineFromBinary”函数。multiLineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多线条值。 + 提供几何多线条值的已知二进制表示形式的表达式。 + 提供几何多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiLineFromText”函数。multiLineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多线条值。 + 提供几何多线条值的已知文本表示形式的表达式。 + 提供几何多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPointFromBinary”函数。multiPointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多点值。 + 提供几何多点值的已知二进制表示形式的表达式。 + 提供几何多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPointFromText”函数。multiPointWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多点值。 + 提供几何多点值的已知文本表示形式的表达式。 + 提供几何多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPolygonFromBinary”函数。multiPolygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多多边形值。 + 提供几何多多边形值的已知二进制表示形式的表达式。 + 提供几何多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPolygonFromText”函数。multiPolygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多多边形值。 + 提供几何多多边形值的已知文本表示形式的表达式。 + 提供几何多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPointFromBinary”函数。pointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何点值。 + 提供几何点值的已知二进制表示形式的表达式。 + 提供几何点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPointFromText”函数。pointWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何点值。 + 提供几何点值的已知文本表示形式的表达式。 + 提供几何点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPolygonFromBinary”函数。polygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多边形值。 + 提供几何多边形值的已知二进制表示形式的表达式。 + 提供几何多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPolygonFromText”函数。polygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多边形值。 + 提供几何多边形值的已知文本表示形式的表达式。 + 提供几何多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“InteriorRingAt”函数。第一个参数必须具有 Edm.Geometry 结果类型。第二个参数必须具有整数结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 中位置 indexValue 处的内部环,如果 geometryValue 不是多边形,则返回 null。 + 几何值。 + 一个表达式,它指定要从多边形中检索的内部环的位置。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“InteriorRingCount”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回多边形 geometryValue 中的内部环数,如果 geometryValue 不是多边形,则返回 null。 + 几何值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“IsClosedSpatial”函数。结果类型是 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue 是否闭合的布尔值,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索 IsClosedSpatial 值的空间曲线值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“IsEmptySpatial”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue 是否为空的布尔值。 + 一个表达式,它指定应从其检索 IsEmptySptiaal 值的空间值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“IsRing”函数。结果类型是 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue 是否为圆环(闭合和简单)的布尔值,如果 geometryValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索 IsRing 值的几何曲线值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“IsSimpleGeometry”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue 是否为简单几何图形的布尔值。 + 几何值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“IsValidGeometry”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue 是否有效的布尔值。 + 指定应进行空间有效性测试的几何值的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geography 结果类型)调用规范“Latitude”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geographyValue 的纬度值,如果 geographyValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 Latitude 值的地理点值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geography 结果类型)调用规范“Longitude”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geographyValue 的经度值,如果 geographyValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 Longitude 值的地理点值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Measure”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的度量值,如果 spatialValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索测量 (M) 坐标值的空间点值。 + + + 创建一个 ,它使用指定的参数调用规范“PointAt”函数。第一个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型。第二个参数必须具有整数结果类型。表达式的结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中位置 indexValue 处的点,如果 spatialValue 不是线串,则返回 null。 + 指定空间线串值的表达式。 + 指定要从线串内检索的点的位置的表达式。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“PointCount”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中点的数目,如果 spatialValue 不是线串,则返回 null。 + 一个表达式,它指定应从其检索点的数目的空间线串值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“PointOnSurface”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回保证位于图面 geometryValue 上的点,如果 geometryValue 不是图面,则返回 null。 + 一个表达式,它指定应从其检索点的几何表面值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialBoundary”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的边界。 + 一个表达式,它指定应从其检索 SpatialBoundary 值的几何值。 + + + 创建 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 和 Edm.Double 结果类型)调用规范“SpatialBuffer”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回一个几何值,该值表示小于或等于与 spatialValue 的距离的所有点。 + 一个指定空间值的表达式。 + 一个指定缓冲距离的表达式。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialContains”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否在空间上包含 geometryValue2 的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialConvexHull”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的凸包。 + 一个表达式,它指定应从其检索凸包值的几何值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialCrosses”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否与 geometryValue2 相交的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialDifference”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 与 spatialValue2 之间的差异的几何值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应计算与 spatialValue1 之间的差异的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialDimension”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 spatialValue 返回维度值。 + 一个表达式,它指定应从其检索 Dimension 值的值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialDisjoint”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue1 与 spatialValue2 是否在空间上不相交的布尔值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应与 spatialValue1 进行不相交性比较的空间值。 + + + 创建一个 ,它使用指定的参数调用规范“SpatialElementAt”函数。第一个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型。第二个参数必须具有整数结果类型。表达式的结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中位置 indexValue 处的集合元素,如果 spatialValue 不是集合,则返回 null。 + 一个表达式,它指定地理或几何集合值。 + 一个表达式,它指定要从几何或地理集合中检索的元素的位置。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialElementCount”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中元素的数目,如果 spatialValue 不是集合,则返回 null。 + 一个表达式,它指定应从其检索某个数目的元素的地理或几何集合值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialEnvelope”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的最小边框。 + 一个表达式,它指定应从其检索 Envelope 值的值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialEquals”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue1 是否与 spatialValue2 相等的布尔值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应与 spatialValue1 比较是否相等的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialIntersection”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 和 spatialValue2 的交集的空间值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定要计算与 spatialValue1 的交集的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialIntersects”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue1 是否与 spatialValue2 相交的布尔值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应与 spatialValue1 进行相交性比较的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialLength”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的长度,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索长度的空间曲线值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialOverlaps”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否在空间上与 geometryValue2 重叠的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建 ,它使用指定参数(参数必须具有 Edm.Geometry 和字符串结果类型)调用规范“SpatialRelate”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回一个布尔值,该值根据 intersectionPatternMatrix 指定的空间关系指示 geometryValue1 在空间上是否与 geometryValue2 相关。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + 一个表达式,它指定用于比较 geometryValue1 和 geometryValue2 的维度扩展九交模型 (DE-9IM) 交集模式的文本表示形式。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialSymmetricDifference”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 与 spatialValue2 之间的对称差异的几何值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应计算与 spatialValue1 之间的对称差异的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialTouches”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否与 geometryValue2 接触的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialTypeName”函数。表达式的结果类型为 Edm.String。 + 一个新的 DbFunctionExpression,它从 spatialValue 中返回字符串几何类型名称。 + 一个表达式,它指定应从中检索几何类型名称的值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialUnion”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 和 spatialValue2 的并集的空间值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应计算与 spatialValue1 的并集的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialWithin”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否在 geometryValue2 空间内的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“StartPoint”函数。结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的起始点,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索起点的空间曲线值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“XCoordinate”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的 X 坐标值,如果 geometryValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 X 坐标值的几何点值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“YCoordinate”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的 Y 坐标值,如果 geometryValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 Y 坐标值的几何点值。 + + + 公共实体 SQL 分析器类。 + + + 分析具有指定参数的指定查询。 + 包含 以及描述内联函数定义的信息(如果有)。 + 要分析的 EntitySQL 查询。 + 可选查询参数。 + + + 分析具有特定设置变量的特定查询并生成 + 包含 以及描述内联函数定义的信息(如果有)。 + 要分析的查询。 + 可选查询变量。 + + + 实体 SQL 查询内联函数定义,作为 的一部分返回。 + + + eSQL 查询文本中函数定义的结束位置。 + + + 函数体和参数。 + + + 函数名。 + + + eSQL 查询文本中函数定义的起始位置。 + + + 实体 SQL 分析器结果信息。 + + + 在分析过程中生成的命令目录树。 + + + 描述查询内联函数定义的 对象的列表。 + + + 表示概念层的命令的类 + + + 使用指定的值初始化 类的新实例。 + + + 使用指定的语句初始化 类的新实例。 + 命令的文本。 + + + 使用指定的语句和连接初始化 类的新实例。 + 命令的文本。 + 与数据源的连接。 + + + 使用指定的语句、连接和事务初始化 类的新实例。 + 命令的文本。 + 与数据源的连接。 + 在其中执行命令的事务。 + + + 构造具有给定 eSQL 语句以及要使用的连接对象的 EntityCommand 对象 + 要执行的 eSQL 命令文本 + 连接对象 + 用于解析 DbProviderServices 的解析程序 + + + 取消执行 + + + 获取或设置指定要执行的命令或存储过程的实体 SQL 语句。 + 指定要执行的命令或存储过程的实体 SQL 语句。 + + + 获取或设置超时前要等待的时间长度。 + 等待命令执行所需的时间(以秒为单位)。 + + + 获取或设置要执行的命令目录树;只能设置命令目录树或命令文本中的其中一个,而不能同时设置二者。 + 要执行的命令目录树。 + + + 获取或设置一个值,该值指示如何解释 属性。 + + 枚举值之一。 + + + 获取或设置 使用的 + 由实体命令使用的连接。 + + + 创建并返回一个新的参数对象,该对象表示 eSQL 语句中的参数 + 参数对象。 + + + 创建 对象的新实例。 + + 对象的一个新实例。 + + + 用于执行命令的连接对象 + + + 此命令的参数集合 + + + 此命令要在其中执行的事务 + + + 获取或设置一个值,该值指示命令对象在 Windows 窗体设计器控件中是否应该可见。 + 如果该命令对象应在 Windows 窗体设计器中可见,则为 true;否则为 false。 + + + 获取或设置一个值,该值指示查询计划缓存是否启用。 + 如果查询计划缓存已启用,则为 true;否则为 false。 + + + 执行命令并且返回用于读取结果的数据读取器 + DbDataReader 对象 + 执行命令时要使用的行为 + + + 异步执行命令并且返回用于读取结果的数据读取器 + 表示异步操作的任务。任务结果包含一个 DbDataReader 对象。 + 执行命令时要使用的行为 + 针对取消请求监视的标记 + + + 执行当前命令。 + 受影响的行数。 + + + 异步执行此命令并且放弃从此命令返回的任何结果 + 表示异步操作的任务。任务结果包含受影响的行数。 + 等待任务完成期间要观察的 。 + + + 执行命令并返回一个数据读取器。 + 包含结果的 + + + 编译成命令目录树,并将其传递到基础存储区提供程序以供执行,然后使用指定的 根据生成的结果集生成一个 + 包含结果的 + + 值之一。 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 执行命令时要使用的行为 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 执行命令时要使用的行为 + 等待任务完成期间要观察的 。 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 等待任务完成期间要观察的 。 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 执行命令,并返回结果集中第一行的第一列。其他列或行将被忽略。 + 结果集中第一行的第一列;如果结果集为空,则为空引用(在 Visual Basic 中为 Nothing)。 + + + 获取实体 SQL 语句或存储过程的参数。 + 实体 SQL 语句或存储过程的参数。 + + + 编译实体级别的命令并创建该命令的预制版本。 + + + 编译实体级别的命令并返回存储命令文本。 + 存储命令文本。 + + + 获取或设置在其中执行 的事务。 + 在其中执行 的事务。 + + + 获取或设置向正在更新的行应用命令结果的方式。 + + 值之一。 + + + 表示概念层的连接的类。一个实体连接只能被初始化一次(通过打开该连接)。之后将无法更改连接字符串、附加新的存储连接或更改存储连接字符串。 + + + 初始化 类的新实例。 + + + 使用指定的 来初始化 类的新实例。 + 与此 关联的 。 + 对象的基础数据源连接。 + workspace 或 connection 参数为 null。 + 工作区缺少概念模型。-或-工作区缺少映射文件。-或-工作区缺少存储模型。-或-连接未处于关闭状态。 + connection 并非来自与 ADO.NET Entity Framework 兼容的提供程序。 + + + 从内存中加载的元数据构造 EntityConnection + 包含元数据信息的工作区。 + 存储连接。 + 如果设置为 true,则释放实体连接时将释放该存储连接;否则调用方必须释放该存储连接。 + + + 基于连接字符串初始化 类的新实例。 + 提供程序特定的连接字符串。 + 提供的连接字符串关键字无效,或未提供所需的连接字符串关键字。 + + + 开始一个数据库事务 + 表示新事务的对象 + 事务的隔离级别 + + + 使用基础提供程序开始一个事务。 + 一个新的 。返回的 实例以后可以与 关联以执行该事务下的命令。 + 基础提供程序未知。-或-对已具有当前事务的 调用 。-或- 的状态不是 + + + 使用基础提供程序开始一个具有指定隔离级别的事务。 + 一个新的 。返回的 实例以后可以与 关联以执行该事务下的命令。 + 事务的隔离级别。 + 基础提供程序未知。-或-对已具有当前事务的 调用 。-或- 的状态不是 + + + 不提供支持。 + 不提供支持。 + 调用该方法时。 + + + 关闭与数据库之间的连接。 + 关闭连接时出错。 + + + 获取或设置 连接字符串。 + 建立与数据源的初始连接所需的连接字符串。默认值为一个空字符串。连接关闭时,将返回当前设置的值。如果未设置任何值,则将返回一个空字符串。 + + + 获取从尝试建立连接到结束尝试并生成错误需要等待的秒数。 + 等待连接打开所需的时间(以秒为单位)。默认值为基础数据提供程序的默认超时值。 + + + 设置为此 的情况下创建 的新实例。 + 一个 对象。 + 基础数据提供程序的名称未知。 + + + 创建使用此连接对象的新命令对象 + 命令对象。 + + + 获取此连接在其中登记的当前事务。可能为 null。 + + + 获取当前数据库或将在连接打开后使用的数据库的名称。 + 基础数据提供程序的 Database 属性值。 + + + 获取要连接到的数据源的名称或网络地址。 + 数据源的名称。默认值为一个空字符串。 + + + 获取与此 EntityConnection 关联的提供程序工厂 + + + 清除此连接对象 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源 + + + 在指定的事务中登记此 + 要在其中进行登记的事务对象。 + + 的状态不是 + + + 返回与此 关联的 + 与此 关联的 + 内联连接字符串包含一个无效的 Metadata 关键字值。 + + + 通过调用基础数据提供程序的 Open 方法建立到数据源的连接。 + 打开连接时出错,或基础数据提供程序的名称未知。 + 内联连接字符串包含一个无效的 Metadata 关键字值。 + + + 通过在基础数据提供程序上调用 Open 方法以异步方式建立与数据存储的连接 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取一个字符串,该字符串包含客户端连接到的数据源的版本。 + 提供程序连接字符串中包含的数据源的版本。 + + + 获取 EntityConnection 的状态,它设置为跟踪此 EntityConnection 包装的基础数据库连接的状态。 + + + 提供对 对象使用的基础数据源连接的访问。 + 数据源连接的 + + + 表示实体客户端提供程序的连接字符串生成器的类 + + + 初始化 类的新实例。 + + + 使用提供的连接字符串初始化 类的新实例。 + 一个指向基础数据源的提供程序特定的连接字符串。 + + + 清除 实例的内容。 + + + 确定 是否包含特定的键。 + 如果 包含具有指定键的元素,则返回 true;否则返回 false。 + 要在 中定位的键。 + + + 获取一个值,指示 是否具有固定大小。 + 无论在何种情况下,都将返回 true,因为 始终提供固定大小的关键字/值对集合。 + + + 获取或设置与指定的键关联的值。在 C# 中,此属性为索引器。 + 与指定的键相关联的值。 + + + 获取包含 中的键的 + 一个 ,包含 中的键。 + + + 获取或设置连接字符串中的元数据位置。 + 获取或设置连接字符串中的元数据位置。 + + + 获取或设置配置文件中定义的节名称。 + 配置文件中的节名称。 + + + 获取或设置连接字符串中的基础 .NET Framework 数据提供程序的名称。 + 基础 .NET Framework 数据提供程序的固定名称。 + + + 获取或设置提供程序特定的内部连接字符串。 + 提供程序特定的内部连接字符串。 + + + 实例中移除具有指定的键的项。 + 如果该键存在于连接字符串中并被移除,则返回 true;如果该键不存在,则返回 false。 + 要从此 中的连接字符串删除的关键字/值对的键。 + 关键字为 null(在 Visual Basic 中为 Nothing) + + + 从此 中检索与提供的键相对应的值。 + 如果在连接字符串中找到 keyword,则返回 true;否则返回 false。 + 要检索的项的键。 + 与 keyword 相对应的值。 + keyword 包含一个 null 值(在 Visual Basic 中为 Nothing)。 + + + 实体客户端提供程序的数据读取器类 + + + 关闭 对象。 + + + 获取此 + 数据记录信息。 + + + 获取一个值,该值指示当前行的嵌套深度。 + 当前行的嵌套深度。 + + + 释放由此 占用的资源并调用 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 获取当前行中的列数。 + 当前行中的列数。 + + + 以布尔值的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以字节的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在指定列中从 dataIndex 指示的位置开始,将字节流读入缓冲区,读入缓冲区的起始位置由 bufferIndex 指示。 + 读取的实际字节数。 + 从零开始的列序号。 + 行中作为读取操作起始位置的索引。 + 要将数据复制到的缓冲区。 + 要将数据复制到的位置的缓冲区索引。 + 要读取的最多字符数。 + + + 以单个字符的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在指定列中从 dataIndex 指示的位置开始,将字符流读入缓冲区,读入缓冲区的起始位置由 bufferIndex 指示。 + 读取的实际字符数。 + 从零开始的列序号。 + 行中作为读取操作起始位置的索引。 + 要将数据复制到的缓冲区。 + 要将数据复制到的位置的缓冲区索引。 + 要读取的最多字符数。 + + + 对象的形式返回嵌套的读取器。 + 作为 对象嵌套的读取器。 + 列的序号。 + + + 返回嵌套的 + 嵌套的数据记录。 + 要返回的 DbDataRecord 的编号。 + + + 获取指定列的数据类型的名称。 + 数据类型的名称。 + 从零开始的列序号。 + + + 对象的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 为可用提供程序特定的实现重写的已请求的列序号返回一个 对象。 + 数据读取器。 + 从零开始的列序号。 + + + 对象的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以双精度浮点数字的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 返回一个可用于循环访问数据读取器中的行的 + 一个 ,可用于循环访问数据读取器中的行。 + + + 获取指定列的数据类型。 + 指定列的数据类型。 + 从零开始的列序号。 + + + 以单精度浮点数字的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以全局唯一标识符 (GUID) 的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以 16 位有符号整数的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以 32 位有符号整数的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以 64 位有符号整数的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在给定从零开始的列序号时获取该列的名称。 + 指定列的名称。 + 从零开始的列序号。 + + + 在给定列名时获取相应的列序号。 + 从零开始的列序号。 + 列的名称。 + 指定的名称不是有效的列名。 + + + 返回指定列的提供程序特定的字段类型。 + 描述指定列的数据类型的 对象。 + 从零开始的列序号。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在当前行的集合中获取提供程序特定的所有属性列。 + 数组中的 实例数。 + 要将属性列复制到的 数组。 + + + 返回一个描述 的列元数据的 + 一个描述列元数据的 + + + 实例的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 使用当前行的列值来填充对象数组。 + 数组中的 实例数。 + 要将属性列复制到的 数组。 + + + 获取一个值,该值指示此 是否包含一个或多个行。 + 如果 包含一行或多行,则为 true;否则为 false。 + + + 获取一个值,该值指示 是否已关闭。 + 如果 已关闭,则为 true;否则为 false。 + + + 获取一个值,该值指示列中是否包含不存在或丢失的值。 + 如果指定的列等效于 ,则为 true;否则为 false。 + 从零开始的列序号。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + + + 在读取一批语句的结果时,使读取器前进到下一个结果。 + 如果存在其他结果集,则为 true;否则为 false。 + + + 在读取一批语句时,以异步方式将读取器移到下一结果集 + 表示异步操作的任务。如果存在其他结果集,则任务结果将包含 true;否则为 false。 + 等待任务完成期间要观察的 。 + + + 使读取器前进到结果集中的下一条记录。 + 如果存在其他行,则为 true;否则为 false。 + + + 以异步方式将读取器移到当前结果集的下一行 + 表示异步操作的任务。如果存在其他行,则任务结果将包含 true;否则为 false。 + 等待任务完成期间要观察的 。 + + + 获取通过执行 SQL 语句更改、插入或删除的行数。 + 更改、插入或删除的行数。如果是 SELECT 语句,则返回 -1;如果未影响任何行或语句失败,则返回 0。 + + + 获取 中未隐藏的字段的数目。 + 未隐藏的字段的数目。 + + + 表示在 EntityCommand 中使用的参数的类 + + + 使用默认值初始化 类的新实例。 + + + 使用指定的参数名称和数据类型初始化 类的新实例。 + 参数名。 + + 值之一。 + + + 使用指定的参数名称、数据类型和大小初始化 类的新实例。 + 参数名。 + + 值之一。 + 参数的大小。 + + + 使用指定的属性初始化 类的新实例。 + 参数名。 + + 值之一。 + 参数的大小。 + + 值之一。 + 若为 true,则指示参数接受 null 值,否则为 false。 + 用于表示值的位数。 + 值所解析的小数位数。 + 源列的名称。 + + 值之一。 + 参数的值。 + + + 使用指定的属性初始化 类的新实例。 + 参数名。 + + 值之一。 + 参数的大小。 + 源列的名称。 + + + 获取或设置参数的 + + 值之一。 + + + 获取或设置参数的方向。 + + 值之一。 + + + 获取或设置表示为 EdmType 的参数类型。 + 表示为 EdmType 的参数的类型。 + + + 获取或设置一个值,该值指示参数是否接受 null 值。 + 如果接受 null 值,则为 true;否则为 false。 + + + 获取或设置实体参数的名称。 + 实体参数的名称。 + + + 获取或设置用于表示 属性的位数。 + 用于表示值的位数。 + + + 重置与 关联的类型。 + + + 获取或设置所解析的 的小数位数。 + 值所解析的小数位数。 + + + 获取或设置列内数据的最大大小。 + 列内数据的最大大小。 + + + 获取或设置源列的名称,该源列映射到 并用于加载或返回 + 映射到数据集并用于加载或返回值的源列的名称。 + + + 获取或设置一个值,该值指示源列是否可以为 null。 + 如果源列可以为 null,则为 true;否则为 false。 + + + 获取或设置在加载值时要使用的 + + 值之一。 + + + 返回参数的字符串表示形式。 + 参数的字符串表示形式。 + + + 获取或设置参数的值。 + 参数的值。 + + + 表示在 EntityCommand 中使用的参数集合的类 + + + 将指定的 对象添加到 中。 + 一个新的 对象。 + 要添加到集合中的 。 + 值参数中指定的 已添加到这个或其他 中。 + 传递的参数不是 + value 参数为 null。 + + + 将指定的对象添加到 中。 + 新的 对象的索引。 + 一个 。 + + + 在给定参数名称和数据类型时向 中添加一个 + 一个新的 对象。 + 参数名。 + + 值之一。 + + + 使用给定的参数名称、数据类型和列长度向 中添加一个 + 一个新的 对象。 + 参数名。 + + 值之一。 + 列的长度。 + + + 的末尾添加一个值数组。 + 要添加的 值。 + + + 的末尾添加一个 值数组。 + 要添加的 值。 + + + 的末尾添加一个值。 + + 对象。 + 参数名。 + 要添加的值。 + + + 中删除所有的 对象。 + + + 确定指定的 是否在此 中。 + 如果 包含该值,则为 true;否则为 false。 + + 值。 + + + 确定指定的 是否在此 中。 + 如果 包含该值,则为 true;否则为 false。 + + 值。 + + + 将当前 的所有元素复制到指定的一维 中,并以指定的目标 索引位置作为复制到的起始位置。 + 作为当前 中的元素的复制目标的一维 。 + 一个 32 位整数,表示 中开始复制的位置的索引。 + + + 将当前 的所有元素复制到指定的 中,并以指定的目标索引位置作为复制到的起始位置。 + 作为当前 中的元素的复制目标的 。 + 一个 32 位整数,表示 中开始复制的位置的索引。 + + + 获取一个包含 中的元素数的整数。 + 以整数形式表示的 中的元素数。 + + + 返回一个循环访问 的枚举器。 + 用于 + + + 获取指定的 在集合中的位置。 + 作为集合中的 的指定 的位置(从零开始)。如果 中不存在该对象,则返回 -1。 + 要查找的 。 + + + 获取指定的 在集合中的位置。 + 作为集合中的 的指定 的位置(从零开始)。如果 中不存在该对象,则返回 -1。 + 要查找的 。 + + + 获取具有指定名称的指定 的位置。 + 具有指定名称(区分大小写)的指定 的位置(从零开始)。如果 中不存在该对象,则返回 -1。 + 要查找的 的名称(区分大小写)。 + + + 中的指定索引处插入一个 对象。 + 应将值插入到的位置的索引(从零开始)。 + 要插入到 中的 对象。 + + + 插入 的指定索引处。 + 应将值插入到的位置的索引(从零开始)。 + 要插入到 中的 。 + + + 获取一个值,指示 是否具有固定大小。 + 如果 具有固定大小,则返回 true;否则返回 false。 + + + 获取一个值,指示 是否是只读的。 + 如果 是只读的,则返回 true;否则返回 false。 + + + 获取一个值,该值指示 是否已同步。 + 如果 已同步,则返回 true;否则返回 false。 + + + 获取位于指定索引处的 + 指定索引处的 + + + 获取具有指定名称的 + 具有指定名称的 + + + 从集合中移除指定的 + 要从集合中移除的 对象。 + 该参数不是 + 集合中不存在该参数。 + + + 从集合中移除指定的参数。 + 要从集合中移除的 对象。 + + + 的指定索引处移除 + 要移除的 对象的索引(从零开始)。 + + + 中移除具有指定参数名称的 + 要移除的 的名称。 + + + 获取可用于同步对 的访问的对象。 + 可用于同步对 的访问的对象。 + + + 类,表示实体客户端提供程序的提供程序工厂 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 引发 。当前不支持该方法。 + 当前不支持该方法。 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 引发 。当前不支持该方法。 + 当前不支持该方法。 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 引发 。当前不支持该方法。 + 当前不支持该方法。 + 当前不支持该方法。 + + + 实体客户端提供程序工厂对象的单一实例对象。这保留一个公共字段(而非属性),因为 DbProviderFactory 应为字段。 + + + 返回请求的 类。 + + 的一个新实例。支持的类型是 。对于所有其他类型均返回 null(在 Visual Basic 中为 Nothing)。 + 要返回的 。 + + + 表示概念层的事务的类 + + + 提交基础事务。 + + + 获取此 + 一个指向基础数据源的 + + + 拥有此事务对象的连接对象 + + + 清除此事务对象 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源 + + + 获取此 的隔离级别。 + 一个 枚举值,表示基础事务的隔离级别。 + + + 回滚基础事务。 + + + 获取基础提供程序事务的 DbTransaction。 + + + 表示 CS 空间中某一 AssociationSet 的映射元数据。 + + + 初始化新的 AssociationSetMapping 实例。 + 要映射的关联集。 + 要映射的存储实体集。 + 父容器映射。 + + + 添加属性映射条件。 + 要添加的条件。 + + + 获取映射的关联集。 + + + 获取包含的关联类型映射。 + + + 获取属性映射条件。 + + + 获取或设置相应的函数映射。可以为 null。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 获取或设置源端属性映射。 + + + 获取映射的存储实体集。 + + + 获取或设置目标端属性映射。 + + + 描述关联集的修改函数映射。 + + + 初始化新的 实例。 + 关联集。 + 删除函数映射。 + 插入函数映射。 + + + 获取关联集。 + 关联集。 + + + 获取删除函数映射。 + 删除函数映射。 + + + 获取插入函数映射。 + 插入函数映射。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 表示 CS 空间中关联类型映射的映射元数据。 + + + 创建 AssociationTypeMapping 实例。 + 包含此 AssociationTypeMapping 的 AssociationSetMapping。 + + + 获取包含此 AssociationTypeMapping 的 AssociationSetMapping。 + + + 获取要映射的关联类型。 + + + 获取单个映射片段。 + + + 复杂属性的映射元数据。 + + + 构造一个新的复杂属性映射对象 + 表示此复杂成员的 MemberMetadata 对象 + + + 添加与嵌套复杂类型对应的类型映射。 + 要添加的复杂类型映射。 + + + 删除与嵌套复杂类型对应的类型映射。 + 要删除的复杂类型映射。 + + + 获取与嵌套复杂类型对应的类型映射的只读集合。 + + + 复杂类型的映射元数据。 + + + 创建 ComplexTypeMapping 实例。 + 要映射的 ComplexType。 + + + 添加属性映射条件。 + 要添加的属性映射条件。 + + + 添加属性映射。 + 要添加的属性映射。 + + + 获取要映射的 ComplexType。 + + + 获取属性映射条件的只读集合。 + + + 获取属性映射的只读集合。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 删除属性映射。 + 要删除的属性映射。 + + + 某一类型上条件属性映射的映射元数据。条件属性映射在 C 侧属性或 S 侧属性上指定条件。 + + + 获取指定已映射列的 EdmProperty。 + + + 获取指定已映射属性的 EdmProperty。 + + + 某一关联的 End 属性的映射元数据。 + + + 创建关联端属性映射。 + 指定要映射的关联端的 AssociationEndMember。 + + + 添加子属性列映射。 + 指定要添加的属性列映射的 ScalarPropertyMapping。 + + + 获取指定映射的关联端的 AssociationEndMember。 + + + 获取指定此关联端属性映射的子级的 ScalarPropertyMapping 的 ReadOnlyCollection。 + + + 删除子属性列映射。 + 指定要删除的属性列映射的 ScalarPropertyMapping。 + + + 表示 CS 空间中 EntityContainer 映射的映射元数据。 + + + 初始化 类的新实例。 + 要映射的概念实体容器。 + 要映射的存储实体容器。 + 父映射项集合。 + 指示是否生成更新视图的标志。 + + + 添加函数导入映射。 + 要添加的函数导入映射。 + + + 添加关联集映射。 + 要添加的关联集映射。 + + + 添加实体集映射。 + 要添加的实体集映射。 + + + 获取关联集映射。 + 关联集映射。 + + + 获取此项的类型种类。 + 此项的类型种类。 + + + 获取概念实体容器。 + 概念实体容器。 + + + 获取实体集映射。 + 实体集映射。 + + + 获取函数导入映射。 + 函数导入映射。 + + + 获取指示是否生成更新视图的标志。 + 若为 true,则生成更新视图;否则为 false。 + + + 获取父映射项集合。 + 父映射项集合。 + + + 删除函数导入映射。 + 要删除的函数导入映射。 + + + 删除关联集映射。 + 要删除的关联集映射。 + + + 删除关联集映射。 + 要删除的关联集映射。 + + + 获取存储实体容器。 + 存储实体容器。 + + + 表示 CS 空间中某一范围的映射元数据。 + + + 获取父容器映射。 + + + 获取或设置与此映射关联的查询视图。 + + + 表示 CS 空间中某一 EnitytSet 的映射元数据。 + + + 初始化新的 EntitySetMapping 实例。 + 要映射的实体集。 + 父容器映射。 + + + 添加函数映射。 + 要添加的函数映射。 + + + 添加类型映射。 + 要添加的类型映射。 + + + 获取映射的实体集。 + + + 获取包含的实体类型映射。 + + + 获取相应的函数映射。 + + + 删除函数映射。 + 要删除的函数映射。 + + + 删除类型映射。 + 要删除的类型映射。 + + + 实体类型的映射元数据。如果 EntitySet 表示多种类型的实体,则对于 EntitySet,我们将具有多个 EntityTypeMapping(例如:如果 PersonSet 实体范围表示 Person 和 Customer 类型的实体,则我们在 PersonSet 的映射下将具有两个 EntityType 映射)。 + + + 创建 EntityTypeMapping 实例。 + 包含此 EntityTypeMapping 的 EntitySetMapping。 + + + 添加映射片段。 + 要添加的映射片段。 + + + 将实体类型层次结构添加到映射中。层次结构由指定的根实体类型表示。 + 要添加的层次结构的根 EntityType。 + + + 将实体类型添加到映射中。 + 要添加的 EntityType。 + + + 获取包含此 EntityTypeMapping 的 EntitySetMapping。 + + + 获取要映射的单个 EntityType。如果发生层次结构类型映射,则引发异常。 + + + 获取映射的实体类型。 + + + 获取映射片段的只读集合。 + + + 获取指示这是否是类型层次结构映射的标志。 + + + 获取层次结构映射的已映射基类型。 + + + 删除映射片段。 + 要删除的映射片段。 + + + 从映射中删除实体类型层次结构。层次结构由指定的根实体类型表示。 + 要删除的层次结构的根 EntityType。 + + + 从映射中删除实体类型。 + 要删除的 EntityType。 + + + 描述实体集内的实体类型的修改函数映射。 + + + 初始化 类的新实例。 + EDM 实体类型。 + 功能删除的映射。 + 功能插入的映射。 + 功能更新的映射。 + + + 获取功能删除的映射。 + 功能删除的映射。 + + + 获取 EDM 实体类型。 + EDM 实体类型。 + + + 获取功能插入的映射。 + 功能插入的映射。 + + + 返回 对象的字符串表示形式。 + + 对象的字符串表示形式。 + + + 获取功能更新的映射。 + 功能更新的映射。 + + + 在设计时创建的、用于存储生成的视图的类型的基类。 + + + 初始化 类的新实例。 + + + 获取或设置 的名称。 + 容器名称。 + + + 返回指定索引处的键/值对,其中包含视图和其键。 + 索引处的键/值对,其中包含视图以及视图的键。 + 视图的索引。 + + + 视图的哈希值。 + 哈希值。 + + + 哈希值。 + 哈希值。 + + + 获取或设置存储架构中的 + 容器名称。 + + + 获取或设置视图计数。 + 视图计数。 + + + 用于标记包含生成的视图类型的程序集的特性。 + + + 初始化 类的新实例。 + 视图的类型。 + + + 获取视图的 T:System.Type。 + 视图的 T:System.Type。 + + + 表示函数导入结果的复杂类型映射。 + + + 初始化新的 FunctionImportComplexTypeMapping 实例。 + 返回类型。 + 函数导入的结果类型的属性映射。 + + + 获取返回类型。 + + + 表示函数导入实体类型映射。 + + + 初始化新的 FunctionImportEntityTypeMapping 实例。 + 要映射的类型层次结构的基础实体类型。 + 要映射的实体类型。 + 函数导入的结果类型的属性映射。 + 映射条件。 + + + 获取映射条件。 + + + 获取要映射的实体类型。 + + + 获取要映射的层次结构的基础实体类型。 + + + 表示函数导入结果的映射条件。 + + + 获取用于计算条件的列的名称。 + 用于计算此条件的列的名称。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 此当前实例的字符串表示形式。 + + + 表示通过检查 null 或非 null 来进行计算的函数导入的结果的映射条件。 + + + 初始化新的 FunctionImportEntityTypeMappingConditionIsNull 实例。 + 用于计算此条件的列的名称。 + 指示是执行 null 还是非 null 检查的标志。 + + + 获取指示是执行 null 还是非 null 检查的标志。 + + + 表示函数导入的结果的映射条件,通过与指定值作比较来计算此条件。 + + + 初始化新的 FunctionImportEntityTypeMappingConditionValue 实例。 + 用于计算此条件的列的名称。 + 要与之作比较的值。 + + + 获取用于比较的值。 + + + 表示从模型函数导入到存储可组合或不可组合函数的映射。 + + + 获取模型函数(或者映射的源) + + + 获取存储函数(或者映射的目标) + + + 表示从模型函数导入到存储可组合函数的映射。 + + + 初始化新的 FunctionImportMappingComposable 实例。 + 模型函数导入。 + 可组合的存储函数。 + 函数导入的结果映射。 + 父容器映射。 + + + 获取函数导入的结果映射。 + + + 表示从模型函数导入到不可组合的存储函数的映射。 + + + 初始化新的 FunctionImportMappingNonComposable 实例。 + 模型函数导入。 + 存储不可组合函数。 + 函数导入结果映射。 + 父容器映射。 + + + 获取函数导入结果映射。 + + + 表示函数导入的结果映射。 + + + 初始化 类的新实例。 + + + 添加类型映射。 + 要添加的类型映射。 + + + 删除类型映射。 + 要删除的类型映射。 + + + 获取类型映射。 + 类型映射。 + + + 用于映射函数导入返回类型的属性的基类。 + + + 将函数导入返回类型属性映射到表列。 + + + 初始化新的 FunctionImportReturnTypeScalarPropertyMapping 实例。 + 映射的属性名称。 + 映射的列名称。 + + + 获取映射的列名称。 + + + 获取映射的属性名称。 + + + 指定函数导入结构类型映射。 + + + 获取函数导入的结果类型的属性映射。 + + + 指定通过检查属性/列的值是否为 null 来进行计算的映射条件。 + + + 创建 IsNullConditionMapping 实例。 + 指定属性或列的 EdmProperty。 + 指示是执行 null 还是非 null 检查的布尔值。 + + + 获取指定是通过执行 null 检查还是非 null 检查来计算条件的布尔值。 + + + 表示所有映射元数据的项基类 + + + 表示映射片段的元数据。一组映射片段构成 Set 映射(EntitySet、AssociationSet 或 CompositionSet)。每个 MappingFragment 都为映射到单个表的类型的这些属性提供映射。 + + + 创建 MappingFragment 实例。 + 与要映射的表或视图对应的 EntitySet。 + 包含此 MappingFragment 的 TypeMapping。 + 指示在生成查询时是否包括“DISTINCT”的标志。 + + + 添加属性映射条件。 + 要添加的属性映射条件。 + + + 添加属性映射。 + 要添加的属性映射。 + + + 获取属性映射条件的只读集合。 + + + 获取指示在生成查询时是否包括“DISTINCT”的标志。 + + + 获取属性映射的只读集合。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 删除属性映射。 + 要删除的属性映射。 + + + 获取与要映射的表或视图对应的 EntitySet。 + + + 获取包含此 MappingFragment 的 TypeMapping。 + + + 表示映射空间 (DataSpace.CSSpace) 中项的基类。 + + + 初始化 类的新实例。 + + + 表示 Edm 空间中映射项的集合的类。 + + + 描述用于实体或关联的更改处理的修改函数绑定。 + + + 初始化 类的新实例。 + 实体或关联集。 + 实体或关联类型。 + 我们应绑定到的函数的元数据。 + 函数参数的绑定。 + 生成受影响行数的输出参数。 + 函数计算结果的绑定 + + + 获取我们应绑定到的函数的元数据。 + 我们应绑定到的函数的元数据。 + + + 获取函数参数的绑定。 + 函数参数的绑定。 + + + 获取函数计算的结果的绑定。 + 函数计算结果的绑定。 + + + 获取生成受影响行数的输出参数。可能为 null。 + 生成受影响行数的输出参数。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的字符串表示形式。 + + + 描述成员在实体或关联类型结构中的位置。 + + + 初始化 类的新实例。 + 从结构的叶(要绑定的成员)到根的路径中的成员。 + 我们通过此成员导航到的关联集。如果值为 null,则这不是导航成员路径。 + + + 获取我们通过此成员导航到的关联集。如果值为 null,则这不是导航成员路径。 + 我们通过此成员导航到的关联集。 + + + 获取从结构的叶(要绑定的成员)到根的路径中的成员。 + 从结构的叶(要绑定的成员)到根的路径中的成员。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 表示将修改函数参数绑定到要修改的实体或关联的成员。 + + + 初始化 类的新实例。 + 采用值的参数。 + 定义值的实体或关联成员的路径。 + 如果绑定当前或原始的成员值,则为 true;否则为 false。 + + + 获取指示是绑定当前的还是原始的成员值的标志。 + 如果绑定了当前或原始的成员值,则为 true;否则为 false。 + + + 获取定义值的实体或关联成员的路径。 + 定义值的实体或关联成员的路径。 + + + 获取采用值的参数。 + 采用值的参数。 + + + 使用指定格式将此实例的值转变为其等效字符串表示形式。 + 格式所指定的此实例的值的字符串表示形式。 + + + 定义从命名结果集列到采用值的成员的绑定。 + + + 初始化 类的新实例。 + 要从函数结果集绑定的列的名称。 + 要在实体上设置的属性。 + + + 获取要从函数结果集绑定的列的名称。 + 要从函数结果集绑定的列的名称。 + + + 获取要在实体上设置的属性。 + 要在实体上设置的属性。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 属性映射的所有类型的映射元数据。 + + + 获取指定已映射属性的 EdmProperty。 + + + 标量属性的映射元数据。 + + + 在简单属性和列之间创建映射。 + 要映射的属性。 + 要映射的列。 + + + 获取指定已映射列的 EdmProperty。 + + + 表示存储映射(CS 映射)空间中的项集合。 + + + 使用指定的 和 XML 读取器初始化 类的新实例。 + 此映射要使用的 。 + 此映射要使用的 。 + 此映射要使用的 XML 读取器。 + + + 使用指定的 以及指示元数据文件路径的字符串的集合初始化 类的新实例。 + 此映射要使用的 。 + 此映射要使用的 。 + 此映射要使用的文件路径。 + + + 计算集合中单个容器映射的哈希值。 + 指定计算出的哈希值的字符串。 + + + 计算由已映射容器的名称指定的容器映射的哈希值。 + 指定计算出的哈希值的字符串。 + 概念模型中容器的名称。 + 存储模型中容器的名称。 + + + 创建一个 + 如果未遇到错误,则为 实例。否则为 null。 + 要映射的 EDM 元数据集合。不得为 null。 + 要映射的存储元数据集合。不得为 null。 + 要加载的 MSL 项目。不得为 null。 + MSL 项目的路径。用于错误消息中。可为 null,在此情况下 XmlReader 的基 Uri 将用作路径。 + 加载时遇到的错误的集合。 + + + 为集合中的单个容器映射创建(范围、生成的视图)字典。 + 用于指定生成的视图()的字典。 + 积累潜在错误的列表。 + + + 为由已映射容器的名称指定的容器映射创建(范围,生成的视图)字典。 + 用于指定生成的视图()的字典。 + 概念模型中容器的名称。 + 存储模型中容器的名称。 + 积累潜在错误的列表。 + + + 获取此 表示的版本。 + 表示的版本。 + + + 获取或设置一个 ,它用于创建在检索预生成的映射视图时使用的 实例。 + 创建用于检索预生成的映射视图的 实例的 + + + 指定结构类型映射。 + + + 初始化 类的新实例。 + + + 添加属性映射条件。 + 要添加的属性映射条件。 + + + 添加属性映射。 + 要添加的属性映射。 + + + 获取属性映射条件的只读集合。 + + + 获取属性映射的只读集合。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 删除属性映射。 + 要删除的属性映射。 + + + 表示 CS 空间中类型映射的映射元数据。 + + + 指定通过将属性或列的值与给定值作比较来进行计算的映射条件。 + + + 创建 ValueConditionMapping 实例。 + 指定属性或列的 EdmProperty。 + 指定要与之作比较的值的对象。 + + + 获取指定要检查的值的对象。 + + + 表示关联类型的端 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 创建一个只读的 AssociationEndMember 实例。 + 新创建的 AssociationEndMember 实例。 + 关联端成员的名称。 + 端的引用类型。 + 端的多重性。 + 指示端的删除行为的标志。 + 要与该实例相关联的元数据属性。 + 指定的名称为 null 或空。 + 指定的引用类型为 null。 + + + 表示关联集的类 + + + 获取此 的 End。 + 一个 类型的集合,其中包含此 的 End。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 从指定的参数创建一个只读 AssociationSet 实例。 + 新创建的 AssociationSet 实例。 + 关联集的名称。 + 关联集中元素的关联类型。 + 源关联集端的实体集。 + 目标关联集端的实体集。 + 要与该实例相关联的元数据属性。 + 指定的名称为 null 或空。 + 指定的关联类型为 null。 + 指定的关联类型的其中一端的实体类型与相应实体集端的实体类型不匹配。 + + + 获取与此 有关的关联。 + 一个 对象,表示与此 有关的关联。 + + + 表示 AssociationSet 端的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取与此 对象相对应的 End 成员。 + 一个 对象,表示与此 对象相对应的 End 成员。 + + + 获取由此 End 角色引用的实体集。 + 一个 对象,表示由此 End 角色引用的实体集。 + + + 获取此 的 End 名称。 + 的 End 名称。 + + + 获取此 的父关联集。 + 一个 对象,表示此 的父关联集。 + + + 获取此 的 End 角色名称。 + 的 End 角色名称。 + + + 返回此 的 End 角色名称。 + 的 End 角色名称。 + + + 描述概念模型中两个实体之间的关联/关系,或者描述存储模型中两个表之间的外键关系。在概念模型中,相关类不一定定义外键属性。如果定义了某一外键,则 属性将为 true,并且 属性将包含外键的详细信息 + + + 获取此 的端的列表。 + 一个 类型的集合,其中包含此 的 End 列表。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取或设置引用约束。 + 引用约束。 + + + 从指定的参数创建一个只读 AssociationType 实例。 + 新创建的 AssociationType 实例。 + 关联类型的名称。 + 关联类型的命名空间。 + 指示外键 (FK) 关系的标志。 + 关联类型的数据空间。 + 源关联端成员。 + 目标关联端成员。 + 一个引用约束。 + 要与该实例相关联的元数据属性。 + 指定的名称为 null 或空。 + 指定的命名空间为 null 或空。 + + + 获取一个布尔属性值,该值指定列是否为外键。 + 一个指定列是否为外键的布尔值。如果为 true,则列是外键。如果为 false(默认值),则列不是外键。 + + + 获取此 的约束列表。 + 一个 类型的集合,其中包含此 的约束列表。 + + + 所有内置类型的列表 + + + 关联类型种类 + + + AssociationSet 种类 + + + AssociationSetEnd 种类 + + + 关联类型种类 + + + 集合种类 + + + 集合类型种类 + + + 复杂类型种类 + + + 文档种类 + + + EdmFunction 种类 + + + EdmMember 类型种类 + + + EdmProperty 类型种类 + + + Edm 类型种类 + + + 实体容器种类 + + + 实体集种类 + + + EntitySetBase 种类 + + + 实体类型种类 + + + 实体类型基种类 + + + 枚举成员种类 + + + 枚举类型种类 + + + 方面种类 + + + 函数参数种类 + + + 全局项类型种类 + + + 元数据项类型种类 + + + 元数据属性种类 + + + 导航属性种类 + + + DeleteAction 类型种类 + + + 参数模式种类 + + + 基元类型种类 + + + 基元类型种类 + + + ProviderManifest 类型种类 + + + 引用约束类型种类 + + + Ref 类型种类 + + + RelationshipEnd 类型种类 + + + 关系多重性类型种类 + + + RelationshipEnd 类型种类 + + + 关系类型 + + + 行类型种类 + + + 简单类型种类 + + + 结构化类型种类 + + + 类型信息种类 + + + 集合的种类(适用于属性) + + + 集合具有包语义(允许未排序和重复项) + + + 集合具有列表语义(顺序明确并且允许重复项) + + + 属性不是集合 + + + 表示 Edm 集合类型 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取 类的一个实例,其中包含此当前 对象所包括的元素的类型以及该类型的各个方面。 + + 类的一个实例,其中包含此当前 对象所包括的元素的类型以及该类型的各个方面。 + + + 表示 Edm 复杂类型。这可用于从概念空间基于模型的约定配置复杂类型。在存储模型中不支持复杂类型。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 创建 类型的新实例。 + + 类型的新实例。 + 复杂类型的名称。 + 复杂类型的命名空间。 + 复杂类型属于的数据空间。 + 复杂类型的成员。 + 要与该实例相关联的元数据属性。 + 在 name、namespace 或 members 参数为 null 时引发。 + + + 获取此 的属性列表。 + 一个 类型的集合,其中包含此 的属性列表。 + + + 属性的并发模式。 + + + 固定并发模式:在写入时间始终验证属性 + + + 默认并发模式:在写入时间从不验证属性 + + + 将符合单个 CSDL 架构文件限制的 序列化到 XML 编写器。要序列化的模型必须包含单个 + + + 初始化 类的新实例。 + + + 当序列化模型过程中遇到错误时发生。 + + + 序列化到 XmlWriter。 + 如果模型有效,则为 true;否则为 false。 + 要序列化的 EdmModel。 + 要序列化到的 XmlWriter。 + 已序列化的模型的命名空间。 + + + 表示有关处理实体框架模型时所发生的错误的信息。 + + + 初始化 类的新实例。 + + + 获取描述所引发的错误的可选描述性消息。 + 描述所引发的错误的可选描述消息。 + + + 获取一个值,用于指示导致引发此事件的 + 如果 可引发此事件,则为 true;否则为 false。 + + + 获取一个可选值,用于指示导致引发此事件的源项的属性。 + 指示导致引发此事件的源项的属性。 + + + DataSpace + + + CSpace 指示 CSpace 中的项 - edm 基元类型 + 在 csdl 中定义的类型 + + + CSpace 和 SSpace 之间的映射 + + + OSpace 和 CSpace 之间的映射 + + + OSpace 指示 clr 空间中的项 + + + SSpace 指示 SSpace 中的项 + + + + 的扩展方法。 + + + 从指定 DbModel 获取概念模型。 + 表示概念模型的 EdmModel 的实例。 + 实现 IEdmModelAdapter 的类的实例(例如DbModel)。 + + + 从指定 DbModel 获取存储模型。 + 表示存储模型的 EdmModel 的实例。 + 实现 IEdmModelAdapter 的类的实例(例如DbModel)。 + + + 表示与某一项相关联的文档的类 + + + 初始化新的 Documentation 实例。 + 摘要字符串。 + 长描述字符串。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取一个值,该值指示此 对象是否只包含一个 null(即空的) 和一个 + 如果此 对象只包含一个 null(即空的) 和一个 ,则为 true;否则为 false。 + + + 获取有关此 的详细说明。 + 有关此 的详细说明。 + + + 获取此 的摘要。 + 的摘要。 + + + 返回此 的摘要。 + 的摘要。 + + + 此类包装有关一般性 EDM 错误的错误信息。 + + + 获取错误消息。 + 错误消息。 + + + 表示某一函数的类 + + + 向此函数添加参数。 + 要添加的参数。 + + + 获取此函数的聚合特性。 + + + 获取一个值,该值指示此函数中是否存在内置特性。 + 如果存在内置特性,则为 true;否则为 false。 + + + 获取此 的内置类型种类。 + + 枚举的枚举值之一。 + + + 获取采用数据库管理系统或存储模型所使用的语言的查询。 + 采用数据库管理系统或存储模型所使用语法的一个字符串值,其中包含 的查询或更新语句。 + + + 构造该 对象的工厂方法。 + + 类型的新的只读实例。 + 函数的名称。 + 函数的命名空间。 + 函数所属的命名空间。 + 其他函数特性和属性。 + 将添加到该函数的元数据属性。可以为 null。 + + + 返回此类型的全名(命名空间加名称)。 + 类型的全名。 + + + 获取是将此实例映射到函数还是映射到存储过程的信息。 + 如果将此实例映射到函数,则为 true;如果将此实例映射到存储过程,则为 false。 + + + 获取一个值,该值指示此实例是否来自提供程序清单。 + 如果此实例来自提供程序清单,则为 true;否则为 false。 + + + 获取一个值,该值指示此函数是否为 niladic 函数(不接受任何参数的函数)。 + 如果此函数为 niladic 函数,则为 true;否则为 false。 + + + 获取此 的参数。 + 一个 类型的集合,其中包含此 的参数。 + + + 获取此函数的参数类型语义特性。 + + + 获取此 的返回参数。 + 一个 对象,表示此 的返回参数。 + + + 获取此 的返回参数。 + 一个 类型的集合,表示 的返回参数。 + + + 获取或设置与函数关联的架构。 + 与函数关联的架构。 + + + 获取此函数的存储函数名称特性。 + + + 包含 的其他特性和属性。 + + + 初始化 类的新实例。 + + + 获取或设置与函数关联的命令文本。 + 与函数关联的命令文本。 + + + 获取或设置函数的实体集。 + 函数的实体集。 + + + 获取指示这是否为聚合函数的值。 + 如果这是聚合函数,则为 true;否则为 false。 + + + 获取或设置此函数是否为内置函数的信息。 + 如果此函数为内置函数,则为 true;否则为 false。 + + + 获取或设置此函数是否为缓存存储函数的信息。 + 如果此函数为缓存的存储函数,则为 true;否则为 false。 + + + 获取或设置此函数是否可以组合的信息。 + 如果此函数可以组合,则为 true;否则为 false。 + + + 获取或设置此函数是否来自提供程序清单的信息。 + 如果此函数来自提供程序清单,则为 true;否则为 false。 + + + 获取或设置此函数是否为函数导入的信息。 + 如果此函数为函数导入,则为 true;否则为 false。 + + + 获取或设置函数是否不包含参数的信息。 + 如果函数不包含参数,则为 true;否则为 false。 + + + 获取或设置函数参数。 + 函数参数。 + + + 获取或设置参数类型语义。 + 参数类型语义。 + + + 获取或设置返回参数。 + 返回参数。 + + + 获取或设置函数架构。 + 函数架构。 + + + 获取或设置存储函数名称。 + 存储函数名称。 + + + 表示 Edm 空间中项的集合的类。 + + + 使用概念架构定义语言 (CSDL) 文件所在的 XMLReader 对象的集合初始化 类的新实例。 + 概念架构定义语言 (CSDL) 文件所在的 XMLReader 对象的集合。 + + + 初始化 类的新实例。 + 实体数据模型。 + + + 使用概念架构定义语言 (CSDL) 文件所在的路径初始化 类的新实例。 + 概念架构定义语言 (CSDL) 文件所在的路径。 + + + 创建 的工厂方法。 + 如果未遇到错误,则为 实例。否则为 null。 + 要加载的 CSDL 项目。不得是 null。 + CSDL 项目的路径。用于错误消息中。可为 null,在此情况下,XmlReader 的基 Uri 将用作路径。 + 加载时遇到的错误的集合。 + + + 获取此集合的概念模型版本。 + 此集合的概念模型版本。 + + + 返回一个由 对象构成的集合。 + 一个 ReadOnlyCollection 对象,表示 对象的集合。 + + + 返回具有指定的概念模型版本的 对象的集合。 + 一个 ReadOnlyCollection 对象,表示 对象的集合。 + 概念模型版本。 + + + 表示 edm 成员类 + + + 获取已对其声明此成员的类型。 + 一个 对象,表示已对其声明此成员的类型。 + + + 指示此成员是否在 EDM 定义中标记为计算成员 + + + 指示此成员的存储生成的模式是否在 EDM 定义中标记为标识 + + + 获取或设置属性的名称。从存储空间模型约定对此进行设置将更改此属性的数据库列的名称。在概念模型中,这应该与来自实体类的相应属性保持一致并且不应更改。 + 此成员的名称。 + + + 返回此成员的名称。 + 此成员的名称。 + + + 获取既包含此成员的类型又包含该类型的各个方面的 类实例。 + 一个 对象,其中既包含此成员的类型又包含该类型的各个方面。 + + + 表示概念模型或存储模型。该类可用于访问与模型的形状有关的信息以及对其进行配置的方式。 + + + 将关联类型添加到模型中。 + 要添加的 AssociationType 实例。 + + + 将复杂类型添加到模型中。 + 要添加的 ComplexType 实例。 + + + 将函数添加到模型中。 + 要添加的 EdmFunction 实例。 + + + 将实体类型添加到模型中。 + 要添加的 EntityType 实例。 + + + 将枚举类型添加到模型中。 + 要添加的 EnumType 实例。 + + + 获取模型中的关联类型。 + + + 获取此类型的内置类型种类。 + 一个 对象,表示此类型的内置类型种类。 + + + 获取模型中的复杂类型。 + + + 获取存储实体和关联集以及函数导入的容器。 + + + 获取与此模型关联的数据空间,该数据空间指示它是概念模型 (DataSpace.CSpace) 还是存储模型 (DataSpace.SSpace)。 + + + 获取模型中的实体类型。 + + + 获取模型中的枚举类型。 + + + 获取模型中的函数。 + + + 获取与模型关联的全局项。 + 与模型关联的全局项。 + + + 从模型中删除关联类型。 + 要删除的 AssociationType 实例。 + + + 从模型中删除复杂类型。 + 要删除的 ComplexType 实例。 + + + 从模型中删除函数。 + 要删除的 EdmFunction 实例。 + + + 从模型中删除实体类型。 + 要删除的 EntityType 实例。 + + + 从模型中删除枚举类型。 + 要删除的 EnumType 实例。 + + + 在概念空间中,EdmProperty 表示某个实体的属性。在存储空间中,EdmProperty 表示某个表中的列。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取或设置此模型的集合种类。 + 此模型的集合种类。 + + + 获取此属性的复杂类型信息。 + 此属性的复杂类型信息。 + + + 获取或设置属性的并发模式。 + 属性的并发模式。 + + + 创建 EdmProperty 类型的新实例。 + EdmProperty 类型的新实例 + 属性的名称。 + 属性 + + + 新建复杂属性。 + 新创建的属性。 + 属性的名称。 + 属性的类型。 + + + 新建枚举属性。 + 新创建的属性。 + 属性的名称。 + 属性的类型。 + + + 新建基元属性。 + 新创建的属性。 + 属性的名称。 + 属性的类型。 + + + 获取此 的默认值。 + 的默认值。 + + + 获取此属性的枚举类型信息。 + 此属性的枚举类型信息。 + + + 获取属性是否为集合类型属性的信息。 + 如果属性为集合类型属性,则为 true;否则为 false。 + + + 获取此属性是否为复杂类型属性的信息。 + 如果此属性为复杂类型属性,则为 true;否则为 false。 + + + 获取此属性是否为枚举类型属性的信息。 + 如果此属性为枚举类型属性,则为 true;否则为 false。 + + + 获取或设置此属性的长度是否是固定的信息。 + 如果此属性的长度是固定的,则为 true;否则为 false。 + + + 获取固定长度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取或设置此属性是否使用提供程序支持的最大长度的信息。 + 如果此属性使用提供程序支持的最大长度,则为 true;否则为 false。 + + + 获取最大长度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取精度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取此属性是否为基元类型的信息。 + 如果此属性为基元类型,则为 true;否则为 false。 + + + 获取小数位数方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取此属性是否为基础基元类型的信息。 + 如果此属性为基础基元类型,则为 true;否则为 false。 + + + 获取或设置此属性是否为 Unicode 属性的信息。 + 如果此属性为 Unicode 属性,则为 true;否则为 false。 + + + 获取 Unicode 方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获得或设置属性的最大长度。 + 属性的最大长度。 + + + 获取一个值,该值指示此 的值是否可以为 null。 + 如果此 的值可以为 null,则为 true;否则为 false。 + + + 获取或设置此属性的精度。 + 此属性的精度。 + + + 获取此属性的基元类型信息。 + 此属性的基元类型信息。 + + + 获取或设置此属性的小数位数。 + 此属性的小数位数。 + + + 设置元数据属性。 + 要设置的元数据属性。 + + + 获取或设置与此属性相关联的数据库列的生成方法 + 属性的存储生成模式。 + + + 获取属性的类型名称。 + 属性的类型名称。 + + + 获取此属性的基础基元类型信息。 + 此属性的基础基元类型信息。 + + + 该类包装已遇到的架构错误的错误信息。 + + + 构造 EdmSchemaError 对象。 + 该错误的说明。 + 与此错误关联的代码。 + 错误的严重级别。 + + + 获取发生错误的列。 + 发生错误的列。 + + + 获取错误代码。 + 错误代码。 + + + 获取发生错误的行号。 + 发生错误的行号。 + + + 获取包含错误的架构的位置。此字符串还包括位于末尾的架构的名称。 + 包含错误的架构所在的位置。 + + + 获取包含错误的架构的名称。 + 包含错误的架构的名称。 + + + 获取错误的严重级别。 + + 值之一。默认值为 + + + 获取发生错误时的堆栈跟踪的字符串表示形式。 + 发生错误时的堆栈跟踪的字符串表示形式。 + + + 返回错误消息。 + 错误消息。 + + + 定义在验证实体框架模型时可能出现的错误的不同严重级别。 + + + 导致无法使用模型的错误。 + + + 不会导致无法使用模型的警告。 + + + 用于所有模型类型的 EdmType 基类 + + + 获取一个值,该值指示此类型是否为抽象的。 + 如果此类型是抽象的,则为 true;否则为 false。 + + + 获取此类型的基类型。 + 此类型的基类型。 + + + 获取此类型的全名。 + 此类型的全名。 + + + 返回其元素类型属于此类型的 的实例。 + 其元素类型属于此类型的 对象。 + + + 获取此类型的名称。 + 此类型的名称。 + + + 获取此类型的命名空间。 + 此类型的命名空间。 + + + 返回此类型的全名。 + 此类型的全名。 + + + 表示某一实体容器的类 + + + 创建具有指定名称和数据空间的实体容器。 + 实体容器名称。 + 实体容器数据空间。 + name 参数为 null 时引发。 + name 参数为空字符串时引发。 + + + 将指定的实体集添加到容器。 + 要添加的实体集。 + + + 将函数导入添加到容器中。 + 要添加的函数导入。 + + + 获取此实体容器的关联集。 + 此实体容器的关联集。 + + + 获取此 包括的实体集和关联集的列表。 + 一个 对象,其中包含此 包括的实体集和关联集的列表。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 用于构造 EntityContainer 对象的工厂方法。 + EntityContainer 对象。 + 要创建的实体容器的名称。 + 此实体容器所属的 DataSpace。 + 将包含在新容器中的实体集。可以为 null。 + 将包含在新容器中的函数。可以为 null。 + 要与该实例相关联的元数据属性。 + 在名称参数为 null 或是空字符串时引发。 + + + 获取此实体容器的实体集。 + 此实体容器的实体集。 + + + 指定 元素的集合。每个函数都包含数据库中存在的存储过程的详细信息,或映射到实体及其属性的等效 CommandText 的详细信息。 + 一个包含 元素的 + + + 使用实体集的指定名称返回一个 对象。 + 一个 对象,表示具有指定名称的实体集。 + 要搜索的实体集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用关系集的指定名称返回一个 对象。 + 一个 对象,表示具有指定名称的关系集。 + 要搜索的关系集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 获取此 的名称。 + 的名称。 + + + 从容器中删除特定实体集。 + 要删除的实体集。 + + + 返回此 的名称。 + 的名称。 + + + 使用实体集的指定名称返回一个 对象。 + 如果存在与搜索条件匹配的实体集,则为 true;否则为 false。 + 要搜索的实体集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,包含一个 对象。如果不存在实体集,此输出参数将包含 null。 + + + 使用关系集的指定名称返回一个 对象。 + 如果存在与搜索条件匹配的关系集,则为 true;否则为 false。 + 要搜索的关系集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,包含一个 对象。 + + + 表示在 EntityType 中定义的结构的特定用法。在概念模型中,这表示可以查询和存储实体的集。在存储模型中,它表示一个表。从存储空间模型约定中,它可用来通过 属性配置表名称,通过 属性配置表架构。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 EntitySet 对象的工厂方法。 + EntitySet 对象。 + EntitySet 的名称。 + db 架构。可以为 null。 + db 表。可以为 null。 + 应该用于检索此 EntitySet 的数据的提供程序特定的查询。可以为 null。 + 此实体集类型包含的实体的实体类型。 + 将添加到新创建的 EntitySet 的元数据属性。可以为 null。 + 在名称参数为 null 或是空字符串时引发。 + + + 获取此 的实体类型。 + 一个 对象,表示此 的实体类型。 + + + 表示某一实体集的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取描述此实体集的已转义提供程序特定的 SQL。 + + + 获取此 的实体类型。 + 一个 对象,表示此 的实体类型。 + + + 获取当前实体集或关系集的实体容器。 + 一个 对象,表示当前实体集或关系集的实体容器。 + + + 获取或设置当前实体集或关系集的名称。如果从存储空间更改此属性,则也必须更新映射层,以便反映新名称。若要更改存储空间 的表名称,请使用 Table 属性。 + 当前实体集或关系集的名称。 + + + 获取或设置此实体集的数据库架构。 + + + 获取或设置此实体集的数据库表名称。 + + + 返回当前实体集或关系集的名称。 + 当前实体集或关系集的名称。 + + + 表示 的结构。在概念模型中,这表示某一实体的形状和结构。在存储模型中,这表示表的结构。若要更改架构和表名称,请使用 EntitySet。 + + + 将指定的导航属性添加到此类型的成员。添加导航属性,而与只读标志无关。 + 要添加的导航属性。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 EntityType 对象的工厂方法。 + EntityType 对象。 + 实体类型的名称。 + 此实体类型的命名空间。 + 此 EntityType 属于的数据空间。 + 该类型的键成员的名称。 + 该实体类型的成员(基元和导航属性)。 + 要与该实例相关联的元数据属性。 + 在 name 或 namespace 参数为 null 时引发。 + + + 构造该 EntityType 对象的工厂方法。 + EntityType 对象。 + 实体类型的名称。 + 此实体类型的命名空间。 + 此 EntityType 属于的数据空间。 + 基类型。 + 该类型的键成员的名称。 + 该实体类型的成员(基元和导航属性)。 + 要与该实例相关联的元数据属性。 + 在 name 或 namespace 参数为 null 时引发。 + + + 获取实体类型的已声明成员的集合。 + 实体类型的已声明成员的集合。 + + + 获取与实体类型关联的已声明导航属性。 + 与实体类型关联的已声明导航属性。 + + + 获取实体类型的已声明属性的列表。 + 实体类型的已声明属性。 + + + 返回一个引用此 对象。 + 一个引用此 对象。 + + + 获取此 的导航属性。 + 一个 类型的集合,其中包含此 的导航属性列表。 + + + 获取此 的属性列表。 + 一个 类型的集合,其中包含此 的属性列表。 + + + 表示实体类型 + + + 将指定的属性添加到当前实体的键的列表。 + 要添加的属性。 + 如果成员参数为 null + 在 EntityType 具有另一个 EntityTypeBase 的基类型时引发。在此情形下,KeyMembers 应该作为基类型添加 + 如果 EntityType 实例处于 ReadOnly 状态 + + + 获取当前实体或关系类型的所有键成员的列表。 + 一个 对象,表示当前实体或关系类型的键成员的列表。 + + + 获取此实体类型的所有键属性的列表。 + 此实体类型的所有键属性的列表。 + + + 从集合中删除指定的键成员。 + 要删除的键成员。 + + + 表示一个枚举成员。 + + + 获取此类型的种类。 + 此类型的种类。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 获取该枚举成员的名称。 + 此枚举成员的名称。 + + + 重写 System.Object.ToString 以提供针对此类型的更好的字符串表示形式。 + 此枚举成员的名称。 + + + 获取该枚举成员的值。 + 此枚举成员的值。 + + + 表示一个枚举类型。 + + + 返回类型的种类 + + + 创建一个只读的 EnumType 实例。 + 新创建的 EnumType 实例。 + 枚举类型的名称。 + 枚举类型的命名空间。 + 枚举类型的基础类型。 + 指示是否可以将枚举类型视为位域;即标志集。 + 枚举类型的成员。 + 要与枚举类型相关联的元数据属性。 + underlyingType 为 null。 + name 为 null 或为空。-或- namespaceName 为 null 或为空。-或- underlyingType 不是支持的基础类型。-或- 指定成员的名称不唯一。-或- 指定成员的值不在基础类型的范围内。 + + + 获取一个值,该值指示 enum 类型是否已定义为标志(即,可被视为位域) + + + 获取此枚举类型的枚举成员的集合。 + + + 获取此枚举类型的基础类型。 + + + 表示某一 Facet 对象的类。此对象是不可变的(不是仅设置为只读)并且系统的某些部分正依赖于该行为 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取有关此 的说明。 + + 对象,表示有关此 的说明。 + + + 获取此 的类型。 + + 对象,表示此 的类型。 + + + 获取一个值,该值指示是否未绑定方面的值。 + 如果未绑定方面的值,则为 true;否则为 false。 + + + 获取此 的名称。 + 的名称。 + + + 返回此 的名称。 + 的名称。 + + + 获取此 的值。 + 的值。 + + + 表示 FacetDescription 对象的类 + + + 获取具有此方面说明的方面的默认值。 + 具有此方面说明的方面的默认值。 + + + 获取此方面的名称。 + 此方面的名称。 + + + 获取此方面的类型。 + 一个 对象,表示此方面的类型。 + + + 获取一个值,该值指示此方面的值是否为常量。 + 如果此方面是一个常量,则为 true;否则为 false。 + + + 获取一个值,该值指示此方面是否为必需的方面。 + 如果此方面是必需的方面,则为 true;否则为 false。 + + + 获取此方面的最大值。 + 此方面的最大值。 + + + 获取此方面的最小值。 + 此方面的最小值。 + + + 返回此方面的名称。 + 此方面的名称。 + + + 表示函数参数的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 对象的工厂方法。 + + 类型的新的只读实例。 + 参数名。 + 参数的 EdmType。 + 参数的 。 + + + 获取已对其声明此参数的 + 一个 对象,表示已对其声明此参数的函数。 + + + 获取此参数是否使用数据库提供程序支持的最大长度的信息。 + 如果此参数使用数据库提供程序支持的最大长度,则为 true;否则为 false。 + + + 获取最大长度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取精度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取小数位数方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取参数的最大长度。 + 参数的最大长度。 + + + 获取此 的模式。 + + 值之一。 + + + 获取此 的名称。 + 的名称。 + + + 获取参数的精度值。 + 参数的精度值。 + + + 获取参数的小数位数值。 + 参数的小数位数值。 + + + 返回此 的名称。 + 的名称。 + + + 获取此参数的类型名称。 + 此参数的类型名称。 + + + 获取既包含该参数的类型又包含该类型的各个方面的 类实例。 + 一个 对象,其中既包含该参数的类型又包含该类型的各个方面。 + + + 表示所有元数据的项基类 + + + 用于获取 的基础存储和概念模型的接口。 + + + 获取概念模型。 + + + 获取存储模型。 + + + 表示项的集合的类。该集合的实际维护的大部分实现由 MetadataCollection 完成 + + + 获取与此项集合关联的数据模型。 + 与此项集合关联的数据模型。 + + + 使用指定的实体容器名称返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + + + 使用指定的实体容器名称返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的名称从此项集合中返回所有函数重载。 + 一个 ReadOnlyCollection 类型的集合,其中包含具有指定名称的所有函数。 + 一个函数字典。 + 函数的全名。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的名称从此项集合中返回所有函数重载。 + 一个 类型的集合,其中包含具有指定名称的所有函数。 + 函数的全名。 + + + 使用指定的名称从此项集合中返回所有函数重载。 + 一个 类型的集合,其中包含具有指定名称的所有函数。 + 函数的全名。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的标识返回一个强类型的 对象。 + 由标识指定的项。 + 项的标识。 + 由方法返回的类型。 + + + 通过使用指定的标识进行区分大小写或不区分大小写的搜索,返回一个强类型的 对象。 + 由标识指定的项。 + 项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 由方法返回的类型。 + + + 从此项集合中返回属于指定类型的所有项。 + 一个 类型的集合,其中包含属于指定类型的所有项。 + 由方法返回的类型。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 一个 对象,表示此项集合中与指定的类型名称和命名空间名称匹配的类型。如果不存在匹配的类型,此方法将返回 null。 + 类型名称。 + 类型的命名空间。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 一个 对象,表示此项集合中与指定的类型名称和命名空间名称匹配的类型。如果不存在匹配的类型,此方法将返回 null。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的实体容器名称返回一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将包含第一个实体容器。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 它在此方法返回时会包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将包含第一个实体容器。 + + + 使用指定的实体容器名称返回一个 对象。如果不存在实体容器,该输出参数将包含 null;否则,它将包含第一个实体容器。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 它在此方法返回时会包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将包含第一个实体容器。 + + + 使用指定的标识从此项集合中返回一个强类型的 对象。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,此输出参数会包含一个 对象。如果项集合中不存在具有指定标识的全局项,此输出参数将包含 null。 + 由方法返回的类型。 + + + 使用指定的标识从此项集合中返回一个强类型的 对象。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 项的标识。 + 在此方法返回时,此输出参数会包含一个 对象。如果项集合中不存在具有指定标识的全局项,此输出参数将包含 null。 + 由方法返回的类型。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,此输出参数会包含一个 对象。如果此项集合中不存在具有指定的名称和命名空间名称的类型,此输出参数将包含 null。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 在此方法返回时,此输出参数会包含一个 对象。如果此项集合中不存在具有指定的名称和命名空间名称的类型,此输出参数将包含 null。 + + + 表示所有元数据的项基类 + + + 添加或更新具有指定名称和值的批注。 + 批注属性的名称。 + 批注属性的值。 + + + 获取此类型的内置类型种类。 + 一个 对象,表示此类型的内置类型种类。 + + + 获取或设置与此类型关联的文档。 + 一个 对象,表示介绍此类型的文档。 + + + 返回一个与 值之一匹配的概念模型内置类型。 + 一个 对象,表示 EDM 中的内置类型。 + + 值之一。 + + + 返回有关指定类型的常规方面的说明列表。 + 一个 对象,表示有关指定类型的常规方面的说明列表。 + + + 获取当前类型的属性列表。 + 一个 类型的集合,其中包含当前类型的属性列表。 + + + 删除具有指定名称的批注。 + 如果删除了批注,则为 true;否则为 false。 + 批注属性的名称。 + + + 表示某一项的元数据特性的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 MetadataProperty 对象的工厂方法。 + MetadataProperty 对象。 + 元数据属性的名称。 + 该元数据属性的类型用法。 + 元数据属性的值。 + + 为 null 时引发。 + + + 创建具有指定名称和值的元数据批注。 + 表示创建的批注的 MetadataProperty 实例。 + 批注名称。 + 批注值。 + + + 获取指示元数据属性是否为注释的布尔值。 + + + 获取此 的名称。 + 的名称。 + + + 获取此 的值。 + 的值。 + + + 获取既包含此 的类型又包含该类型的各个方面的 类实例。 + 一个 对象,其中既包含此 的类型又包含该类型的各个方面。 + + + 获取此 的值。 + 的值。 + + + 运行时元数据工作区 + + + 初始化 类的新实例。 + + + 使用指定的路径和程序集初始化 类的新实例。 + 工作区元数据的路径。 + 用于构造工作区的程序集的名称。 + + + 使用来自传统 EDMX 映射的所有项集合 () 的加载程序构造一个 。将使用默认的 o-space 和 o/c 映射集合。首次使用给定集合时,会惰式执行项集合委托。可以传递一个委托,以便在集合从不会被使用时返回 null,但极少这样做,因为在这种情况下,EF 使用集合的任何尝试都将导致异常。 + 委托以返回 c-space (CSDL) 项集合。 + 委托以返回 s-space (SSDL) 项集合。 + 委托以返回 c/s 映射 (MSL) 项集合。 + + + 使用 EF 所需的所有项集合 () 的加载程序构造一个 ,o/c 映射除外,将基于给定的 o-space 和 c-space 加载程序自动创建该映射。首次使用给定集合时,会惰式执行项集合委托。可以传递一个委托,以便在集合从不会被使用时返回 null,但极少这样做,因为在这种情况下,EF 使用集合的任何尝试都将导致异常。 + 委托以返回 c-space (CSDL) 项集合。 + 委托以返回 s-space (SSDL) 项集合。 + 委托以返回 c/s 映射 (MSL) 项集合。 + 委托以返回 o-space 项集合。 + + + 清除所有的元数据缓存条目。 + + + 创建配置为使用 数据空间的 + 创建的分析器对象。 + + + 基于指定的查询表达式,创建限定为此元数据工作区的新 + 使用指定表达式作为其 属性的新 + 一个定义查询的 。 + 如果 为 null + 如果 包含在此元数据工作区无法解析的元数据 + 如果 因为包含无法解析的变量引用导致结构无效 + + + 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 一个表示 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个在对象空间中提供类型的 。 + + + 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 一个表示 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个在对象空间中提供类型的 。 + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索实体容器的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + 要从中搜索实体容器的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的名称、命名空间名称和数据模型返回所有函数重载。 + 一个 类型的集合,其中包含给定命名空间和数据模型中与指定名称匹配的所有函数。 + 函数的名称。 + 函数的命名空间。 + 要从中搜索函数的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的名称、命名空间名称和数据模型返回所有函数重载。 + 一个 类型的集合,其中包含给定命名空间和数据模型中与指定名称匹配的所有函数。 + 函数的名称。 + 函数的命名空间。 + 要从中搜索函数的概念模型。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的标识和数据模型返回一个项。 + 指定的数据模型中与给定标识匹配的项。 + 项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 由方法返回的类型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的标识和数据模型返回一个项。 + 指定的数据模型中与给定标识匹配的项。 + 项的标识。 + 要从中搜索项的概念模型。 + 由方法返回的类型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 获取 项。 + + 项。 + 要从其中检索项的 。 + + + 获取指定数据模型中的所有项。 + 一个 类型的集合,其中包含指定数据模型中的所有项。 + 需要其项列表的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 获取指定数据模型中的所有项。 + 一个 类型的集合,其中包含指定数据模型中的所有项。 + 需要其项列表的概念模型。 + 由方法返回的类型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 返回一个 对象,该对象表示与参数 edmSpaceType 提供的类型匹配的对象空间类型。 + 一个表示对象空间类型的 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个表示 对象。 + + + 返回一个 对象,该对象表示与参数 edmSpaceType 提供的类型匹配的对象空间类型。 + 一个表示对象空间类型的 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个表示 对象。 + + + 返回指定数据模型中的基元类型列表。 + 一个 类型的集合,其中包含指定数据模型中的所有基元类型。 + 需要获取其基元类型列表的数据模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 返回在修改实体时需要对其使用原始值的给定 / 的成员。 + 需要原始值的 + 属于 C-Space 的 。 + 参与给定 。 + 如果可以部分更新实体,则为 true;否则为 false。 + + + 从实体集和实体类型获取原始值成员。 + 实体集和实体类型中的原始值成员。 + 从中检索原始值的实体集。 + 对其检索原始值的实体类型。 + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 一个 对象。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索类型的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 一个 对象,表示指定的数据模型中与给定的类型名称和命名空间名称匹配的类型。如果不存在匹配的类型,此方法将返回 null。 + 类型名称。 + 类型的命名空间。 + 要从中搜索类型的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + 用于记录加载消息的委托。 + + + 运行时将支持的最高 EDM 版本。 + + + 在每个关联的数据模型中注册项集合。 + 需要填充的输出参数集合。 + + + 通过输出参数 edmSpaceType 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 如果成功,则为 true;如果失败,则为 false。 + 一个表示对象空间类型的 对象。 + 在此方法返回时,包含一个表示 对象。此参数未经初始化即被传递。 + + + 通过输出参数 edmSpaceType 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示对象空间类型的 对象。 + 在此方法返回时,包含一个表示 对象。此参数未经初始化即被传递。 + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索实体容器的概念模型。 + 在此方法返回时,包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将返回第一个实体容器。此参数未经初始化即被传递。 + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 要从中搜索实体容器的概念模型。 + 在此方法返回时,包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将返回第一个实体容器。此参数未经初始化即被传递。 + + + 使用指定的标识和数据模型返回一个项。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + 由方法返回的类型。 + + + 使用指定的标识和数据模型返回一个项。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 要从中搜索项的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + 由方法返回的类型。 + + + 测试对 的检索。 + 如果检索成功,则为 true,否则为 false。 + 从中尝试 检索的 。 + 在此方法返回时,包含项集合。此参数未经初始化即被传递。 + + + 通过输出参数 objectSpaceType 返回一个 对象,该对象表示与参数 edmSpaceType 提供的 匹配的类型。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示 对象。 + 此方法返回时,包含一个 对象,该对象表示对象空间类型。此参数未经初始化即被传递。 + + + 通过输出参数 objectSpaceType 返回一个 对象,该对象表示与参数 edmSpaceType 提供的 匹配的类型。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示 对象。 + 此方法返回时,包含一个 对象,该对象表示对象空间类型。此参数未经初始化即被传递。 + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索类型的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 要从中搜索类型的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + + + 表示 edm 导航属性类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 从指定的参数创建一个 NavigationProperty 实例。 + 新创建的 NavigationProperty 实例。 + 导航属性的名称。 + 指定导航属性类型及其方面。 + 导航的关系类型。 + 导航中的源端成员。 + 导航中的目标端成员。 + 导航属性的元数据属性。 + + + 获取此导航中的“源”关系 End 成员。 + 此导航中的“源”关系 End 成员。 + + + 在给定的导航属性位于引用约束的依赖端时,返回外键属性。否则,返回空集。我们将按主体端键属性的顺序返回这些成员。 + 外键属性的集合。 + + + 获取此导航属性操作的关系类型。 + 此导航属性操作的关系类型。 + + + 获取此导航的“目标”关系 End 成员。 + 此导航的“目标”关系 End 成员。 + + + 表示对象层的项集合的类。该集合的实际维护的大部分实现由 ItemCollection 完成 + + + 初始化 类的新实例。 + + + 该方法返回指定 OSpace 类型参数的基础 CLR 类型。如果该参数的 DataSpace 不为 OSpace,则引发 ArgumentException。 + OSpace 参数的 CLR 类型。 + 要查找的 OSpace 类型。 + + + 返回与 objectSpaceType 参数提供的 相对应的 CLR 类型。 + OSpace 参数的 CLR 类型。 + 一个表示对象空间类型的 。 + + + 从此项集合中返回属于指定类型的所有项。 + 一个 类型的集合,其中包含属于指定类型的所有项。 + 由方法返回的类型。 + + + 返回基元类型对象集合。 + 基元类型对象的集合。 + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + + + 从指定的程序集加载元数据。 + 将加载其元数据的程序集。 + O space 元数据的 EDM 元数据源。 + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + O space 元数据的 EDM 元数据源。 + 将向其发送日志消息的委托。 + + + 返回指定的枚举类型参数的基础 CLR 类型。如果该参数的 DataSpace 不为 OSpace,则此方法返回 false 并将 out 参数设置为 null。 + 如果成功,则为 true;如果失败,则为 false + 要查找的 OSpace 枚举类型 + OSpace 参数的 CLR 枚举类型 + + + 返回与 objectSpaceType 参数提供的 相对应的 CLR 类型。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示对象空间类型的 。 + CLR 类型。 + + + 表示针对删除操作的可能操作的列表 + + + 级联到其他端 + + + 不执行任何操作 + + + 定义参数的模式的枚举 + + + In 参数 + + + in 和 out 参数 + + + Out 参数 + + + 返回参数 + + + 定义用于解析函数重载的类型语义的枚举。这些标志是在提供程序清单中根据函数定义来定义的。 + + + 允许在给定参数类型和形参类型(默认值)之间进行隐式转换。 + + + 允许在给定参数类型和形参类型之间进行类型提升。 + + + 仅使用严格等效。 + + + 表示基元类型的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 返回与此 等效的公共语言运行时 (CLR) 类型。请注意, 属性始终返回不可以为 null 的类型值。 + 一个 对象,表示与此 等效的公共语言运行时 (CLR) 类型。 + + + 获取有关此 各方面的说明列表。 + 一个 类型的集合,其中包含有关此 的方面说明列表。 + + + 返回与此 等效的 + 一个与此 等效的 对象。 + + + 返回 的等效 + 一个 对象,该对象是指定的 的等效项。 + 一个 类型的值。 + + + 返回基元类型的列表。 + 一个 类型的集合,其中包含基元类型的列表。 + + + 获取一个 枚举值,该值指示此 的基元类型。 + 一个指示此 的基元类型的 枚举值。 + + + EDM 定义的基元类型 + + + Binary 类型种类 + + + Boolean 类型种类 + + + Byte 类型种类 + + + DateTime 类型种类 + + + DateTimeOffset 类型种类 + + + Decimal 类型种类 + + + Double 类型种类 + + + Geography 类型种类 + + + Geographic 集合类型种类 + + + Geographic 线性环类型种类 + + + Geographic 多线性环类型种类 + + + Geographic 多点类型种类 + + + Geographic 多多边形类型种类 + + + Geographic 单点类型种类 + + + Geographic 多边形类型种类 + + + Geometry 类型种类 + + + Geometric 集合类型种类 + + + Geometric 线性环类型种类 + + + Geometric 多线性环类型种类 + + + Geometric 多点类型种类 + + + Geometric 多多边形类型种类 + + + Geometric 单点类型种类 + + + Geometric 多边形类型种类 + + + Guid 类型种类 + + + Int16 类型种类 + + + Int32 类型种类 + + + Int64 类型种类 + + + SByte 类型种类 + + + Single 类型种类 + + + String 类型种类 + + + Time 类型种类 + + + 指定概念模型中项特性的种类。 + + + 一个指示项特性为 Extended 的枚举成员。 + + + 一个指示项特性为 System 的枚举成员 + + + 表示 MetadataCollection 周围的只读包装的类 + 此集合中项的类型 + + + 确定集合中是否包含具有指定标识的项。 + 如果集合中包含要搜索的项,则为 true;否则为 false。默认值为 false。 + 项的标识。 + + + 返回一个可循环访问此集合的枚举器。 + 一个可用于循环访问此 + + + 使用指定的标识从此集合中检索一个项。 + 此集合中的一个项。 + 要搜索的项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 返回指定的值在此集合中的索引。 + 指定的值在此集合中的索引。 + 要搜寻的值。 + + + 获取一个值,该值指示此集合是否是只读的。 + 如果此集合是只读的,则为 true;否则为 false。 + + + 使用指定的标识从此集合中获取一个项。 + 此集合中的一个项。 + + + 使用指定的标识从此集合中检索一个项。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 要搜索的项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,此输出参数会包含集合中的一个项。如果不存在匹配的项,此输出参数将包含 null。 + + + MetadataCollection 的枚举器 + + + 获取位于当前位置的成员。 + 位于当前位置的成员。 + + + 释放此枚举器。 + + + 移至 类型的集合中的下一个成员。 + 如果枚举器在 类型的集合中发生了移动,则为 true;否则为 false。 + + + 将枚举器定位在 类型的集合中的第一个位置之前。 + + + 获取位于当前位置的成员 + + + 该类表示指定关系的“to”和“from”端的两个实体之间的引用约束。 + + + 在该关系上构造一个新约束 + 该关系源自的角色 + 该关系链接到/针对的角色 + 参与约束的目标角色的实体类型上的属性 + 参与约束的源角色的实体类型上的属性 + 如果任何参数为 null,则引发参数 Null 异常 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取定义此 时使用的“源角色”的属性列表。 + 一个 类型的集合,其中包含定义此 时使用的“源角色”的属性列表。 + + + 获取参与此 的“源角色”。 + 一个 对象,表示参与此 的“源角色”。 + + + 获取定义此 时使用的“目标角色”的属性列表。 + 一个 类型的集合,其中包含定义此 时使用的“目标角色”的属性列表。 + + + 获取参与此 的“目标角色”。 + 一个 对象,表示参与此 的“目标角色”。 + + + 返回 的名称组合。 + + 的名称组合。 + + + 表示引用类型的类。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取此 引用的实体类型。 + 一个 对象,表示此 引用的实体类型。 + + + 确定指定对象等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 初始化 RelationshipEndMember 类的新实例 + + + 获取此关系 End 成员的操作行为。 + + 值之一。默认值为 + + + 访问关联中的 EndMember 的 EntityType。 + 关联中的 EndMember 的 EntityType。 + + + 获取此关系 End 成员的重数。 + + 值之一。 + + + 表示与关系类型的端有关的多重性信息 + + + 下限为 0,上限为 null + + + 下限和上限均为 1 + + + 下限为 0,上限为 1 + + + 表示关系集的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取此 的关系类型。 + 一个 对象,表示此 的关系类型。 + + + 表示关系类型 + + + 获取此关系类型的 End 列表。 + 一个 类型的集合,其中包含此关系类型的 End 列表。 + + + 表示 Edm 行类型 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 对象的工厂方法。 + + 对象的新的只读实例。 + 行类型对象的属性。 + 将添加到该函数的元数据属性。可以为 null。 + + + 获取由当前类型定义的属性集合。 + 由当前类型定义的属性集合。 + + + 获取此 的属性列表。 + 一个 类型的集合,其中包含此 的属性列表。 + + + 表示简单类型的类 + + + 提供用于将 的存储(数据库)部分序列化到 XML 的方法。 + + + 初始化 类的新实例。 + + + 当序列化模型过程中遇到错误时发生。 + + + 序列化到 + 如果模型可以序列化,则为 true;否则为 false。 + 要序列化的 EdmModel。 + 架构元素上的命名空间名称。 + 架构元素上的提供程序信息。 + 架构元素上的 ProviderManifestToken 信息。 + 要序列化到的 XmlWriter。 + 指示在将可为空的属性设置为默认值时是否对其进行序列化的值。 + + + 序列化到 + 如果模型可以序列化,则为 true;否则为 false。 + 要序列化的 EdmModel。 + 架构元素上的提供程序信息。 + 架构元素上的 ProviderManifestToken 信息。 + 要序列化到的 XmlWriter。 + 指示在将可为空的属性设置为默认值时是否对其进行序列化的值。 + + + 服务器生成的属性的模式。 + + + 执行 INSERT 和 UPDATE 时都将生成一个值。 + + + 执行 INSERT 时生成一个值,但在执行 UPDATE 时保持不变。 + + + 不是服务器生成的属性。这是默认值。 + + + 表示存储空间中项的集合的类。 + + + 使用指定的 XMLReader 初始化 类的新实例。 + 用于创建元数据的 XMLReader。 + + + 初始化 类的新实例。 + + 的模型。 + + + 使用指定的文件路径初始化 类的新实例。 + 用于创建元数据的文件路径。 + + + 创建 的工厂方法。 + 如果未遇到错误,则为 实例。否则为 null。 + 要加载的 SSDL 项目。不得是 null。 + SSDL 项目的路径。用于错误消息中。可为 null,在此情况下,XmlReader 的基 Uri 将用作路径。 + 自定义解析程序。目前用于解析 DbProviderServices 实现。如果为 null,将使用默认解析程序。 + 加载时遇到的错误的集合。 + + + 返回一个由 对象构成的集合。 + 一个 对象,表示 对象的集合。 + + + 获取 StoreItemCollection 的提供程序工厂。 + StoreItemCollection 的提供程序工厂。 + + + 获取 StoreItemCollection 的固定名称。 + StoreItemCollection 的固定名称。 + + + 获取 StoreItemCollection 的提供程序清单。 + StoreItemCollection 的提供程序清单。 + + + 获取 StoreItemCollection 的清单标记。 + StoreItemCollection 的清单标记。 + + + 获取此集合的存储架构版本。 + 此集合的存储架构版本。 + + + 表示结构化类型 + + + 向此类型添加成员 + 要添加的成员 + + + 获取此类型的成员列表。 + 一个 类型的集合,其中包含此类型的一组成员。 + + + 从此类型删除成员。 + 要删除的成员。 + + + 表示某一项的类型信息的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 用于创建具有指定 EdmType 和方面的 TypeUsage 的工厂方法 + 新的 TypeUsage 实例 + 要为其创建类型用法的 EdmType + 要复制到新的 TypeUsage 中的方面 + + + 创建一个使用指定方面值描述二进制类型的 对象。 + 一个使用指定方面值描述二进制类型的 对象。 + 要为其创建 对象的 。 + 如果将二进制类型的长度设置为固定数值,则为 true;否则为 false。 + + + 创建一个使用指定方面值描述二进制类型的 对象。 + 一个使用指定方面值描述二进制类型的 对象。 + 要为其创建 对象的 。 + 如果将二进制类型的长度设置为固定数值,则为 true;否则为 false。 + 二进制类型的最大长度。 + + + 创建参数所描述类型的 对象。 + + 对象。 + 用于定义偏移的度量单位的简单类型。 + 用秒的小数部分(基于支持的小数位数)表示的 DateTimeOffset 的粒度。例如,精度为 3 表示支持的粒度为毫秒。 + + + 创建参数所描述类型的 对象。 + + 对象。 + 用于定义 DateTime 对象的度量单位的简单类型。 + 用秒的小数部分(基于支持的小数位数)表示的 DateTimeOffset 的粒度。例如,精度为 3 表示支持的粒度为毫秒。 + + + 创建一个用无限精度和小数位数方面值描述十进制类型的 对象。 + 一个使用无限精度和小数位数方面值描述十进制类型的 对象。 + 要为其创建 对象的 。 + + + 创建一个使用指定方面值描述十进制类型的 对象。 + 一个使用指定方面值描述十进制类型的 对象。 + 要为其创建 对象的 。 + 十进制类型(以 类型表示)的精度。 + 十进制类型(以 类型表示)的小数位数。 + + + 创建一个具有指定概念模型类型的 对象。 + 一个具有指定 的默认方面值的 对象。 + 要为其创建 对象的 。 + + + 创建一个使用指定方面值和无限 MaxLength 描述字符串类型的 对象。 + 一个使用指定方面和无限 MaxLength 描述字符串类型的 对象。 + 要为其创建 对象的 。 + 如果将字符串类型的字符编码标准设置为 Unicode,则为 true;否则为 false。 + 如果将字符串类型的长度设置为固定数值,则为 true;否则为 false + + + 创建一个使用指定方面值描述字符串类型的 对象。 + 一个使用指定方面值描述字符串类型的 对象。 + 要为其创建 对象的 。 + 如果将字符串类型的字符编码标准设置为 Unicode,则为 true;否则为 false。 + 如果将字符串类型的字符编码标准设置为 Unicode,则为 true;否则为 false。 + 如果将字符串类型的长度设置为固定数值,则为 true;否则为 false。 + + + 创建参数所描述类型的 对象。 + + 对象。 + 用于定义 DateTime 对象的度量单位的简单类型。 + 用秒的小数部分(基于支持的小数位数)表示的 DateTimeOffset 的粒度。例如,精度为 3 表示支持的粒度为毫秒。 + + + 获取由此 描述的类型信息。 + 一个 对象,表示由此 描述的类型信息。 + + + 获取由此 描述的类型的方面列表。 + 一个 类型的集合,其中包含由此 描述的类型的方面列表。 + + + 检查此 是否为指定 的子类型。 + 如果此 是指定 的子类型,则为 true;否则为 false。 + 要检查的 对象。 + + + 返回某一提供程序类型的模型类型用法 + 模型 (CSpace) 类型用法 + + + 返回由此 描述的类型的全名。 + 描述的类型的全名(采用字符串的形式)。 + + + 缓存 ELinq 查询 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg13 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg13 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg14 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg13 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg14 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg15 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 当前赋给实体的各个属性的值。 + + + 提供对对象数据的原始值的访问。DbUpdatableDataRecord 实现可用于更新对象的原始值的方法。 + + + 获取数据记录信息。 + + 对象。 + + + 获取记录中的字段数。 + 整数值字段数。 + + + 检索布尔值形式的字段值。 + 布尔值形式的字段值。 + 字段的序号。 + + + 检索字节形式的字段值。 + 字节形式的字段值。 + 字段的序号。 + + + 检索字节数组形式的字段值。 + 已复制的字节数。 + 字段的序号。 + 开始复制数据的位置的索引。 + 将数据复制到其中的目标缓冲区。 + 目标缓冲区中开始复制的位置的索引。 + 要复制的字节数。 + + + 检索字符形式的字段值。 + 字符形式的字段值。 + 字段的序号。 + + + 检索字符数组形式的字段值。 + 已复制的字符数。 + 字段的序号。 + 开始复制数据的位置的索引。 + 将数据复制到其中的目标缓冲区。 + 目标缓冲区中开始复制的位置的索引。 + 要复制的字符数。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索字段数据类型的名称。 + 字段数据类型的名称。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索十进制形式的字段值。 + 十进制形式的字段值。 + 字段的序号。 + + + 检索双精度值形式的字段值。 + 双精度值形式的字段值。 + 字段的序号。 + + + 检索字段的类型。 + 字段类型。 + 字段的序号。 + + + 检索浮点形式的字段值。 + 浮点形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索字段的名称。 + 字段的名称。 + 字段的序号。 + + + 使用字段名检索字段的序号。 + 字段的序号。 + 字段的名称。 + + + 检索字段的值。 + 字段值。 + 字段的序号。 + + + 检索字符串形式的字段值。 + 字段值。 + 字段的序号。 + + + 检索字段的值。 + 字段值。 + 字段的序号。 + + + 使用当前记录的字段值来填充对象数组。 + 返回的字段值的数目。 + 用于存储字段值的对象数组。 + + + 返回指定字段是否设置为 + 如果字段设置为 ,则为 true;否则为 false。 + 字段的序号。 + + + 返回具有给定字段序号的值。 + 具有给定字段序号的值。 + + + 获取具有给定字段名称的值。 + 字段值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 将一个字段设置为 值。 + 字段的序号。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中的字段值。 + 已设置的字段数。 + 字段的值。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 提供在 LINQ to Entities 查询中使用的公开 EDM 规范函数的公共语言运行时 (CLR) 方法。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为非 Unicode 字符串处理的运算符。 + 作为非 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为 Unicode 字符串处理的运算符。 + 作为 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTime EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTimeOffset EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + 新日期的时区偏移量部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateTime EDM 函数以创建新的 对象。 + 新的时间跨度。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个时间跨度间隔的小时数。 + 第一个时间跨度和第二个时间跨度间隔的小时数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个时间跨度间隔的微秒数。 + 第一个时间跨度和第二个时间跨度间隔的微秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个时间跨度间隔的毫秒数。 + 第一个时间跨度和第二个时间跨度间隔的毫秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个时间跨度间隔的分钟数。 + 第一个时间跨度和第二个时间跨度间隔的分钟数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个时间跨度间隔的纳秒数。 + 第一个时间跨度和第二个时间跨度间隔的纳秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个时间跨度间隔的秒数。 + 第一个时间跨度和第二个时间跨度间隔的秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 GetTotalOffsetMinutes EDM 函数以返回指定的日期/时间偏移 UTC 的分钟数。该值通常介于 +780 到 -780 之间(+ 或 - 13 小时)。 + 输入对 UTC 的偏移量。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Left 函数以返回字符串中最左侧指定数目的字符。 + 包含从输入字符串左侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Reverse 函数以返回其字符顺序反转的指定字符串。 + 以反转字符顺序显示的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Right 函数以返回字符串中最右侧指定数目的字符。 + 包含从输入字符串右侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 表示查询执行的选项。 + + + 创建 的新实例。 + 要用于实体结果的合并选项。 + + + 创建 的新实例。 + 要用于实体结果的合并选项。 + 如果流式处理查询,则为 true;否则为 false。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取用于实体结果的合并选项。 + 要用于实体结果的合并选项。 + + + 确定指定的对象是否相等。 + 如果两个对象相等,则为 true;否则为 false。 + 要比较的左侧对象。 + 要比较的右侧对象。 + + + 确定指定的对象是否不相等。 + 如果两个对象不相等,则为 true;否则为 false。 + 要比较的左侧对象。 + 要比较的右侧对象。 + + + 获取指示查询是否是流式处理还是缓存的一个值。 + 如果查询是流式处理,则为 true;否则为 false。 + + + 定义 IQueryable 实现的行为,该实现允许修改结果集的成员资格。 + 从查询返回的实体类型。 + + + 通知对象集,必须将表示新实体的对象添加到该集中。 + 要添加到集中的新对象。 + + + 通知对象集,必须将表示现有实体的对象添加到该集中。 + 要添加到集中的现有对象。 + + + 通知对象集,必须从中删除表示现有实体的对象。 + 要从集中删除的现有对象。 + + + 通知对象集,必须从中分离表示现有实体的对象。 + 要从对象集中分离的对象。 + + + 可将从数据库加载的新对象与内存中现有对象合并的不同方法。 + + + 将仅追加新的(顶级唯一)行。这是默认行为。 + + + 将不修改缓存。 + + + 与 LoadOption.OverwriteChanges 的行为相同。 + + + 与 LoadOption.PreserveChanges 的行为相同。 + + + ObjectContext 是封装 CLR 和数据库之间的连接的顶级元素,充当“创建”、“读取”、“更新”和“删除”操作的网关。 + + + 使用给定的连接初始化 类的新实例。在构造过程中,从 对象提取元数据工作区。 + 一种包含对模型和数据源连接的引用的 。 + connection 为 null。 + connection 无效或元数据工作区无效。 + + + 使用给定的连接和元数据工作区创建 ObjectContext。 + 与存储区的连接 + 如果设置为 true,则释放上下文时将释放该连接;否则调用方必须释放该连接。 + + + 使用给定连接和实体容器名称初始化 类的新实例。 + 一种包含对模型和数据源连接的引用的 。 + 默认实体容器的名称。通过此方法设置 defaultContainerName 时,该属性为只读属性。 + connection 为 null。 + connection、defaultContainerName 或元数据工作区无效。 + + + 使用给定连接字符串和默认实体容器名称初始化 类的新实例。 + 连接字符串,该连接字符串还提供对元数据信息的访问。 + connectionString 为 null。 + connectionString 无效或元数据工作区无效。 + + + 使用给定连接字符串和实体容器名称初始化 类的新实例。 + 连接字符串,该连接字符串还提供对元数据信息的访问。 + 默认实体容器的名称。通过此方法设置 defaultContainerName 时,该属性为只读属性。 + connectionString 为 null。 + connectionString、defaultContainerName 或元数据工作区无效。 + + + 接受在对象上下文中对对象所做的所有更改。 + + + 将对象添加到对象上下文。 + 表示实体集名称,可以选择通过实体容器名称对它进行限定。 + 要添加的 。 + entity 参数为 null 或 entitySetName 未限定。 + + + 将标量值从提供的对象复制到 中具有相同键的对象中。 + 已更新的对象。 + 对象所属实体集的名称。 + 其属性更新将应用于原始对象的已分离对象。currentEntity 的实体键必须与 中某个项的 属性相匹配。 + 对象的实体类型。 + entitySetName 或 current 为 null。 + 来自 entitySetName 的 与对象 不匹配,或对象不在 中,或对象处于 状态,或所提供对象的实体键无效。 + entitySetName 为空字符串。 + + + 将标量值从提供的对象复制到 中具有相同键的对象的原始值集中。 + 已更新的对象。 + 对象所属实体集的名称。 + 具有要应用于对象的原始值的已分离对象。originalEntity 的实体键必须与 中某个项的 属性相匹配。 + 实体对象的类型。 + entitySetName 或 original 为 null。 + 来自 entitySetName 的 与对象 不匹配,或在 中找不到对象的 ,或对象处于 状态,或所提供对象的实体键无效或属性发生了更改。 + entitySetName 为空字符串。 + + + 将已分离对象的属性更改应用于已附加到对象上下文的对象。 + 对象所属实体集的名称。 + 其属性更新将应用于原始对象的已分离对象。 + 当 entitySetName 为 null 或空字符串时,或当 changed 为 null 时。 + 当来自 entitySetName 的 与对象 不匹配时,或实体未处于 状态时,或原始对象未附加到上下文时。 + 当 changed 对象的类型与原始对象的类型不同时。 + + + 在对象具有实体键时将对象或对象图附加到对象上下文。 + 要附加的对象。 + entity 为 null。 + 无效的实体键。 + + + 将特定实体集中的对象或对象图附加到对象上下文。 + 表示实体集名称,可以选择通过实体容器名称对它进行限定。 + 要附加的 。 + entity 为 null。 + 实体集无效,或对象具有临时键,或对象具有 与作为方法参数传入的实体集不匹配,或对象没有 且未提供任何实体集,或对象图的任意对象具有临时 ,或对象图的任意对象具有无效的 (例如,键中的值与对象中的值不匹配),或无法根据给定的 entitySetName 名称和实体容器名称找到实体集,或对象图的任意对象已存于其他状态管理器中。 + + + 获取或设置所有对象上下文操作的超时值(以秒为单位)。null 值指示将使用基础提供程序的默认值。 + 作为超时值的 值(以秒为单位)。 + + + 获取对象上下文使用的连接。 + 一个作为连接的 对象。 + + + 获取 实例,该实例包含影响 行为的选项。 + + 实例,该实例包含影响 的行为的选项。 + + + 使用当前数据源连接和 中的元数据创建数据库。 + + + 生成数据定义语言 (DDL) 脚本,该脚本为 中的元数据创建架构对象(表、主键、外键)。 用于加载存储架构定义语言 (SSDL) 文件中的元数据。 + 一个 DDL 脚本,该脚本为 中的元数据创建架构对象。 + + + 为特定对象创建实体键,如果实体键已存在,则返回该键。 + 对象的 + 实体对象所属实体集的完全限定名称。 + 要为其检索实体键的对象。 + 当任一参数为 null 时。 + 当 entitySetName 为空时,或实体对象的类型在实体集中不存在时,或 entitySetName 没有完全限定时。 + 当无法根据提供的参数成功构造实体键时。 + + + 创建并返回所请求的类型的实例。 + 所请求类型 T 的实例,或一个使得 T 能够与实体框架一起使用的派生类型的实例。返回的对象是所请求类型的实例或使得请求的类型能够与实体框架一起使用的派生类型的实例。 + 要返回的对象的类型。 + + + 创建新的 实例,该实例用于查询、添加、修改和删除指定实体类型的对象。 + 新的 实例。 + 所请求的 的实体类型。 + 未在 上设置 属性,或指定的类型属于多个实体集。 + + + 创建新的 实例,该实例用于查询、添加、修改和删除具有指定类型和指定实体集名称的对象。 + 新的 实例。 + 返回的 的实体集的名称。如果未在 上设置 属性,则字符串必须使用默认容器名称进行限定。 + 所请求的 的实体类型。 + 来自 entitySetName 的 与对象 不匹配,或未在 上设置 属性且名称未限定为 entitySetName 参数的一部分,或指定的类型属于多个实体集。 + + + 为提供的枚举中的每个类型生成可与实体框架一同使用的等效类型。 + + 对象的枚举,这些对象表示映射到概念模型的自定义数据类。 + + + 使用指定查询字符串在当前对象上下文中创建 + 具有指定类型的 + 要执行的查询字符串。 + 要传递给查询的参数。 + 返回的 的实体类型。 + queryString 或 parameters 参数为 null。 + + + 检查在当前存储连接中指定为数据库的数据库是否在存储区上存在。大部分实际工作由当前存储连接的 DbProviderServices 实现完成。 + 如果数据库存在,则为 true;否则为 false。 + + + 获取或设置默认容器名称。 + 作为默认容器名称的 + + + 删除在当前数据源连接中指定为数据库的数据库。 + + + 标记对象以备删除。 + 指定待删除实体的对象。该对象可以为任何状态( 除外)。 + + + 从对象上下文移除对象。 + 要分离的对象。仅移除实体;如果存在任何由相同 跟踪的相关对象,则不会自动分离这些对象。 + entity 为 null。 + 实体不与此 关联(例如,是新创建的,仍未与任何上下文关联,或是通过其他上下文获取,或是已分离)。 + + + 确保 更改与由 跟踪的所有对象中的更改进行同步。 + + + 释放对象上下文使用的资源。 + + + 释放对象上下文使用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 对默认容器执行给定的函数。 + 一个表示执行此函数的结果的对象。 + 函数的名称。可能包含容器名称(例如 ContainerName.FunctionName),如果知道 DefaultContainerName,也可以仅包含函数名称。 + 用于执行此函数的选项。 + 要用于函数的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 函数结果的元素类型。 + 如果函数为 null 或为空 + 如果函数无效(语法错误、不存在或引用其返回类型与 T 不兼容的函数) + + + 使用指定的参数和合并选项,执行在数据源中定义并在概念模型中表示的给定存储过程或函数。返回一个类型化的 + 存储过程返回的数据的 + 存储过程或函数的名称。该名称可以包含容器名称,如 <容器名称>.<函数名称>。如果默认容器名称已知,则只需要函数名称。 + 要在执行查询时使用的 。 + 一个 对象数组。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 对数据源执行函数时,将返回 的实体类型。该类型必须实现 + function 为 null 或为空,或未找到 function。 + 实体读取器不支持此函数或读取器和函数的类型不匹配。 + + + 使用指定的参数,执行在数据源中定义并在概念模型中映射的存储过程或函数。返回一个类型化的 + 存储过程返回的数据的 + 存储过程或函数的名称。该名称可以包含容器名称,如 <容器名称>.<函数名称>。如果默认容器名称已知,则只需要函数名称。 + 一个 对象数组。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 对数据源执行函数时,将返回 的实体类型。该类型必须实现 + function 为 null 或为空,或未找到 function。 + 实体读取器不支持此函数或读取器和函数的类型不匹配。 + + + 执行在数据源中定义并在概念模型中表示的存储过程或函数,丢弃该函数返回的任何结果,并返回执行该函数影响的行数。 + 受影响的行数。 + 存储过程或函数的名称。该名称可以包含容器名称,如 <容器名称>.<函数名称>。如果默认容器名称已知,则只需要函数名称。 + 一个 对象数组。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + function 为 null 或为空,或未找到 function。 + 实体读取器不支持此函数或读取器和函数的类型不匹配。 + + + 使用现有连接对数据源直接执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 受影响的行数。 + 对于此命令控制事务的创建。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 受影响的行数。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 对于此命令控制事务的创建。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 对于此命令控制事务的创建。 + 使用服务器的本机查询语言指定的命令。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 使用服务器的本机查询语言指定的命令。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 要在执行查询时使用的 。默认值为 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 用于执行此查询的选项。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 用于执行此查询的选项。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 终结 类的实例。 + + + 返回所有现有代理类型。 + 所有现有代理类型的 + + + 返回具有指定实体键的对象。 + 一个 ,它是实体类型的实例。 + 要查找的对象的键。 + key 参数为 null。 + 和数据源中都未找到对象。 + + + 返回与指定类型的代理对象关联的 POCO 实体的实体类型。 + 关联的 POCO 实体的 + 代理对象的 。 + + + 返回用于此上下文的 + + + 通过指定的导航属性并使用默认合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的实体。 + 可返回要加载的相关对象的导航属性的名称。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 通过指定的导航属性并使用指定的合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的实体。 + 可返回要加载的相关对象的导航属性的名称。 + 在加载相关对象时要使用的 值。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 通过指定的 LINQ 查询并使用默认合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的源对象。 + 定义要加载的相关对象的 LINQ 表达式。 + 实体的类型。 + selector 未提供有效的输入参数。 + selector 为 null。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 通过指定的 LINQ 查询并使用指定的合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的源对象。 + 定义要加载的相关对象的 LINQ 表达式。 + 在加载相关对象时要使用的 值。 + 实体的类型。 + selector 未提供有效的输入参数。 + selector 为 null。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 获取对象上下文使用的元数据工作区。 + 与此 关联的 对象。 + + + 当使用数据源中的数据创建新的实体对象(作为查询或加载操作的一部分)时发生。 + + + 获取对象上下文用于跟踪对象更改的对象状态管理器。 + 使用的 + + + 获取与此对象上下文关联的 LINQ 查询提供程序。 + 由此对象上下文使用的 实例。 + + + 使用数据库中的数据更新对象上下文中的对象集合。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象的 集合。 + collection 为 null。 + refreshMode 无效。 + collection 为空或对象未附加到上下文。 + + + 使用数据库中的数据更新对象上下文中的对象。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象。 + entity 为 null。 + refreshMode 无效。 + 实体未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象集合。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象的 集合。 + collection 为 null。 + refreshMode 无效。 + collection 为空或对象未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象集合。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象的 集合。 + 等待任务完成期间要观察的 。 + collection 为 null。 + refreshMode 无效。 + collection 为空或对象未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象。 + entity 为 null。 + refreshMode 无效。 + 实体未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象。 + 等待任务完成期间要观察的 。 + entity 为 null。 + refreshMode 无效。 + 实体未附加到上下文。 + + + 将所有更新保存到数据库并重置对象上下文中的更改跟踪。 + 在调用 时处于 状态的对象数。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新保存到数据库并可选择重置对象上下文中的更改跟踪。 + 在调用 时处于 状态的对象数。 + 客户端事务支持需要此参数。如果为 true,则所有对象上的更改跟踪都会在 完成后重置。如果为 false,则必须在 之后调用 方法。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新保存到数据库并可选择重置对象上下文中的更改跟踪。 + 在调用 时处于 状态的对象数。 + 一个确定操作的行为的 值。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并可选择重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 一个确定操作的行为的 值。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并可选择重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 一个确定操作的行为的 值。 + 等待任务完成期间要观察的 。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 等待任务完成期间要观察的 。 + 保存更改时发生了开放式并发冲突。 + + + 在将更改保存到数据源时发生。 + + + 返回自身。ObjectContext 实现 以便为 和 ObjectContext(这两者将返回基础 ObjectContext)提供通用接口。 + + + 获取正由此上下文使用的事务处理程序。如果尚未启动任何事务,则可能为 null。 + 事务处理程序。 + + + 将包含实体数据行的 转换为请求的实体类型的对象。 + 类型为 TResult 的对象的枚举。 + 包含要转换为实体对象的实体数据的 。 + 实体类型。 + 当 reader 为 null 时。 + + + 在特定的实体集中,使用指定的合并选项将包含实体数据行的 转换为请求的实体类型的对象。 + 类型为 TResult 的对象的枚举。 + 包含要转换为实体对象的实体数据的 。 + TResult 类型的实体集。 + 在将转换后的对象添加到对象上下文时要使用的 。默认值为 。 + 实体类型。 + 当 reader 为 null 时。 + 当提供的 mergeOption 不是有效的 值时。 + 当提供的 entitySetName 不是 TResult 类型的有效实体集时。 + + + 返回具有指定实体键的对象。 + 如果成功检索到对象,则为 true。如果 key 是临时的、connection 为 null 或值为 null,则为 false。 + 要查找的对象的键。 + 在此方法返回时包含对象。 + 元数据对 key 不兼容。 + key 为 null。 + + + 定义影响 ObjectContext 的行为的选项。 + + + 获取或设置某值,该值确定是否应在事务中始终执行 SQL 函数和命令。 + 默认事务行为。 + + + 获取或设置一个布尔值,该值确定在访问导航属性时是否自动加载相关对象。 + 如果启用了延迟加载,则为 true;否则为 false。 + + + 获取或设置一个布尔值,该值确定是否为持久性未知的自定义数据类创建代理实例。 + 如果创建了代理,则为 true;否则为 false。默认值为 true。 + + + 获取或设置一个布尔值,该值确定是否要使用一致的 NullReference 行为。 + 如果应使用一致的 NullReference 行为,则为 true;否则为 false。 + + + 获取或设置一个布尔值,该值确定是否要使用 C# NullComparison 行为。 + 如果应使用 C# NullComparison 行为,则为 true;否则为 false。 + + + 获取或设置一个布尔值,该值确定是否要使用旧式 PreserveChanges 行为。 + 如果应使用旧式 PreserveChanges 行为,则为 true;否则为 false。 + + + ObjectMaterialized 事件的 EventArgs。 + + + 获取已创建的实体对象。 + 已创建的实体对象。 + + + ObjectMaterialized 事件的委托。 + + + 此类表示对象层的查询参数,它包含 Name、Type 和 Value。 + + + 使用指定的名称和值初始化 类的新实例。 + 参数名称。此名称不应包含“@”参数标记(它用在实体 SQL 语句中),只能为实际名称。表达式的第一个字符必须为字母。表达式中的所有后续字符都必须为字母、数字或下划线 (_) 字符。 + 参数的初始值(及固有类型)。 + 如果任一参数的值为 null。 + 如果名称参数的值无效。参数名称必须以字母开头,并且只能包含字母、数字和下划线。 + + + 利用指定的名称和类型初始化 类的新实例。 + 参数名称。此名称不应包含“@”参数标记(它用在实体 SQL 语句中),只能为实际名称。表达式的第一个字符必须为字母。表达式中的所有后续字符都必须为字母、数字或下划线 (_) 字符。 + 参数的公共语言运行库 (CLR) 类型。 + 如果任一参数的值为 null。 + 如果名称参数的值无效。参数名称必须以字母开头,并且只能包含字母、数字和下划线。 + + + 获取参数名称,该名称只能通过构造函数进行设置。 + 参数名称,它只能通过构造函数进行设置。 + + + 获取参数类型。 + 参数的 + + + 获取或设置参数值。 + 参数值。 + + + 表示对象层上的查询参数集合。 + + + 将指定的 添加到集合。 + 要添加到集合的参数。 + parameter 参数为 null。 + parameter 参数已存在于集合中。此行为与允许重复项的大多数集合的行为不同。-或-与实参同名的另一个形参已存在于集合中。注意,查找是区分大小写的。此行为与大多数集合的行为不同,更类似于 的行为。 + parameter 的类型无效。 + + + 删除集合中的所有 实例。 + + + 按引用检查集合中是否存在指定的 + 如果在集合中找到参数对象,则返回 true;否则返回 false。 + 要在集合中查找的 。 + parameter 参数为 null。 + + + 确定集合中是否存在具有指定名称的 + 如果在集合中找到具有指定名称的参数,则返回 true;否则为 false。 + 要在集合中查找的参数的名称。此名称不应包含“@”参数标记(它用在实体 SQL 语句中),只能为实际名称。 + name 参数为 null。 + + + 允许将集合中的参数复制到提供的数组中(从指定索引处的对象开始)。 + 要将参数复制到其中的数组。 + 数组中开始复制参数的位置的索引。 + + + 获取集合中当前存在的参数的数量。 + 集合中当前存在的 对象的数量。 + + + 返回枚举器实例,这些实例允许循环访问和遍历集合。 + 可用于循环访问集合的 对象。 + + + 获取供调用方按名称检索参数的索引器。 + 供调用方按名称检索参数的索引器。 + 项名称。 + + + 按引用从集合中移除 的实例(如果集合中存在该实例)。 + 如果从集合中找到并删除参数对象,则返回 true;否则为 false。 + 要从集合中移除的对象。 + parameter 参数为 null。 + + + 获取一个值,该值指示 是否为只读。 + 如果 是只读的,则为 true;否则为 false。 + + + 返回集合上的非类型化枚举器。 + 一个 实例。 + + + 此类在对象层实现非类型化的查询。 + + + 返回查询的命令文本。 + 一个字符串值。 + + + 获取与此对象查询相关联的对象上下文。 + 与此 实例关联的 + + + 获取或设置一个值,该值指示是否应缓存查询计划。 + 一个指示是否应缓存查询计划的值。 + + + 使用指定合并选项执行非类型化对象查询。 + 一个 ,它包含查询返回的实体对象的集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定合并选项异步执行非类型化对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定合并选项异步执行非类型化对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + 等待任务完成期间要观察的 。 + + + 返回有关查询的结果类型的信息。 + 一个 值,它包含有关查询的结果类型的信息。 + + + 获取或设置从查询返回的对象添加到对象上下文的方式。 + 查询 + + + 获取此对象查询的参数集合。 + 的参数集合。 + + + 查询是流式处理还是缓存 + + + 返回一个循环访问集合的枚举器。 + 可用于循环访问集合的 + + + 获取一个值,该值指示此查询是否包含查询对象的集合。 + 如果此查询包含查询对象的集合,则为 true;否则为 false。 + + + 返回 形式的集合用于数据绑定。 + 实体对象的 + + + 返回 ,被枚举时它将针对数据库执行给定的 SQL 查询。 + 查询结果。 + + + 获取此查询实例的结果元素类型。 + + + 获取描述此查询的表达式。对于使用 LINQ 生成器模式生成的查询,会返回完全 LINQ 表达式树;否则,返回包装此查询的常量表达式。请注意,默认表达式不进行缓存。这允许用户区分 LINQ 和 Entity-SQL 查询。 + + + 获取与此查询实例关联的 + + + 返回对数据源执行的命令。 + 一个 string,表示查询对数据源执行的命令。 + + + ObjectQuery 在对象层实现强类型化的查询。使用 Entity-SQL 字符串指定查询并可以通过调用由 ObjectQuery 声明的基于 Entity-SQL 的查询生成器方法来创建它们。 + 此 ObjectQuery 的结果类型 + + + 使用指定的实体 SQL 命令作为初始查询来创建新的 实例。 + 实体 SQL 查询。 + 对其执行查询的 。 + + + 使用指定的实体 SQL 命令(作为初始查询)和指定的合并选项创建新的 实例。 + 实体 SQL 查询。 + 对其执行查询的 。 + 指定此查询所检索的实体应如何与以前对同一 的查询所返回的实体合并。 + + + 将查询限制为唯一结果。 + 一个新的 实例,等效于应用了 SELECT DISTINCT 的原始实例。 + + + 此查询生成器方法创建其结果是此查询的所有结果(除了那些也是指定另一个查询结果的一部分之外)的新查询。 + 新的 ObjectQuery 实例。 + 表示要排除的结果的查询。 + 如果查询参数是 null。 + + + 使用指定的合并选项执行对象查询。 + 一个 ,它包含查询返回的实体对象的集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定的合并选项异步执行对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定的合并选项异步执行对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + 等待任务完成期间要观察的 。 + + + 按指定的条件对查询结果进行分组。 + 一个 类型的新 实例,等效于应用了 GROUP BY 的原始实例。 + 作为结果分组依据的键列。 + 用于定义投影的所选属性的列表。 + 此方法中使用的零个或多个参数。 + query 参数为 null 或空字符串,或 projection 参数为 null 或空字符串。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在查询结果中返回的相关对象的列表(以点分隔)。 + path 为 null。 + path 为 empty。 + + + 此查询生成器方法创建其结果同时包含在此查询和指定的另一查询的结果中的新查询。 + 新的 ObjectQuery 实例。 + 表示结果要与其相交的查询。 + 如果查询参数是 null。 + + + 获取或设置此对象查询的名称。 + 一个字符串值,它是此 的名称。 + + + 将查询限制为仅包括特定类型的结果。 + 一个新的 实例,等效于应用了 OFTYPE 的原始实例。 + 使用应用筛选器执行查询时, 的类型返回。 + 指定的类型无效。 + + + 按指定条件对查询结果进行排序。 + 一个新的 实例,等效于应用了 ORDER BY 的原始实例。 + 作为结果排序依据的键列。 + 此方法中使用的零个或多个参数。 + keys 或 parameters 参数为 null。 + key 为空字符串。 + + + 将查询结果限制为仅包含在指定投影中定义的属性。 + 一个 类型的新 实例,等效于应用了 SELECT 的原始实例。 + 用于定义投影的所选属性的列表。 + 此方法中使用的零个或多个参数。 + projection 为 null 或 parameters 为 null。 + projection 为空字符串。 + + + 将查询结果限制为仅包含投影中指定的属性。 + 一个类型与特定投影兼容的新 。返回的 等效于应用了 SELECT VALUE 的原始实例。 + 投影列表。 + 在分析时应在作用域内的一组可选查询参数。 + 方法返回的 的类型。 + projection 为 null 或 parameters 为 null。 + projection 为空字符串。 + + + 按指定条件对查询结果进行排序并跳过指定数目的结果。 + 一个新 实例,等效于同时应用了 ORDER BY 和 SKIP 的原始实例。 + 作为结果排序依据的键列。 + 要跳过的结果数。它可以是常量或参数引用。 + 在分析时应在作用域内的一组可选查询参数。 + 任何参数为 null。 + keys 为空字符串或 count 为空字符串。 + + + 返回 ,被枚举时它将针对数据库执行给定的 SQL 查询。 + 查询结果。 + + + 返回 ,被枚举时它将针对数据库执行给定的 SQL 查询。 + 查询结果。 + + + 将查询结果限制为指定的项数。 + 一个新的 实例,等效于应用了 TOP 的原始实例。 + 字符串形式的结果项数。 + 在分析时应在作用域内的一组可选查询参数。 + count 为 null。 + count 为空字符串。 + + + 此查询生成器方法创建其结果是此查询的所有结果加上另一个查询的所有结果但是不允许重复(即结果是唯一的)的新查询。 + 新的 ObjectQuery 实例。 + 表示要添加的结果的查询。 + 如果查询参数是 null。 + + + 此查询生成器方法创建其结果是此查询的所有结果加上另一个查询的所有结果且包括所有重复项(即结果不一定是唯一的)的新查询。 + 新的 ObjectQuery 实例。 + 表示要添加的结果的查询。 + 如果查询参数是 null。 + + + 将查询限制为包含与指定筛选条件匹配的结果。 + 一个新的 实例,等效于应用了 WHERE 的原始实例。 + 筛选谓词。 + 此方法中使用的零个或多个参数。 + predicate 为 null 或 parameters 为 null。 + predicate 为空字符串。 + + + 此类实现 IEnumerable 和 IDisposable。从 ObjectQuery.Execute 方法返回此类的实例。 + + + 仅当创建将重写具有模拟或伪造行为的成员的测试替身时,才使用此构造函数。将此构造函数用于其他目的可能导致意外的行为,包括但不限于引发 + + + 执行与释放 (free)、释放 (release) 或重置资源关联的任务。 + + + 释放对象结果使用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 在派生类中重写时,获取泛型 的类型。 + 泛型 的类型。 + + + 获取存储过程的下一个结果集。 + 枚举下一个结果集的值的 ObjectResult。如果没有其他值,或 ObjectResult 不是存储过程调用的结果,则为 Null。 + 元素的类型。 + + + 返回一个循环访问查询结果的枚举器。 + 一个循环访问查询结果的枚举器。 + + + IListSource.ContainsListCollection 实现。始终返回 false。 + + + 以数据绑定所用的格式返回结果。 + 实体对象的 + + + 返回一个循环访问查询结果的异步枚举器。 + 一个循环访问查询结果的异步枚举器。 + + + 此类表示 方法的结果。 + 结果的类型。 + + + 仅当创建将重写具有模拟或伪造行为的成员的测试替身时,才使用此构造函数。将此构造函数用于其他目的可能导致意外的行为,包括但不限于引发 + + + 释放由 占用的非托管资源,还可以释放托管资源。 + 如果为 true,则释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 获取 的类型。 + 一个 ,它是 的类型。 + + + 返回一个循环访问查询结果的枚举器。 + 一个循环访问查询结果的枚举器。 + + + 异步获取循环访问 的枚举器。 + 循环访问 的枚举器。 + + + 表示用于执行创建、读取、更新和删除操作的类型化实体集。 + 实体的类型。 + + + 将对象添加到当前实体集中的对象上下文。 + 要添加的对象。 + + + 将标量值从提供的对象复制到 中具有相同键的对象中。 + 已更新的对象。 + 其属性更新将应用于原始对象的已分离对象。currentEntity 的实体键必须与 中某个项的 属性相匹配。 + + + 属性设置为与所提供对象的属性值相匹配。 + 已更新的对象。 + 其属性更新将应用于原始对象的已分离对象。originalEntity 的实体键必须与 中某个项的 属性相匹配。 + + + 将对象或对象图附加到当前实体集中的对象上下文。 + 要附加的对象。 + + + 创建指定类型的实例。 + 所请求类型 T 的实例,或与类型 T 对应的代理类型的实例。 + 要返回的对象的类型。 + + + 创建一个新的实体类型对象。 + 新的实体类型对象,或与实体类型对应的代理类型的实例。 + + + 标记对象以备删除。 + 表示要删除的实体的对象。该对象可以为任何状态( 除外)。 + + + 从对象上下文移除对象。 + 要分离的对象。仅移除实体;如果存在任何由相同 跟踪的相关对象,则不会自动分离这些对象。 + + + 获取用此 实例表示的实体集的元数据。 + 一个 对象。 + + + 表示实体、实体存根或关系 + + + 接受当前值作为原始值。 + + + 设置项的当前值,使其与所提供对象的属性值相匹配。 + 具有要应用于对象的更新值的已分离对象。currentEntity 还可以是对象的实体键。 + + + 设置项的原始值,使其与所提供对象的属性值相匹配。 + 具有要应用于对象的原始值的已分离对象。originalEntity 还可以是对象的实体键。 + + + 将该项的状态更改为指定的 值。 + 要为该项的 属性设置的 值。 + + + 获取与此 关联的对象或关系的当前属性值。 + 一个 ,它包含与此 关联的对象或关系的当前值。 + + + 将实体标记为已删除。 + + + 获取实体对象。 + 实体对象。 + + + 获取实体键。 + 实体键。 + + + 获取该对象或关系的 + 用于对象或关系的 + + + 返回自上次调用 以来已更改的对象属性的名称。 + 一个 集合,包含字符串形式的名称。 + + + 获取与此 关联的对象的原始值的可更新版本。 + 对象数据的可更新原始值。 + + + 使用 DetectChanges 确定具有给定名称的属性的当前值与原始值是否不同。请注意这可能不同于正在标记为“已修改”的属性,因为尚未更改的属性仍可能标记为“已修改”。 + 如果属性已更改,则为 true;否则为 false。 + 属性的名称。 + + + 获取一个值,该值指示 是否表示一个关系。 + 如果 表示一个关系,则为 true;否则为 false。 + + + 获取 + + + + + 获取与此的对象或关系关联的原始值的只读版本。 + 关系集项或实体的原始值的只读版本。 + + + 拒绝自上次加载、附加或保存属性以来对具有给定名称的属性所做的任何更改,或接受更改。存储属性的原始值,且属性将不再标记为“已修改”。 + 要更改的属性的名称。 + + + 获取项所表示的对象的 实例。 + + 对象。 + + + 将对象或关系的状态设置为 modify。 + 如果状态不为“已修改”或“未更改” + + + 将指定属性标记为已修改。 + 属性的名称。 + 如果状态不为“已修改”或“未更改” + + + 获取 的状态。 + + 的状态。 + + + 用于报告复杂属性已更改。现在将在 EntityMemberChanging 期间缓存的属性值添加到 OriginalValues + 已更改的顶级实体属性的名称 + 包含已更改属性的复杂对象 + complexObject 上更改的属性的名称 + + + 用于报告将要更改复杂属性。在调用此方法时,缓存指定属性的当前值。 + 要更改的顶级实体属性的名称 + 包含要更改的属性的复杂对象 + complexObject 上要更改的属性的名称 + + + 用于报告标量实体属性已更改。现在将在 EntityMemberChanging 期间缓存的属性值添加到 OriginalValues + 要更改的实体属性的名称 + + + 用于报告将要更改标量实体属性。在调用此方法时,缓存指定属性的当前值。 + 要更改的实体属性的名称 + + + 从 ObjectStateEntry 返回 EntityState + + + 维护实体类型实例和关系实例的对象状态和标识管理。 + + + 初始化 类的新实例。 + 提供映射和元数据信息的 。 + + + 将特定对象的 状态更改为指定的 entityState。 + 所提供实体的 + 必须更改状态的对象。 + 对象的新状态。 + 当 entity 为 null 时。 + 当对象未分离且在状态管理器没有任何项时,或当您尝试将状态从任何其他 更改为 时,或状态为无效的 值时。 + + + 更改两个实体对象之间的指定关系的状态,其中的关系状态根据两个相关对象和导航属性的名称来指定。 + 已更改的关系的 + 位于关系一端的对象实例或源实体的 。 + 位于关系另一端的对象实例或目标实体的 。 + 源上可返回指定目标的导航属性的名称。 + 请求的所指定关系的 。 + 当 source 或 target 为 null 时。 + 当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当状态为无效的 值时。 + + + 更改两个实体对象之间的指定关系的状态,其中的关系状态根据两个相关对象和关系属性来指定。 + 已更改的关系的 + 位于关系一端的对象实例或源实体的 。 + 位于关系另一端的对象实例或目标实体的 。 + 关系的名称。 + 关系的目标端的角色名称。 + 请求的所指定关系的 。 + 当 source 或 target 为 null 时。 + 当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当状态为无效的 值时。 + + + 更改两个实体对象之间的指定关系的状态,根据两个相关对象和用于定义导航属性的 LINQ 表达式来指定关系。 + 已更改的关系的 + 位于关系一端的对象实例或源实体的 。 + 位于关系另一端的对象实例或目标实体的 。 + 一个 LINQ 表示式,用于选择返回指定 target 的 source 的导航属性。 + 请求的所指定关系的 。 + 源对象的实体类型。 + 当 source、target 或 selector 为 null 时。 + selector 格式不正确或无法返回导航属性。 + 当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当状态为无效的 值时。 + + + 返回具有给定状态的对象或关系的 对象的集合。 + 具有给定 对象的集合。 + 用于筛选返回的 对象的 。 + 当状态为 时。 + + + 返回具有指定键的对象或关系项的 + 给定 的对应 + + 。 + 当 key 为 null 时。 + 在状态管理器中找不到指定的 key 时。 + + 中不存在具有指定 的实体。 + + + 返回指定对象的 + 给定 的对应 + 检索到的 所属的 。 + + 中不存在具有指定 的实体。 + + + 返回指定对象所使用的 + 所指定对象的 + 要为其返回 的对象。 + 实体不实现 IEntityWithRelationships 且不由此 ObjectStateManager 跟踪 + + + 获取与此状态管理器关联的 + 与此 关联的 + + + 在从状态管理器中添加或移除实体时发生。 + + + 尝试检索具有指定 的对象或关系的对应 + 一个布尔值,如果给定的 有对应的 ,则为 true;否则为 false。 + 给定的 。 + 此方法返回时,包含给定 。此参数传递时未经初始化。 + 为 key 提供了一个 null(在 Visual Basic 中为 Nothing)值。 + + + 尝试检索指定的 的对应 + 一个布尔值,如果给定的对象有对应的 ,则为 true;否则为 false。 + 检索到的 所属的 。 + 此方法返回时,包含给定 。此参数传递时未经初始化。 + + + 返回指定对象所使用的 + 如果为提供的实体返回了 实例,则为 true;否则为 false。 + 要为其返回 的对象。 + 此方法返回时将包含实体的 。 + + + 从数据库检索实体时,实体各属性的原始值。 + + + 一个 DataContractResolver,它知道如何将为持久未知的类创建的代理类型解析为基类型。它与 DataContractSerializer 一起使用。 + + + 初始化 类的新实例。 + + + 在反序列化过程中,将任何 xsi:type 信息映射到持久性未知对象的实际类型。 + 返回 xsi:type 映射到的类型。如果找不到与 xsi:type 匹配的已知类型,则返回 null。 + 要映射的 xsi:type 信息。 + xsi:type 的命名空间。 + 已声明的类型。 + + 的一个实例。 + + + 在序列化过程中,将实际类型映射到 xsi:type 信息。 + 如果类型已解析,则为 true;否则为 false。 + 持久性未知对象的实际类型。 + 已声明的类型。 + + 的一个实例。 + 此方法返回时,包含 xsi:type 声明的列表。 + 此方法返回时,包含使用的命名空间的列表。 + + + 定义在从数据库刷新内存中数据时处理已修改属性的不同方法。 + + + 对于未修改的客户端对象,行为与 StoreWins 相同。对于已修改的客户端对象,使用存储值刷新原始值,保留客户端对象上的所有值。下次更新时,所有客户端更改单元将被视为“已修改”,需要更新。 + + + 丢弃客户端上的所有更改并使用存储值刷新值。更新客户端原始值以匹配存储值。 + + + 用于修改 ObjectContext.SaveChanges() 行为的标志 + + + 在保存更改后,调用 AcceptAllChangesAfterSave 方法,该方法会在 ObjectStateManager 中重置更改跟踪。 + + + 在保存更改之前,调用 DetectChanges 方法,使用 ObjectStateManager 中的数据同步附加到对象上下文的对象的属性值。 + + + 保存更改,不调用 DetectChanges 或 AcceptAllChangesAfterSave 方法。 + + + 这是表示在 ADO.NET 中成为某一实体所需的最小接口的接口。 + + + 初始化 类的新实例。 + + + 通知更改跟踪器,某个复杂对象的属性已更改。 + 已更改的属性的名称。 + property 为 null。 + + + 通知更改跟踪器,对复杂对象的属性更改挂起。 + 更改的属性的名称。 + property 为 null。 + + + 针对复杂属性的特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 初始化 类的新实例。 + + + 复杂类型的特性 + + + 初始化 类的新实例。 + + + 标识 Edm 基类的特性 + + + 初始化 类的新实例。 + + + 指示枚举类型的特性。 + + + 初始化 类的新实例。 + + + 指示给定的方法是 EDM 函数的代理。 + + + 创建新的 DbFunctionAttribute 实例。 + 特性化方法所表示的 EDM 函数的命名空间名称。 + 特性化方法所表示的 EDM 函数的函数名称。 + + + 映射到存储元素的属性的基特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 定义两个实体类型之间的基于概念性模型中关联的关系。 + + + 创建 类的实例。 + 此实体所参与的关联的命名空间名称。 + 此实体所参与的关系的名称。 + 关联一端的类型的角色名称。 + + 的值,指示在关联一端的重数,例如一重或多重。 + 关联一端的实体类型。 + 关联另一端的类型的角色名称。 + + 的值,指示在关联另一端的重数,例如一重或多重。 + 关联另一端的实体类型。 + + + 初始化 类的新实例。 + 此实体所参与的关联的命名空间名称。 + 此实体所参与的关系的名称。 + 关联一端的类型的角色名称。 + + 的值,指示在关联一端的重数,例如一重或多重。 + 关联一端的实体类型。 + 关联另一端的类型的角色名称。 + + 的值,指示在关联另一端的重数,例如一重或多重。 + 关联另一端的实体类型。 + 一个指示关系是否基于外键值的值。 + + + 获取一个布尔值,该值指示关系是否基于外键值。 + 如果关系基于外键值,则为 true;否则为 false。 + + + 关系的名称。 + 一个 ,表示此 定义的关系的名称。 + + + 关系的命名空间。 + 表示关系命名空间的 + + + 关系一端的重数。 + 指示重数的 值。 + + + 关系一端的角色名称。 + 表示角色名称的 + + + 关系一端的实体类型。 + 表示关联此端对象类型的 + + + 关系另一端的重数。 + 指示重数的 值。 + + + 关系另一端的角色名称。 + 表示角色名称的 + + + 关系另一端的实体类型。 + 表示关联另一端对象类型的 + + + 标识为 RelationshipSet 定义的端的特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 初始化 类的新实例。 + 关系属性的命名空间名称。 + 关系的名称。关系名称不由命名空间限定。 + 关系另一端的角色名称。 + + + 获取非限定的关系名称。 + 关系名。 + + + 导航属性的命名空间名称。 + 表示命名空间名称的 + + + 获取关系另一端的角色名称。 + 目标角色名称由在概念性模型中定义此关系的关联中的另一个 End 元素的 Role 属性指定。有关更多信息,请参见“关联 (EDM)”。 + + + IEntity 中标量属性的特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 初始化 类的新实例。 + + + 获取或设置一个值,该值指示属性是否为实体键的一部分。 + 一个指示属性是否为实体键的一部分的值。 + + + 获取或设置一个值,该值指示属性是否可以具有 null 值。 + 一个值,该值指示属性是否可以具有 null 值。 + + + 静态类型的特性 + + + 初始化 类的新实例。 + + + 使用对程序集引用的每个模型都唯一的值初始化 类的新实例。 + 一个字符串,表示程序集中模型的唯一 GUID 值。 + + + 程式化类型的基特性 + + + 概念性架构中类型的名称,该类型映射到此属性所应用于的类。 + 表示名称的 + + + 概念性架构中映射到此类型的实体对象类型或复杂类型的命名空间名称。 + 表示命名空间名称的 + + + 对某一特定 EDM 构造进行建模的实体(可以是某一特定类型的所有实体或者是参与某一特定关系的实体)的集合。 + 此集合中实体的类型。 + + + 初始化 类的新实例。 + + + 将对象添加到集合。 + 添加到集合的对象。entity 必须实现 。 + entity 为 null。 + + + 定义对象上下文中对象和相关对象集合之间的关系。 + 对象上下文中与源对象相关的对象集合。 + entities 集合为 null。 + 源对象或 entities 集合中的对象为 null 或者不处于 状态。-或-关系不能基于 EDM 元数据定义。这会在概念性架构中的关联不支持两种类型间的关系时发生。 + + + 定义对象上下文中两个附加对象之间的关系。 + 附加的对象。 + 当 entity 为 null 时。 + 当 entity 无法与源对象关联时。这会在概念性架构中的关联不支持两种类型间的关系时发生。-或-当对象为 null 或不处于 状态时。 + + + 从集合中移除所有实体。 + + + 确定特定对象是否存在于集合中。 + 如果在 中找到该对象,则为 true;否则为 false。 + 要在 中定位的对象。 + + + 将集合中的所有内容复制到数组,从目标数组的指定索引处开始。 + 要复制到的数组。 + 数组中从零开始的索引,在此处开始复制。 + + + 获取集合中包含的对象数。 + + 中包含的元素数。 + + + 返回一个对象查询,执行该查询时返回的对象集合与当前集合包含的对象相同。 + 表示实体集合的 + 当对象处于 状态时,或当对象处于 状态且 不为 时。 + + + 返回一个枚举器,用于循环访问集合中的对象。 + 一个 ,循环访问 缓存的值集。 + + + 获取一个值,指示 是否是只读的。 + 始终返回 false。 + + + 使用指定的合并选项将相关对象加载到集合中。 + 指定此集合中的对象应如何与从以前针对相同 的查询中返回的对象合并。 + + + 使用默认合并选项异步将一个或多个相关实体加载到相关端中。 + 表示异步操作的任务。 + 合并选项。 + 等待任务完成期间要观察的 CancellationToken。 + + + 在内部使用,用于反序列化实体对象。 + 流上下文。 + + + 在内部使用,用于序列化实体对象。 + 流上下文。 + + + 从集合移除对象,并标记要删除的关系。 + 如果成功移除该项,则为 true;否则为 false。 + 要从集合中移除的对象。 + 实体对象为 null。 + 实体对象未附加到相同的对象上下文,或者,实体对象没有有效的关系管理器。 + + + 返回一个枚举器,用于循环访问 缓存的值集。 + 一个 ,循环访问 缓存的值集。 + + + IListSource.ContainsListCollection 实现。始终返回 false。这意味着我们返回的 IList 是包含我们的实际数据的 IList,而不是集合的列表。 + + + 返回 形式的集合用于数据绑定。 + 实体对象的 + + + 这是所有描述的 EntityObject 类的基类。 + + + 初始化 类的新实例。 + + + 获取或设置此对象的键。 + 此对象的 + + + 获取对象的实体状态。 + 此对象的 + + + 通知更改跟踪器,属性已更改。 + 已更改的属性的名称。 + property 为 null。 + + + 通知更改跟踪器,属性更改挂起。 + 更改的属性的名称。 + property 为 null。 + + + 由 ObjectStateManager 用来将此 EntityObject 附加到缓存或者分离这两者。 + 对包含此实体的 ObjectStateEntry 的引用 + + + 返回惰式创建的关系导航属性对象、集合和 ref 的容器。 + + + 对多重性为 1 的关系端进行建模。 + + + 返回相关对象的键。 + 一个 ,表示相关对象的键。 + + + 对多重性为 1 的关系端进行建模。 + 要引用的实体类型。 + + + 创建 的新实例。 + + + 在对象上下文中创建两个对象之间的多对一或一对一关系。 + 附加的对象。 + 当 entity 为 null 时。 + 当 entity 无法与当前相关端关联时。这会在概念性架构中的关联不支持两种类型间的关系时发生。 + + + 创建一个返回相关对象的等效对象查询。 + 一个 ,其返回相关对象。 + 当对象处于 状态时,或当对象处于 状态且 不为 时。 + + + 使用指定的合并选项为此 加载相关对象。 + 指定当 中已存在该对象时,应如何返回它。 + + 的源为 null;或一个查询返回多个相关端;或一个查询返回零个相关端,但应返回一个相关端。 + + + 使用默认合并选项异步将一个或多个相关实体加载到相关端中。 + 已加载到相关端的相关实体。 + 合并选项。 + 等待任务完成期间要观察的 CancellationToken。 + + + 此方法在内部使用,用于序列化相关实体对象。 + 序列化的流。 + + + 此方法在内部使用,用于序列化相关实体对象。 + 序列化的流。 + + + 获取或设置此 返回的相关对象。 + 返回的对象。 + + + 此接口由更改跟踪器实现并且由数据类用来报告更改 + + + 通知更改跟踪器,某个复杂类型的属性已更改。 + 已更改的实体类型的复杂属性的名称。 + 包含已更改属性的复杂类型。 + 复杂类型上更改的属性的名称。 + + + 通知更改跟踪器,复杂属性更改挂起。 + 要更改的顶级实体属性的名称。 + 包含要更改的属性的复杂类型。 + 复杂类型上要更改的属性的名称。 + + + 通知更改跟踪器,某个实体类型的属性已更改。 + 已更改的属性的名称。 + + + 通知更改跟踪器即将更改某个实体类型的属性。 + 要更改的属性的名称。 + + + 获取所跟踪对象的当前状态。 + 一个 ,它是所跟踪对象的状态。有关更多信息,请参见“标识解析、状态管理和更改跟踪”和“在 POCO 实体中跟踪更改”。 + + + 数据类必须实现以便由更改跟踪器进行管理的最小接口。 + + + 获取或设置用于报告更改的 + 用于报告更改的 。 + + + 定义包含键的实体的接口。 + + + 为实现此接口的实体类型的实例获取或设置 + 实现此接口的实体类型实例的 + + + 在公开关系时数据类必须实现的接口 + + + 返回关系管理器,该管理器管理实体类型的实例的关系。 + 此实体的 + + + 表示关系的一端。 + + + 将对象添加到相关端。 + 添加到集合的对象。entity 必须实现 。 + + + 将对象添加到相关端。 + 添加到集合的对象。 + + + 定义两个附加对象之间的关系。 + 附加的对象。entity 必须实现 。 + + + 定义两个附加对象之间的关系。 + 附加的对象。 + + + 返回一个 ,它表示属于相关端的对象。 + 一个 ,它表示属于相关端的对象。 + + + 返回一个 ,它循环访问相关对象的集合。 + 一个 ,它循环访问相关对象的集合。 + + + 获取或设置一个值,该值指示是否已从数据库加载实体(对于 )或集合中的所有实体(对于 )。 + 如果加载所有相关实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 使用默认合并选项将一个或多个相关对象加载到此相关端中。 + + + 使用指定合并选项将一个或多个相关对象加载到相关端中。 + 将对象合并到现有 时使用的 。 + + + 使用指定合并选项将一个或多个相关对象异步加载到相关端中。 + 表示异步操作的任务。 + 将对象合并到现有 时使用的 。 + 等待任务完成期间要观察的 。 + + + 使用默认合并选项将一个或多个相关对象异步加载到此相关端中。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取此相关端所参与的关系的名称。 + 所参与的关系的名称。关系名称不由命名空间限定。 + + + 返回对相关端的元数据的引用。 + 包含关系一端的元数据的 对象。 + + + 从相关端的对象的集合中移除一个对象。 + 如果 entity 已成功删除,则为 true;如果 entity 不是 的一部分,则为 false。 + 要从集合中移除的对象。entity 必须实现 。 + + + 从相关端的对象的集合中移除一个对象。 + 如果 entity 已成功删除,则为 true;如果 entity 不是 的一部分,则为 false。 + 要从集合中移除的对象。 + + + 获取关系的源端的角色名称。 + 关系的源端的角色名称。 + + + 获取关系的目标端的角色名称。 + 关系的目标端的角色名称。 + + + EntityCollection 和 EntityReference 的基类 + + + 对相关端进行更改时发生。 + + + 返回一个 ,它循环访问相关对象的集合。 + 一个 ,它循环访问相关对象的集合。 + + + 获取一个值,该值指示是否已加载所有相关对象。 + 如果相关端包含数据库中的所有相关对象,则为 true;否则为 false。 + + + 使用默认合并选项将一个或多个相关对象加载到相关端中。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 使用指定合并选项从相关端加载一个或多个对象。 + 将对象合并到现有 时使用的 。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 使用指定合并选项从相关端异步加载一个或多个对象。 + 表示异步操作的任务。 + 将对象合并到现有 时使用的 。 + 等待任务完成期间要观察的 。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 使用默认合并选项将一个或多个相关对象异步加载到相关端中。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 在内部使用,用于反序列化实体对象及 实例。 + 序列化的流。 + + + 获取此相关端所参与的关系的名称。 + 所参与的关系的名称。关系名称不由命名空间限定。 + + + 获取对相关端的元数据的引用。 + 包含关系一端的元数据的 对象。 + + + 获取关系的源端的角色名称。 + 表示角色名称的 + + + 将实体添加到相关端。此方法与 Add(object) 的工作方式完全相同。保留此方法是为了与以前版本的 IRelatedEnd 向后兼容。 + 要添加到相关端的实体实例 + + + 将实体添加到相关端。如果所有者附加到某一缓存,则所有连接端都添加到该对象缓存,并且其对应关系也添加到 ObjectStateManager。关系的 RelatedEnd 也是固定的。 + 要添加到相关端的实体实例 + + + 将实体附加到相关端。此方法与 Attach(object) 的工作方式完全相同。保留此方法是为了与以前版本的 IRelatedEnd 向后兼容。 + 要附加到相关端的实体 + 为 null 时引发。 + 在无法通过当前关系端与实体相关时引发。 + + + 将实体附加到相关端。如果相关端已经填充或部分填充,则此操作将合并现有实体和给定实体。不假定给定实体为相关实体的完整集。所有者和所有传入的实体必须处于 Unchanged 或 Modified 状态。仅当状态管理器已在跟踪关系实例时,才允许已删除的元素。 + 要附加到相关端的实体 + 为 null 时引发。 + 在无法通过当前关系端与实体相关时引发。 + + + 返回一个 ,它表示属于相关端的对象。 + 一个 ,它表示属于相关端的对象。 + + + 从相关端删除实体。此方法与 Remove(object) 的工作方式完全相同。保留此方法是为了与以前版本的 IRelatedEnd 向后兼容。 + 如果实体已成功删除,则返回 true;如果实体不是 RelatedEnd 的一部分,则返回 false。 + 要从相关端中删除的实体实例 + + + 从相关端删除实体。如果所有者附加到缓存,则将关系标记为待删除;如果关系是复合关系,也将实体标记为待删除。 + 如果实体已成功删除,则返回 true;如果实体不是 RelatedEnd 的一部分,则返回 false。 + 要从相关端中删除的实体实例 + + + 获取关系的目标端的角色名称。 + 表示角色名称的 + + + 标识关系的种类 + + + 该关系为关联 + + + 惰式创建的关系导航属性对象(集合和 ref)的容器。 + + + 创建一个新的 对象。 + 请求的 + 对调用此方法的实体的引用。 + + + 返回关系管理器管理的所有相关端的枚举。 + 实现 的对象的 。如果尚未填充关系,则返回空枚举。 + + + 获取具有指定关系名称和目标角色名称的相关对象的 + 相关对象的 + 要浏览的关系的名称。关系名称不由命名空间限定。 + 要浏览的目标角色的名称。指示在关系中浏览的方向。 + 返回的 的类型。 + 指定角色返回 而不是 + + + 为关系中的指定目标角色返回正确类型的 + 已检索的表示 + 在其中定义 targetRoleName 的关系的名称。关系名称不由命名空间限定。 + 用于检索 relationshipName 的另一端的目标角色. + relationshipName 或 targetRoleName 为 null。 + 源类型不匹配所有者类型。 + targetRoleName 无效或无法在元数据中找到关系类型。 + + + 通过使用关系名称和目标角色名称的指定组合,获取相关对象的 + 相关对象的 + 要浏览的关系的名称。关系名称不由命名空间限定。 + 要浏览的目标角色的名称。指示在关系中浏览的方向。 + 返回的 的类型。 + 指定角色返回 而不是 + + + 采用通过默认构造函数创建的现有 EntityCollection,并且使用提供的关系和目标角色名称初始化它。此方法设计为仅在反序列化期间使用;如果已初始化提供的 EntityCollection 或者关系管理器已附加到某一 ObjectContext,此方法将引发异常。 + 关系名。 + 目标角色名。 + 现有 EntityCollection。 + targetRoleName 表示的实体的类型 + + + 采用通过默认构造函数创建的现有 EntityReference,并且使用提供的关系和目标角色名称初始化它。此方法设计为仅在反序列化期间使用;并且在以下情况下此方法将引发异常:已初始化提供的 EntityReference、关系管理器已包含具有此名称和目标角色的关系或者关系管理器已附加到某一 ObjectContext。 + 关系名。 + 相关端的角色名称。 + 要初始化的 。 + 正在初始化的 的类型。 + 当提供的 已初始化时。-或-当关系管理器已附加到某一 时,或当关系管理器已包含具有此名称和目标角色的关系时。 + + + 在内部使用,用于反序列化实体对象及 实例。 + 序列化的流。 + + + 由对象服务调用,用来准备 以序列化关系进行二进制序列化。 + 说明给定序列化流的源和目标,并提供另一个调用方定义的上下文。 + + + 此类包含某一日期对象所需的公共方法。 + + + 初始化 类的新实例。 + + + 确定指定的字节数组是否包含完全相同的值。 + 如果两个数组具有相同长度且包含相同字节值,或两个数组都为 null,则为 true;否则为 false。 + 要比较的第一个字节数组值。 + 要比较的第二个字节数组。 + + + 返回数据源支持的最小日期时间值。 + 一个 值,表示数据源支持的最小日期时间值。 + + + 用于更改跟踪的公共常量名称。通过提供此定义可允许用户使用此常量,而不是对字符串进行硬编码。这有助于确保属性名称正确,并且允许在我们在查找此特定字符串的位置更快地进行比较。用户仍可以直接使用区分大小写的字符串,而不是常量,只是在比较时速度稍慢。在名称周围包括短划线 (-) 字符将确保这将不会与某一真实的数据属性冲突,因为 -EntityKey- 不是有效的标识符名称 + + + 返回当前字节值的副本。 + 当前 值的副本。 + 当前字节数组值。 + + + 返回指定属性的复杂类型。 + 属性的复杂类型对象。 + 从复杂对象继承的复杂对象。 + 复杂属性的名称,该复杂属性为复杂对象。 + 指示类型是否允许 Null 值。 + 指示类型是否已初始化。 + 正在请求的复杂对象的类型。 + + + 引发 事件。 + 已更改的属性的名称。 + + + 引发 事件。 + 更改的属性的名称。 + + + 属性已更改的通知。 + + + 属性将要更改的通知。 + + + 引发用于报告属性已更改的事件。 + 已更改的属性的名称。 + + + 引发用于报告属性更改挂起的事件。 + 更改的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + 布尔值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + 布尔值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 设置的 值。 + 正在验证的值。 + + + 确保正在为属性设置的 值有效。 + 一个已设置的 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + 正在设置的值。 + 指示属性是否可为 null。 + + + 确保正在为属性设置的 值有效。 + 正在验证的 值。 + 传入属性 setter 中的值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 对于不可为 null 的值如果值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 要检查的 值。 + 指示此属性是否允许为 null 的标志。 + 对于不可以为 null 的属性,该值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 待检查的 值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 对于不可以为 null 的属性,该值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 待检查的 值。 + 指示此属性是否允许为 null 的标志。 + 对于不可以为 null 的属性,该值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 要检查的 值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 对于不可以为 null 的属性,该值为 null。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保要为属性设置的 UInt16 值有效。 + 正在设置的可以为 null 的 UInt16 值。 + 可以为 null 的 UInt16 值。 + + + 确保要为属性设置的 UInt16 值有效。 + 正在设置的可以为 null 的 UInt16 值。 + 可以为 null 的 UInt16 值。 + 要验证的属性的名称。 + + + 确保要为属性设置的 UInt32 值有效。 + 正在设置的可以为 null 的 UInt32 值。 + 可以为 null 的 UInt32 值。 + + + 确保要为属性设置的 UInt32 值有效。 + 正在设置的可以为 null 的 UInt32 值。 + 可以为 null 的 UInt32 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 UInt64 值。 + 可以为 null 的 UInt64 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 UInt64 值。 + 可以为 null 的 UInt64 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保要为属性设置的单精度值有效。 + 正在设置的 值。 + + 值。 + + + 确保要为属性设置的单精度值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 验证的 值。 + 待检查的字符串值。 + 指示此属性是否允许为 null 的标志。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 经过验证的属性。 + 待检查的字符串值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 该字符串值对于不可以为 null 的字符串为 null。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 设置指定属性的复杂对象。 + 从复杂对象派生的复杂类型。 + 属性的原始复杂对象(如果有)。 + 正在设置的复杂对象。 + 正在设置为复杂对象的复杂属性。 + 被替换的对象的类型。 + + + 检验复杂对象是否不为 null。 + 正在验证的复杂对象。 + 正在检验的复杂对象。 + 与 complexObject 关联的父对象上的复杂属性。 + 正在验证的复杂对象的类型。 + + + 在提交 期间出错时引发的异常。 + + + 使用默认值初始化 的新实例。 + + + 使用序列化数据初始化 类的新实例。 + 序列化或反序列化对象时所需的数据。 + 指定序列化流的源和目标的说明。 + + + 使用错误消息初始化 的新实例。 + 异常消息。 + + + 使用错误消息和内部异常初始化 的新实例。 + 异常消息。 + 内部异常。 + + + 表示事务处理程序,该程序允许在事务提交期间通过在数据库中存储事务跟踪信息,来从连接故障中正常恢复。需要使用 注册它。 + + + 使用默认 初始化 类的新实例。 + + + 初始化 类的新实例。 + 事务上下文工厂。 + + + 将新事务的跟踪信息存储到同一事务中的数据库。 + 开始事务的连接。 + 与调用关联的上下文信息。 + + + 生成数据库初始化脚本。 + 数据库初始化脚本。 + + + 删除所有事务历史记录。 + + + 异步删除所有事务历史记录。 + 表示异步操作的任务。 + + + 异步删除所有事务历史记录。 + 表示异步操作的任务。 + 取消标记。 + + + 如果引发了异常,请检查此事务的数据库,如果找不到,则会再次引发异常。否则将提交标记为成功并为将删除的事务信息进行排队。 + 已提交的事务。 + 与调用关联的上下文信息。 + + + 释放此事务对象占用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 停止跟踪已处理的事务。 + 已释放的事务。 + 与调用关联的上下文信息。 + + + 获取与 关联的 (如果存在);否则返回 null。 + 关联的 + 上下文。 + + + 获取与 关联的 (如果存在);否则返回 null。 + 关联的 + 上下文。 + + + 初始化实例的属性。 + 上下文。 + + + 初始化实例的属性。 + 上下文。 + 连接。 + + + 将指定事务添加到可从数据库中删除的事务列表 + 要从数据库中删除的事务。 + + + 删除标记为删除的事务。 + + + 如果标记为删除的事务的数目超出 ,则删除这些事务。 + 如果即使其数量未超出 仍然删除所有旧事务,则为 true;否则为 false。 + 如果使用关联执行来执行操作,则为 true;否则为 false。 + + + 异步删除标记为删除的事务。 + 表示异步操作的任务。 + + + 如果标记为删除的事务的数目超出 ,则删除这些事务。 + 表示异步操作的任务。 + 如果即使其数量未超出 仍然删除所有旧事务,则为 true;否则为 false。 + 如果使用关联执行来执行操作,则为 true;否则为 false。 + 取消标记。 + + + 异步删除标记为删除的事务。 + 表示异步操作的任务。 + 取消标记。 + + + 在清除事务日志之前获取要在上下文中执行的事务数。默认值为 20。 + 在清除事务日志之前要在上下文中执行的事务数。 + + + 停止跟踪回滚的事务。 + 已回滚的事务。 + 与调用关联的上下文信息。 + + + 获取事务上下文。 + 事务上下文。 + + + 的 ChangeTracker 方法返回以提供对与实体的更改跟踪相关的上下文的功能的访问。 + + + 检测对 POCO 实体的属性和关系所做的更改。请注意,某些类型的实体(如更改跟踪代理和派生自 的实体)会自动报告更改,并且这些类型的实体通常不需要调用 DetectChanges。另请注意,通常, 的许多方法及其相关类会自动调用 DetectChanges,这样一来,便很少需要显式调用此方法。但通常出于性能原因,可能需要使用 中的 AutoDetectChangesEnabled 标志来关闭对 DetectChanges 的自动调用。 + + + 获取此上下文跟踪的所有实体的 对象。 + 项。 + + + 获取此上下文跟踪的给定类型的所有实体的 对象。 + 项。 + 实体的类型。 + + + 指定 是否与指定的对象相同。 + 如果 与指定的对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与 关联的哈希代码。 + 关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 检查 是否正在跟踪任何新建、已删除或有更改的实体或关系,这些实体或关系将在调用 时,发送到数据库。 + 如果基础 有更改,则为 true;否则为 false。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 表示非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 集合元素的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 获取此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载此集合的所有实体。 + 如果已加载所有相关实体或 IsLoaded 已显示设置为 true,则为 true;否则为 false。 + + + 从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回将用于从数据库加载此集合的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作,例如,计算数据库中的集合中的实体数,而不实际加载这些实体。 + 针对集合的查询。 + + + 此类的实例从 的 Collection 方法返回,并且允许对实体的集合导航属性执行各种操作(如加载)。 + 此属性所属的实体的类型。 + 实体集合中的元素的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载此集合的所有实体。 + 如果加载所有相关实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回由此对象表示的导航属性的非泛型 类的新实例。 + 非泛型版本。 + 表示导航属性的对象。 + + + 返回将用于从数据库加载此集合的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作,例如,计算数据库中的集合中的实体数,而不实际加载这些实体。 + 针对集合的查询。 + + + 实体数据模型 (EDM) 模型的不可变表示形式,该模型可用于创建 ,也可将该模型传递给 的构造函数。为了提高性能,应缓存和重用此类型的实例以构造上下文。 + + + 创建 ObjectContext 的实例或派生自 ObjectContext 的类的实例。请注意,可使用适当的 DbContext 构造函数来改为创建 DbContext 的实例。如果使用派生的 ObjectContext,则它必须具有带单个 EntityConnection 参数的公共构造函数。传递的连接由创建的 ObjectContext 使用,但不属于上下文。在释放上下文后,调用方必须释放连接。 + 上下文。 + 供上下文使用的数据库的现有连接。 + 要创建的上下文的类型。 + + + 非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 复杂属性的类型。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 此类的实例从 的 ComplexProperty 方法返回,并允许访问复杂属性的状态。 + 此属性所属的实体的类型。 + 属性的类型。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 表示嵌套属性的表达式。 + 嵌套属性的类型。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + 嵌套属性的类型。 + + + 返回由此对象表示的属性的非泛型 类的新实例。 + 非泛型版本。 + 表示属性的对象。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 表示嵌套属性的表达式。 + 嵌套属性的类型。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + 嵌套属性的类型。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 表示有关数据库连接的信息。 + + + 初始化表示应用程序配置文件中指定的连接的 类的新实例。 + 应用程序配置中的连接字符串的名称。 + + + 初始化基于连接字符串的 类的新实例。 + 用于连接的连接字符串。 + 用于连接的提供程序的名称。将“System.Data.SqlClient”用于 SQL Server。 + + + 确定当前 类型是否等于提供的对象类型。 + 如果当前 类型等于指定的对象类型,则为 true;否则为 false。 + 要与当前 对象进行比较的对象。 + + + 生成表示当前连接的值。 + 表示当前连接的值。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 对象转换为字符串。 + 当前驱动器。 + + + 描述与 关联的数据库连接字符串的来源。 + + + 该连接字符串是从外部配置中进行读取的。 + + + 该连接字符串是按约定创建的。 + + + 该连接字符串是由提供给 DbContextInfo 的连接信息重写的。 + + + 该连接字符串是在运行时显式指定的。 + + + 的 Configuration 方法返回以提供对上下文的配置选项的访问。 + + + 获取或设置一个值,该值指示是否通过 和相关类的方法自动调用 方法。默认值为 true。 + 如果应自动调用,则为 true;否则为 false。 + + + 获取或设置某值,该值确定是否应在事务中始终执行 SQL 函数和命令。 + 默认事务行为。 + + + 指定配置是否与指定的对象相同。 + 如果配置与指定的对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与配置关联的哈希代码。 + 与配置关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 获取或设置一个值,该值指示是否启用针对公开为导航属性的关系的延迟加载。延迟加载在默认情况下处于启用状态。 + 如果启用延迟加载,则为 true;否则为 false。 + + + 获取或设置一个值,该值指示框架在创建实体类型的实例时是否会创建动态生成的代理类的实例。请注意,即使使用此标记启用了代理创建,也只会为满足代理设置要求的实体类型创建代理实例。默认情况下启用代理创建。 + 如果启用了代理创建,则为 true;否则为 false。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 获取或设置一个值,该值指示当比较两个操作数,而它们都可能为 null 时,是否展示数据库 null 语义。默认值为 false。例如:如果 UseDatabaseNullSemantics 为 true,则 (operand1 == operand2) 将转换为 (operand1 = operand2);如果 UseDatabaseNullSemantics 为 false,则将转换为 (((operand1 = operand2) AND (NOT (operand1 IS NULL OR operand2 IS NULL))) OR ((operand1 IS NULL) AND (operand2 IS NULL)))。 + 如果启用数据库 null 比较行为,则为 true;否则为 false。 + + + 获取或设置一个值,该值指示在调用 时,是否应自动验证所跟踪的实体。默认值为 true。 + + + 提供有关给定 类型的运行时信息。 + + + 使用指定上下文类型初始化 类的新实例。 + 具体 类型。 + + + 使用指定上下文类型和配置文件初始化 类的新实例。 + 具体 类型。 + 表示配置文件的对象。 + + + 使用指定连接信息、上下文类型和配置文件初始化 类的新实例。 + 派生自 的类型。 + 表示配置文件的对象。 + 要使用的数据库的连接信息。 + + + 使用指定上下文类型、配置文件和提供程序信息初始化 类的新实例。 + 派生自 的类型。 + 表示配置文件的对象。 + 指定要面向的基础 ADO.NET 提供程序的 。 + + + 通过使用指定上下文类型和连接字符串的设置来初始化 类。 + 派生自 的类型。 + 连接字符串的集合。 + + + 使用指定上下文类型和连接信息初始化 类的新实例。 + 派生自 的类型。 + 要使用的数据库的连接信息。 + + + 使用指定上下文类型和提供程序信息初始化 类的新实例。 + 派生自 的类型。 + 指定要面向的基础 ADO.NET 提供程序的 。 + + + 获取基础 类型使用的连接的 ADO.NET 提供程序名称。 + 基础 类型使用的连接的 ADO.NET 提供程序名称。 + + + 获取基础 类型使用的连接字符串。 + 基础 类型使用的连接字符串。 + + + 获取基础 类型使用的连接字符串名称。 + 基础 类型使用的连接字符串名称。 + + + 获取基础 类型使用的连接字符串的来源。 + 基础 类型使用的连接字符串的来源。 + + + 获取具体 类型。 + 具体 类型。 + + + 创建 对象的实例。 + 已创建的实例。 + + + 获取是否可创建基础 类型。 + 如果基础 类型可创建,则为 true;否则为 false。 + + + 获取或设置在 OnModelCreating 已在上下文中运行后将对 DbModelBuilder 执行的操作。 + 在 OnModelCreating 已在上下文中运行后将对 DbModelBuilder 执行的操作。 + + + 非泛型版本的 类。 + + + 返回由此对象表示的跟踪实体的给定泛型类型的泛型 类的新实例。请注意跟踪实体的类型必须与泛型类型兼容,否则将引发异常。 + 泛型版本。 + 实体的类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 复杂属性的名称。 + + + 获取由此对象表示的跟踪实体的当前属性值。 + 当前值。 + + + 获取实体。 + 实体。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 在数据库中查询跟踪实体的值的副本,因为当前它们位于数据库中。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + 等待任务完成期间要观察的 。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码,适合在哈希算法和类似哈希表的数据结构中使用。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此 实例并返回验证结果。 + 实体验证结果。如果重写 方法,则可能为 Null。 + + + 获取表示实体成员的对象。返回的对象的运行时类型将随要求的成员类型的不同而不同。当前支持的成员类型及其返回类型为:引用导航属性:.集合导航属性:.基元/标量属性:.复杂属性: + 表示成员的对象。 + 成员名。 + + + 获取由此对象表示的跟踪实体的原始属性值。原始值通常是实体的属性值,就像上次从数据库查询这些值一样。 + 原始值。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 属性的名称。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取或设置实体的状态。 + 状态。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 此类的实例提供对有关由 跟踪的实体的信息和控制的访问权。使用上下文的 Entity 或 Entities 方法来获取此类型的对象。 + 实体的类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 表示导航属性的表达式。 + 集合中的元素类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + 集合中的元素类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 表示复杂属性的表达式。 + 复杂属性的类型。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 复杂属性的名称。 + 复杂属性的类型。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 复杂属性的名称。 + + + 获取由此对象表示的跟踪实体的当前属性值。 + 当前值。 + + + 获取实体。 + 实体。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 在数据库中查询跟踪实体的值的副本,因为当前它们位于数据库中。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + 等待任务完成期间要观察的 。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码,适合在哈希算法和类似哈希表的数据结构中使用。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此 实例并返回验证结果。 + 实体验证结果。如果重写 方法,则可能为 Null。 + + + 获取表示实体成员的对象。返回的对象的运行时类型将随要求的成员类型的不同而不同。当前支持的成员类型及其返回类型为:引用导航属性:.集合导航属性:.基元/标量属性:.复杂属性: + 表示成员的对象。 + 成员名。 + 成员的类型。 + + + 获取表示实体成员的对象。返回的对象的运行时类型将随要求的成员类型的不同而不同。当前支持的成员类型及其返回类型为:引用导航属性:.集合导航属性:.基元/标量属性:.复杂属性: + 表示成员的对象。 + 成员名。 + + + 返回此对象所表示跟踪实体的非泛型 类的新实例。 + 非泛型版本。 + 表示跟踪实体的对象。 + + + 获取由此对象表示的跟踪实体的原始属性值。原始值通常是实体的属性值,就像上次从数据库查询这些值一样。 + 原始值。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 表示属性的表达式。 + 属性的类型。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 属性的名称。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 属性的名称。 + 属性的类型。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 表示导航属性的表达式。 + 属性的类型。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + 属性的类型。 + + + 从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取或设置实体的状态。 + 状态。 + + + 返回数据库实体值的字符串表示形式。 + 数据库实体值的字符串表示形式。 + + + 为在两次重试之间使用以指数形式增长的延迟时间的不可靠操作和瞬时条件提供重试机制的基实现。 + + + 初始化 类的新实例。 + + + 使用指定的重试次数限制值和两次重试之间的延迟时间初始化 类的新实例。 + 最大重试次数。 + 两次重试之间的最大延迟时间(毫秒)。 + + + 在指定操作满足当前重试策略时重复执行此操作。 + 一个表示不返回任何结果的可执行操作的委托。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 在指定操作满足当前重试策略时重复执行此操作。 + 操作的结果。 + 一个表示返回 类型的结果的可执行操作的委托。 + 从可执行操作预期获得的结果类型。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 在指定异步操作满足当前重试策略时重复执行此操作。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回 类型的已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + 返回的 的结果类型。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 在指定异步操作满足当前重试策略时重复执行此操作。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 确定是否应重试操作以及在下次重试前的延迟时间。 + 如果应重试操作,则返回一个延迟值,它指示在下一次执行尝试前要等待多长时间;否则返回 null。 + 在最后一次执行尝试期间引发的异常。 + + + 获取一个值,该值指示此 在失败后是否可能重试执行。 + 如果 在失败后可能重试执行,则为 true;否则为 false。 + + + 确定指定的异常是否表示可以通过重试解决的瞬态失败。 + 如果指定异常视为瞬态的,则为 true;否则为 false。 + 要验证的异常对象。 + + + 只要它是 ,就以递归方式从 获取 InnerException,并将其传递给 + + 的结果。 + 要取消包装的异常。 + 一个将使用未包装的异常调用的委托。 + 未包装异常的类型。 + + + 这是一个抽象基类,用于表示实体的标量/复杂属性或导航属性。标量和复杂属性使用派生类 ,引用导航属性使用派生类 ,而集合导航属性使用派生类 + + + 初始化 类的新实例。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 属性的类型。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此成员所属的 + 拥有此成员的实体的项。 + + + 确定指定的项是否等于当前项。 + 如果指定的项等于当前项,则为 true;否则为 false。 + 要与当前项进行比较的对象。 + + + 返回此项的哈希函数。 + 此项的哈希函数。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此属性。 + + 对象的集合。绝不会为 null。如果实体有效,则集合将为空。 + + + 获取属性的名称。 + 属性名称。 + + + 返回数据库属性值的字符串表示形式。 + 数据库属性值的字符串表示形式。 + + + 这是一个抽象基类,用于表示实体的标量/复杂属性或导航属性。标量和复杂属性使用派生类 ,引用导航属性使用派生类 ,而集合导航属性使用派生类 + 此属性所属的实体的类型。 + 属性的类型。 + + + 初始化 类的新实例。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此成员所属的 + 拥有此成员的实体的项。 + + + 指定对象是否等于指定的对象。 + 如果对象等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与对象关联的哈希代码。 + 与对象关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此属性。 + + 对象的集合。绝不会为 null。如果实体有效,则集合将为空。 + + + 获取属性的名称。 + 属性的名称。 + + + 返回由此对象表示的属性的非泛型 类的新实例。 + 非泛型版本。 + 表示属性的对象。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 表示由 创建的实体数据模型 (EDM)。Compile 方法,可用来从此 EDM 的表示形式转换到 ,后者是适合缓存和创建 实例的模型的编译快照。 + + + 为此模式创建 ,它是适合缓存和创建 实例的编译快照。 + 已编译的模型。 + + + 获取概念模型。 + + + 获取映射模型。 + + + 获取提供程序信息。 + + + 获取提供程序清单。 + + + 获取存储模型。 + + + 非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 属性的类型。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此属性所属的 + 拥有此属性的实体的项。 + + + 获取或设置一个值,该值指示是否在从数据库加载此属性的值后修改了该值。 + 如果修改此实例,则为 true;否则为 false。 + + + 获取属性名称。 + 属性名称。 + + + 获取或设置此属性的原始值。 + 原始值。 + + + 此属性嵌套在其中的属性的 。此方法仅为复杂对象的属性返回非 null 项;它将为实体本身的属性返回 null。 + 父复杂属性的项,如果这是一个实体属性,则为 null。 + + + 此类的实例从 的 Property 方法返回,并允许访问标量属性或复杂属性。 + 此属性所属的实体的类型。 + 属性的类型。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此属性所属的 + 拥有此属性的实体的项。 + + + 获取或设置一个值,该值指示是否在从数据库加载此属性的值后修改了该值。 + 如果修改此实例,则为 true;否则为 false。 + + + 获取属性名称。 + 属性名称。 + + + 返回由此对象表示的属性的非泛型 类的新实例。 + 非泛型版本。 + 表示属性的对象。 + + + 获取或设置此属性的原始值。 + 原始值。 + + + 此属性嵌套在其中的属性的 。此方法仅为复杂对象的属性返回非 null 项;它将为实体本身的属性返回 null。 + 父复杂属性的项,如果这是一个实体属性,则为 null。 + + + 基础实体或复杂对象的所有属性的集合。 + + + 创建一个包含此字典中所有属性的副本的新字典。对新字典所做的更改不会反映在此字典中,反之亦然。 + 此字典的副本。 + + + 指定 是否等于特定对象。 + 如果 等于特定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与属性值关联的哈希代码。 + 与属性值关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 获取属性的值,正如使用索引属性 getter 但将类型设置为泛型参数的类型一样。这在使用嵌套字典以避免编写包含大量强制转换的表达式时特别有用。 + 属性的值。 + 属性的名称。 + 属性的类型。 + + + 获取或设置带指定属性名称的属性的值。该值可能为此类的嵌套实例。 + 属性的值。 + + + 获取作为只读集的此字典中所有属性的名称集。 + 属性名称。 + + + 通过从其他字典中读取值来设置此字典的值。另一个字典必须基于与此字典相同的类型,或基于此字典的类型所派生的类型。 + 从中读取值的字典。 + + + 通过从给定对象中读取值来设置此字典的值。给定对象可以是任何类型。如果对象具有任何与字典中的属性名称匹配且可读取的名称的属性,则将读取这些属性。其他属性将被忽略。例如,这样便能从简单的数据传输对象 (DTO) 中复制属性。 + 从中读取值的对象。 + + + 为此字典创建一个基础类型对象,并使用此字典中的属性值冻结该对象。 + 已复制到新对象中的此字典的属性。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 分组一对字符串,它们将提供程序和服务器版本一起标识为一个对象。 + + + 为给定的提供程序固定名称和清单标记创建一个新对象。 + 标识该提供程序的字符串。例如,SQL Server 提供程序使用字符串“System.Data.SqlCient”。 + 标识正在使用的数据库服务器版本的字符串。例如,SQL Server 提供程序对 SQL Server 2008 使用字符串“2008”。此值不能为 null 但可以为空。清单标记有时也称为版本提示。 + + + 确定指定的对象是否等于此当前对象。 + 如果指定的对象等于此当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 获取此当前对象的哈希函数。 + 此当前对象的哈希函数。 + + + 标识该提供程序的字符串。例如,SQL Server 提供程序使用字符串“System.Data.SqlCient”。 + + + 标识正在使用的数据库服务器版本的字符串。例如,SQL Server 提供程序对 SQL Server 2008 使用字符串“2008”。此值不能为 null 但可以为空。 + + + 表示针对 DbContext 的非泛型 LINQ to Entities 查询。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 返回等效泛型 对象。 + 泛型集对象。 + 已为其创建查询的元素的类型。 + + + IQueryable 元素类型。 + + + 指定查询是否等于指定的对象。 + 如果查询等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与查询关联的哈希代码。 + 与查询关联的哈希代码。 + + + 获取与查询关联的类型。 + 与查询关联的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 DbQuery&lt;T&gt;,它具有所定义的查询路径。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。相反,用数据填充 DbSet,例如,使用 Load 扩展方法,然后绑定到本地数据。对于 WPF,绑定到 DbSet.Local。对于 Windows 窗体,则绑定到 DbSet.Local.ToBindingList()。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + IQueryable LINQ 表达式。 + + + IQueryable 提供程序。 + + + 返回基础查询的 表示形式。 + 查询字符串。 + + + 表示针对 DbContext 的 LINQ to Entities 查询。 + 要查询的实体的类型。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 确定当前查询是否等于指定的查询。 + 如果当前查询等于指定的查询,则为 true;否则为 false。 + 要与当前查询进行比较的对象。 + + + 返回此查询的哈希函数。 + 此查询的哈希函数。 + + + 获取当前查询的类型。 + 当前查询的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + + + 返回此查询的非泛型 类的新实例。 + 非泛型版本。 + 查询。 + + + 获取此查询的枚举会导致对存储区执行此查询。 + 查询的 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。相反,用数据填充 DbSet,例如,使用 Load 扩展方法,然后绑定到本地数据。对于 WPF,绑定到 DbSet.Local。对于 Windows 窗体,则绑定到 DbSet.Local.ToBindingList()。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + IQueryable 元素类型。 + + + IQueryable LINQ 表达式。 + + + IQueryable 提供程序。 + + + 返回基础查询的 表示形式。 + 查询字符串。 + + + 表示非实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。实体的 SQL 查询是使用 创建的。请参见 了解此类的泛型版本。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 指定查询是否等于指定的对象。 + 如果查询等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要对每个元素执行的操作。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要对每个元素执行的操作。 + 等待任务完成期间要观察的 。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 获取与查询关联的哈希代码。 + 与查询关联的哈希代码。 + + + 获取与查询关联的类型。 + 与查询关联的类型。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含查询的元素。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含查询的元素。 + 等待任务完成期间要观察的 。 + + + 返回一个包含 SQL 字符串的 ,该字符串是在创建查询时设置的。不包括参数。 + 表示此实例的 + + + 表示非实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。实体的 SQL 查询是使用 创建的。请参见 了解此类的非泛型版本。 + 查询所返回元素的类型。 + + + 异步确定查询的所有元素是否满足条件。 + 表示异步操作的任务。如果查询结果的每个元素都通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + + + 异步确定查询的所有元素是否满足条件。 + 表示异步操作的任务。如果查询结果的每个元素都通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + + + 异步确定查询是否包含任何元素。 + 表示异步操作的任务。如果查询结果包含任何元素,则任务结果包含 true;否则包含 false。 + + + 异步确定查询的任何元素是否满足条件。 + 表示异步操作的任务。如果查询结果的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + + + 异步确定查询的任何元素是否满足条件。 + 表示异步操作的任务。如果查询结果的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + + 异步确定查询是否包含任何元素。 + 表示异步操作的任务。如果查询结果包含任何元素,则任务结果包含 true;否则包含 false。 + 等待任务完成期间要观察的 。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 通过使用默认的相等比较器异步确定查询是否包含指定的元素。 + 表示异步操作的任务。如果查询结果包含指定的值,则任务结果包含 true;否则包含 false。 + 要在查询结果中查找的对象。 + + + 通过使用默认的相等比较器异步确定查询是否包含指定的元素。 + 表示异步操作的任务。如果查询结果包含指定的值,则任务结果包含 true;否则包含 false。 + 要在查询结果中查找的对象。 + 等待任务完成期间要观察的 。 + + + 异步返回查询中的元素数。 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 查询结果中的元素数大于 + + + 异步返回满足条件的查询中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回满足条件的查询中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回查询中的元素数。 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 等待任务完成期间要观察的 。 + 查询结果中的元素数大于 + + + 确定当前查询是否等于指定的查询。 + 如果当前查询等于指定的查询,则为 true;否则为 false。 + 要与当前查询进行比较的查询。 + + + 异步返回查询的第一个元素。 + 表示异步操作的任务。任务结果包含查询结果中的第一个元素。 + 查询结果为空。 + + + 异步返回满足指定条件的查询的第一个元素。 + 表示异步操作的任务。任务结果包含满足指定条件的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + 查询结果为空。 + + + 异步返回满足指定条件的查询的第一个元素。 + 表示异步操作的任务。任务结果包含满足指定条件的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + 查询结果为空。 + + + 异步返回查询的第一个元素。 + 表示异步操作的任务。任务结果包含查询结果中的第一个元素。 + 等待任务完成期间要观察的 。 + 查询结果为空。 + + + 异步返回查询的第一个元素;如果查询结果不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空,则任务结果包含 default ();否则包含查询结果中的第一个元素。 + + + 异步返回满足指定条件的查询的第一个元素;如果未找到这样的元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + + + 异步返回满足指定条件的查询的第一个元素;如果未找到这样的元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + + + 异步返回查询的第一个元素;如果查询结果不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空,则任务结果包含 default ();否则包含查询结果中的第一个元素。 + 等待任务完成期间要观察的 。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要执行的操作。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要执行的操作。 + 等待任务完成期间要观察的 。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 返回此查询的哈希函数。 + 此查询的哈希函数。 + + + 获取当前查询的类型。 + 当前查询的类型。 + + + 异步返回表示查询中的总元素数的 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 查询结果中的元素数大于 + + + 异步返回表示满足条件的查询中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回表示满足条件的查询中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回表示查询中的总元素数的 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 等待任务完成期间要观察的 。 + 查询结果中的元素数大于 + + + 异步返回查询的最大值。 + 表示异步操作的任务。任务结果包含查询结果中的最大值。 + + + 异步返回查询的最大值。 + 表示异步操作的任务。任务结果包含查询结果中的最大值。 + 等待任务完成期间要观察的 。 + + + 异步返回查询的最小值。 + 表示异步操作的任务。任务结果包含查询结果中的最小值。 + + + 异步返回查询的最小值。 + 表示异步操作的任务。任务结果包含查询结果中的最小值。 + 等待任务完成期间要观察的 。 + + + 异步返回查询的唯一元素;如果该查询结果并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素。 + 查询结果有多个元素。 + 查询结果为空。 + + + 异步返回满足指定条件的查询的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回满足指定条件的查询的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回查询的唯一元素;如果该查询结果并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素。 + 等待任务完成期间要观察的 。 + 查询结果有多个元素。 + 查询结果为空。 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 查询结果有多个元素。 + + + 异步返回满足指定条件的查询的唯一元素;如果这类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素;如果没有找到这样的元素,则任务结果包含 default ()。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + 多个元素满足 中的条件。 + + + 异步返回满足指定条件的查询的唯一元素;如果这类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素;如果没有找到这样的元素,则任务结果包含 default ()。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + 多个元素满足 中的条件。 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 等待任务完成期间要观察的 。 + 查询结果有多个元素。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 通过异步枚举从查询创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + + + 通过异步枚举从查询创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + 等待任务完成期间要观察的 。 + + + 通过异步枚举它根据指定的键选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + + 返回的键类型。 + + + 通过异步枚举它根据指定的键选择器函数和比较器从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + + 返回的键类型。 + + + 通过异步枚举它根据指定的键选择器函数和比较器从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + + 通过异步枚举它根据指定的键选择器函数和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从查询选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数、比较器和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数、比较器和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从查询选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 等待任务完成期间要观察的 。 + + + 返回一个包含 SQL 字符串的 ,该字符串是在创建查询时设置的。不包括参数。 + 表示此实例的 + + + 非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 属性的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载该实体。 + 如果加载了该实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 从数据库加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回将用于从数据库加载此实体的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作。 + 针对实体的查询。 + + + 此类的实例从 的 Reference 方法返回,并且允许对实体的引用导航属性执行各种操作(如加载)。 + 此属性所属的实体的类型。 + 属性的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载该实体。 + 如果加载了该实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 从数据库加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回由此对象表示的导航属性的非泛型 类的新实例。 + 非泛型版本。 + 表示导航属性的对象。 + + + 返回将用于从数据库加载此实体的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作。 + 针对实体的查询。 + + + 表示实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从该实体类型的 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。非实体的 SQL 查询是使用 创建的。请参见 了解此类的泛型版本。 + + + 从派生类的构造函数中进行调用时,创建一个 实例,它将用作 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking 和 AsStreaming,它们的默认实现是空操作。 + + + 返回一个新查询,其中查询的结果将不由关联的 跟踪。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要与当前实例进行比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取与查询关联的类型。 + 与查询关联的类型。 + + + 返回一个包含 SQL 字符串的 ,该字符串是在创建查询时设置的。不包括参数。 + 表示此实例的 + + + 表示实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从该实体类型的 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。非实体的 SQL 查询是使用 创建的。请参见 了解此类的非泛型版本。 + 查询所返回实体的类型。 + + + 从派生类的构造函数中进行调用时,创建一个 实例,它将用作 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking 和 AsStreaming,它们的默认实现是空操作。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取与此实例关联的类型。 + 与此实例关联的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 当预期实体的 SaveChanges 将导致数据库更新而实际上未影响数据库中的任何行时 引发的异常。这通常指示,当前已并发更新数据库,使得应匹配的并发标记实际上并不匹配。请注意为了安全起见,不会序列化此异常引用的状态项,并且在序列化后对状态项的访问将返回 null。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 消息。 + + + 初始化 类的新实例。 + 消息。 + 内部异常。 + + + 将更改保存到数据库失败时,由 引发的异常。请注意为了安全起见,不会序列化此异常引用的状态项,并且在序列化后对状态项的访问将返回 null。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 消息。 + + + 初始化 类的新实例。 + 消息。 + 内部异常。 + + + 获取表示无法保存到数据库的实体的 对象。 + 表示无法保存的实体的项。 + + + 表示如果失败不重试操作的默认 + + + 初始化 类的新实例。 + + + 执行一次指定的操作。 + 一个表示不返回任何结果的可执行操作的委托。 + + + 执行一次指定的操作并返回结果。 + 操作的结果。 + 一个表示返回 类型的结果的可执行操作的委托。 + + 的返回类型。 + + + 执行一次指定的异步操作,失败时不重试。 + 如果原始任务成功完成将要运行以完成的任务。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + 返回的 的结果类型。 + + + 执行一次指定的异步操作,失败时不重试。 + 如果原始任务成功完成将要运行以完成的任务。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + + 获取 在失败后是否将重试执行。 + 如果 在失败后将重试执行,则为 true;否则为 false。 + + + 表示使用基础提供程序以获取清单标记的 的默认实现。请注意,为避免多个查询,此实现基于 实例的实际类型、 属性和 属性使用缓存。 + + + 初始化 类的新实例。 + + + 返回要用于给定连接的清单标记。 + 要使用的清单标记。 + 需要清单标记的连接。 + + + 表示用于存储有关数据库中 EDM 的元数据的实体。 + + + 初始化 类的新实例。 + + + 获取或设置元数据实体的 ID,它当前总是为 1。 + ID。 + + + 获取或设置模型哈希,用于检查自从模型中创建数据库后,模型是否发生了更改。 + 模型哈希。 + + + 尝试为给定上下文获取 Code First 计算的模型哈希。如果未在 Code First 模式中使用上下文,则此方法将返回 null。 + 哈希字符串。 + 上下文。 + + + 包含用于访问由 Code First 创建的 EDMX 格式的实体数据模型的方法。通常,在需要查看 Code First 内部创建的模型时,这些方法将用于调试。 + + + 将 Code First 用于给定上下文,然后以 EDMX 形式将生成的实体数据模型写入给定编写器。此方法只能用于使用 Code First 且内部创建模型的上下文实例。此方法不能用于使用 Database First 或 Model First 创建的上下文、使用预先存在的 创建的上下文或使用预先存在的 创建的上下文。 + 上下文。 + 编写器。 + + + 将给定的 表示的实体数据模型以 EDMX 形式写入给定编写器。 + 表示 EDM 的对象。 + 编写器。 + + + 一个用于解析 的键。它包含 ADO.NET 提供程序固定名称和在连接字符串中指定的数据库服务器名称。 + + + 初始化 的新实例。 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + 确定指定的对象是否等于此键。 + 如果指定的对象等于此键,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + + + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + + 接口的异步版本,它允许异步检索元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + + + 获取一个枚举器,它可用于异步枚举序列。 + 用于对序列异步枚举的枚举器。 + + + + 接口的异步版本,它允许异步检索可枚举序列的元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + 要枚举的对象的类型。此类型参数是协变。即可以使用指定的类型或派生程度更高的类型。 有关协变和逆变的详细信息,请参阅。 + + + 获取一个枚举器,它可用于异步枚举序列。 + 用于对序列异步枚举的枚举器。 + + + + 接口的异步版本,它允许异步检索元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + + + 获取迭代中的当前元素。 + + + 将枚举器前移到序列中的下一个元素,异步返回结果。 + 表示异步操作的任务。如果枚举器成功前移到下一个元素,则任务结果包含 true;如果枚举器已过序列末尾,则包含 false。 + 等待任务完成期间要观察的 。 + + + + 接口的异步版本,它允许异步检索元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + 要枚举的对象的类型。此类型参数是协变。即可以使用指定的类型或派生程度更高的类型。 有关协变和逆变的详细信息,请参阅。 + + + 获取迭代中的当前元素。 + + + 定义用于创建和异步执行 对象所描述的查询的方法。此接口用于与实体框架查询交互且不应由自定义类来实现。 + + + 异步执行指定表达式树所表示的强类型查询。 + 表示异步操作的任务。任务结果包含执行指定查询所生成的值。 + 表示 LINQ 查询的表达式树。 + 等待任务完成期间要观察的 。 + 执行查询所生成的值的类型。 + + + 异步执行指定表达式树所表示的查询。 + 表示异步操作的任务。任务结果包含执行指定查询所生成的值。 + 表示 LINQ 查询的表达式树。 + 等待任务完成期间要观察的 。 + + + 此接口的实现用来基于给定的数据库名称创建某个数据库服务器类型的 DbConnection 对象。默认情况下,可在 类上设置一个实例以便创建所有 DbContext 对象(不具有连接信息或只有数据库名称或连接字符串)以使用特定类型的数据库服务器。提供此接口的两种实现: 用于创建与速成版等 Microsoft SQL Server 的连接。 用于创建与 Microsoft SQL Server Compact Edition 的连接。可根据需要添加其他数据库服务器的其他实现。请注意实现应视为是线程安全的或不可变的,因为实现可同时被多个线程访问。 + + + 基于给定的数据库名称或连接字符串创建连接。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 用于创建派生 实例的工厂。实现此接口可为没有公共默认构造函数的上下文类型启用设计时服务。在设计时,可以创建派生的 实例,以启用特定设计时体验,如模型呈现和 DDL 生成。要为没有公共默认构造函数的派生 启用设计时实例化,请实现此接口。设计时服务将自动发现与派生 类型位于同一程序集中的此接口的实现。 + 上下文的类型。此类型参数是协变。即可以使用指定的类型或派生程度更高的类型。 有关协变和逆变的详细信息,请参阅。 + + + 创建派生 类型的新实例。 + TContext 的一个实例 + + + 用于对数据库执行命令或查询的策略,可能具有在失败时进行重试的逻辑。 + + + 执行指定的操作。 + 一个表示不返回任何结果的可执行操作的委托。 + + + 执行指定的操作并返回结果。 + 操作的结果。 + 一个表示返回 类型的结果的可执行操作的委托。 + + 的返回类型。 + + + 执行指定的异步操作并返回结果。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回 类型的已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + 返回的 的结果类型。 + + + 执行指定的异步操作。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + + 指示此 在失败后是否可能重试执行。 + + + 表示一个键值,它唯一地标识已加载到内存中的实体框架模型。 + + + 确定当前缓存的模型键是否等于指定的缓存模型键。 + 如果当前缓存的模型键等于指定的缓存模型键,则为 true;否则为 false。 + 要与当前缓存的模型键比较的缓存模型键。 + + + 返回此缓存模型键的哈希函数。 + 此缓存模型键的哈希函数。 + + + 对您的上下文实现此接口,使用自定义逻辑来计算在缓存中查找已创建模型时所用的键。此接口允许您具有可与同一 AppDomain 中不同模型一起使用的单个上下文类型,或是具有使用同一模型的多个上下文类型。 + + + 获取与提供程序关联的缓存键。 + 与提供程序关联的缓存键。 + + + 用于从给定的 获取正确的 的服务。 + + + 返回给定连接的 + 连接的提供程序工厂。 + 连接。 + + + 用于获取给定连接的提供程序清单标记的服务。默认情况下使用 类并利用基础提供程序来获取通常涉及打开连接的标记。通过将 添加到可能使用连接中的任何信息来返回标记的 ,可以改用其他实现。例如,如果已知连接指向 SQL Server 2008 数据库,则可以返回“2008”而无需打开连接。 + + + 返回要用于给定连接的清单标记。 + 要使用的清单标记。 + 需要清单标记的连接。 + + + 实现此接口以允许由 实例表示的自定义注释序列化为 EDMX XML 以及从 EDMX XML 进行序列化。通常,使用 方法设置序列化程序实例。 + + + 将给定字符串反序列化为预期的注释值。 + 反序列化的注释值。 + 要反序列化的注释的名称。 + 要反序列化的字符串。 + + + 将给定注释值序列化为要存储在 EDMX XML 中的字符串。 + 序列化值。 + 要序列化的注释的名称。 + 要序列化的值。 + + + 约定将导致 DbModelBuilder 在生成模型时包含有关该模型的元数据。当 按约定创建模型时,它会将此约定添加到由 DbModelBuilder 使用的项的列表中。如果使用 DbContext 创建数据库,则会导致将模型元数据写入数据库中。然后,可使用它来快速检查自上次对数据库使用模型后,模型是否发生了更改。可通过重写派生 DbContext 类的 OnModelCreating 方法,从 约定中移除此约定。 + + + 初始化 类的新实例。 + + + 由可提供 实例的对象实现的接口。 类实现此接口以提供对基础 ObjectContext 的访问。 + + + 获取对象上下文。 + 对象上下文。 + + + 解析提供程序固定名称时由 使用。 + + + 获取提供程序的名称。 + 提供程序的名称。 + + + 此类的实例用来基于给定的数据库名称或连接字符串创建 SQL Server LocalDb 的 DbConnection 对象。 + + + 为给定版本的 LocalDb 创建连接工厂的新实例。对于 SQL Server 2012 LocalDb,请使用“v11.0”。对于 SQL Server 2014 及更高版本 LocalDb,请使用“mssqllocaldb”。 + 要使用的 LocalDb 版本。 + + + 为给定版本的 LocalDb 创建连接工厂的新实例。对于 SQL Server 2012 LocalDb,请使用“v11.0”。对于 SQL Server 2014 及更高版本 LocalDb,请使用“mssqllocaldb”。 + 要使用的 LocalDb 版本。 + 用于“初始目录”、“数据源”和“AttachDbFilename”之外的数据库选项的连接字符串。调用 CreateConnection 时,将基于数据库名称在此字符串前添加“初始目录”和“AttachDbFilename”。将基于 LocalDbVersion 参数设置“数据源”。 + + + 用于“初始目录”、“数据源”和“AttachDbFilename”之外的数据库选项的连接字符串。调用 CreateConnection 时,将基于数据库名称在此字符串前添加“初始目录”和“AttachDbFilename”。将基于 LocalDbVersion 参数设置“数据源”。默认值为“Integrated Security=True;”。 + + + 基于给定的数据库名称或连接字符串为 SQL Server LocalDb 创建连接。如果给定的字符串包含“=”字符,则将其视为一个完整的连接字符串,否则仅将其视为数据库名称。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 约定将派生的 类的名称用作由 Code First 生成的概念模型的容器。 + + + 将此约定应用到给定的模型。 + 要将约定应用到的容器。 + 模型。 + + + 约定将派生的 类的命名空间用作由 Code First 生成的概念模型的命名空间。 + + + 使用引用相等性比较对象。 + + + 初始化 类的新实例。 + + + 获取默认实例。 + 默认实例。 + + + 确定指定对象实例是否相等。 + 如果对象相等,则为 true;否则为 false。 + 第一个要比较的对象。 + 第二个要比较的对象。 + + + 获取指定对象的哈希代码。 + 指定对象的哈希代码。 + 对象。 + + + 此类的实例用于内部创建 的常量表达式,这些表达式将插入表达式树中以替换对 的引用。 + 元素的类型。 + + + LINQ 表达式树中应有的公共属性。 + 查询。 + + + 当操作重试了配置的次数后再次失败时引发的异常。 + + + 使用无错误消息初始化 类的新实例。 + + + 使用指定的错误消息初始化 类的新实例。 + 描述错误的消息。 + + + 初始化 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常。 + + + 此类的实例用来基于给定的数据库名称或连接字符串创建 SQL Server Compact Edition 的 DbConnection 对象。 + + + 使用空的(默认)DatabaseDirectory 和 BaseConnectionString 属性创建新的连接工厂。 + 应使用指定 SQL Server Compact Edition 版本的提供程序固定名称。 + + + 使用给定的 DatabaseDirectory 和 BaseConnectionString 属性创建新的连接工厂。 + 应使用指定 SQL Server Compact Edition 版本的提供程序固定名称。 + 用于添加到数据库名称前面的路径,SQL Server Compact Edition 在创建或读取数据库文件时将使用它来构成文件名。空字符串意味着 SQL Server Compact Edition 将其默认位置用作数据库文件位置。 + 要用于“数据源”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置数据源。 + + + 要用于“数据源”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置数据源。默认值为空字符串,即表示不使用任何其他选项。 + + + 基于给定的数据库名称或连接字符串为 SQL Server Compact Edition 创建连接。如果给定的字符串包含“=”字符,则将其视为一个完整的连接字符串,否则仅将其视为数据库名称。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 用于添加到数据库名称前面的路径,SQL Server Compact Edition 在创建或读取数据库文件时将使用它来构成文件名。默认值为“|DataDirectory|”,即表示文件将放置在指定的数据目录中。 + + + 应使用指定 SQL Server Compact Edition 版本的提供程序固定名称。 + + + 此类的实例用来基于给定的数据库名称或连接字符串创建 SQL Server 的 DbConnection 对象。默认情况下,将建立与“.\SQLEXPRESS”的连接。在构造工厂实例时,可通过更改基础连接字符串来更改此设置。 + + + 使用默认的 BaseConnectionString 属性“Data Source=\SQLEXPRESS; Integrated Security=True; MultipleActiveResultSets=True;”创建新的连接工厂。 + + + 使用给定的 BaseConnectionString 属性创建新的连接工厂。 + 要用于“初始目录”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置“初始目录”。 + + + 要用于“初始目录”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置“初始目录”。默认值为“Data Source=.\SQLEXPRESS; Integrated Security=True;”。 + + + 基于给定的数据库名称或连接字符串为 SQL Server 创建连接。如果给定的字符串包含“=”字符,则将其视为一个完整的连接字符串,否则仅将其视为数据库名称。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 此特性可应用于整个派生的 类或该类上的单个 属性。应用此特性后,任何发现的 属性仍将包含在模型中,但将不再自动进行初始化。 + + + 初始化 类的新实例。 + + + 由实体框架提供程序实现,用于检查给定的数据库中是否存在表。当确定是否将现有数据库作为空库处理以便应创建表时,数据库初始化程序使用该类。 + + + + 在派生类中重写时,检查给定的表在给定连接的数据库中存在的位置。 + 如果任意模型表或 EdmMetadata 表存在,则为 true。 + 正在执行表检查的上下文,通常用于获取合适的 。 + 到数据库的一个连接。可能打开或关闭;如果打开,应再次关闭它。不释放。 + 要检查是否存在的表。 + 要检查是否存在的 EdmMetadata 表的名称。 + + + 要获取给定 s 空间 的表名称的帮助器方法。 + 表名称。 + 表的 s 空间实体集。 + + + + 使用此类向数据库中写入和从中读取事务跟踪信息。要自定义事务表的定义,您可以从此类派生并重写 。可以使用 注册派生类。 + + + 初始化 类的新实例。 + 将为其记录事务的上下文所使用的连接。 + + + 初始化派生上下文的模型后调用此方法。 + 定义要创建的上下文的模型的生成器。 + + + 获取或设置可用于读取和写入 实例的 + 可用于读取和写入 实例的 + + + 表示处理事务操作的侦听器的基类。可使用 注册派生类。 + + + 初始化 类的新实例。 + + + 可在派生类中实现。 + 开始事务的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 开始事务的连接。 + 与调用关联的上下文信息。 + + + 在派生类中实现后,返回脚本来为此事务处理程序准备数据库。 + 用于为此事务处理程序更改数据库架构的脚本。 + + + 可在派生类中实现。 + 已关闭的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要关闭的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 已提交的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要提交的事务。 + 与调用关联的上下文信息。 + + + 获取将对其处理事务操作的连接。 + 将为其处理事务操作的 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 获取将对其处理事务操作的连接。 + 将为其处理事务操作的 。可以为 null。 + + + 释放此事务处理程序占用的资源。 + + + 释放此事务处理程序占用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 可在派生类中实现。 + 已释放的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 已释放的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要释放的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要释放的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 使用指定的上下文初始化此实例。 + 将为其处理事务操作的上下文。 + + + 使用指定的上下文初始化此实例。 + 将为其处理事务操作的上下文。 + 用于初始化的连接。 + + + 获取或设置一个值,以指示是否释放了此事务处理程序。 + 如果释放此事务处理程序,则为 true;否则为 false。 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 检查提供的侦听上下文是否包含目标上下文,或提供的连接与目标上下文使用的连接相同。 + 如果提供的侦听上下文包含目标上下文或者在提供的侦听上下文不包含任何上下文时提供的连接与目标上下文使用的连接相同,则为 true;否则为 false。 + 连接。 + 侦听上下文。 + + + 获取将对其处理事务操作的连接。 + 将为其处理事务操作的 + + + 可在派生类中实现。 + 已打开的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要打开的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 已回滚的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要回滚的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 表示一个事务。 + + + 初始化 类的新实例。 + + + 获取或设置事务开始的当地时间。 + 此事务开始的本地时间。 + + + 指示指定对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取或设置分配给事务对象的唯一 ID。 + 分配给事务对象的唯一 ID。 + + + 当上下文从 Database First 或 Model First 模式中的 模板生成,并在 Code First 模式中使用时引发的异常。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 保存序列化对象数据的对象。 + 有关源或目标的上下文信息。 + + + 初始化 类的新实例。 + 消息。 + + + 初始化 类的新实例。 + 消息。 + 内部异常。 + + + 表示创建允许在为迁移搭建基架时为自定义注释生成代码的服务。应在 中设置的派生类。 + + + 初始化 类的新实例。 + + + 为给定注释值生成代码。 + 要为其生成值的注释的名称。 + 批注值。 + 应向其中写入生成的代码的编写器。 + + + 返回应包括在为已搭建基架的迁移生成的代码中的其他命名空间。默认实现返回空枚举。 + 要包括的其他命名空间的列表。 + 要包括在生成的代码中的注释的名称。 + + + 表示已搭建基架的或已手工编码的 中的一对注释值。 + + + 创建一对新注释值。 + 注释的旧值,如果刚创建注释,则此值可能为 null。 + 注释的新值,如果已删除注释,则此值可能为 null。 + + + 确定指定对象是否等于此实例对象。 + 如果指定对象等于此实例对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索哈希代码。 + 哈希代码。 + + + 获取注释的新值,如果已删除注释,则此值可能为 null。 + 注释的新值,如果已删除注释,则此值可能为 null。 + + + 获取注释的旧值,如果刚创建注释,则此值可能为 null。 + 注释的旧值,如果刚创建注释,则此值可能为 null。 + + + 如果两个注释对包含相同值,则返回 true;否则返回 false。 + 如果两对包含相同值,则为 true。 + 一对注释值。 + 一对注释值。 + + + 如果两个注释对包含不同的值,则返回 true;否则返回 false。 + 如果对包含不同值,则为 true。 + 一对注释值。 + 一对注释值。 + + + 和相关方法返回,以指示某个对象是否与另一个对象不冲突,以便这两个对象可以组合成一个对象。 + + + 创建一个新的 实例。 + 指示这两个测试对象是否兼容。 + 指示对象如何不兼容的错误消息。如果 isCompatible 为 true,则应为 null。 + + + 如果 为 true,则返回指示两个测试对象如何不兼容的错误消息。 + + + 如果两个测试对象兼容,则为 true;否则为 false。 + + + 隐式转换为布尔值以允许在检查中直接使用结果对象。 + 如果结果兼容,则为 true;否则为 false。 + 要转换的对象。 + + + 用作自定义注释的类型可以实现此接口,以指示通过将多个注释合并为一个注释,可以尝试在给定表或列上使用多个同名注释。 + + + 如果此注释与给定注释不冲突,则返回 true,以便可以使用 方法将二者组合在一起。 + 指示此注释是否与另一个注释兼容的 CompatibilityResult。 + 要比较的注释。 + + + 将此注释与给定注释合并,并返回新合并的注释。仅当 返回 true 时,此方法才会成功。 + 新合并的注释。 + 要与此注释合并的注释。 + + + 表示用于表示实体框架模型中数据库索引的自定义注释。 + + + 使用索引的给定集合初始化 类的新实例。 + 表示一个或多个索引的索引属性。 + + + 使用索引的给定集合初始化 类的新实例。 + 表示索引的索引属性。 + + + 在将此注释存储在实体框架元数据中或序列化到 SSDL/EDMX 文件中时使用的名称。 + + + 获取此注释表示的索引。 + 此注释表示的索引。 + + + 如果此注释与给定注释不冲突,则返回 true,以便可以使用 方法将二者组合在一起。 + 指示此注释是否与另一个注释兼容的 CompatibilityResult。 + 要比较的注释。 + + + 将此注释与给定注释合并,并返回包含已合并索引的新注释。 + 具有所合并的两个注释的索引的新注释。 + 要与此注释合并的注释。 + 其他注释包含与此注释中的索引不兼容的索引。 + + + 返回 对象的字符串表示形式。 + + 对象的字符串表示形式。 + + + 此类用于序列化和反序列化 对象,以便它们可以存储在 EDMX 形式的实体框架模型中。 + + + 初始化 类的新实例。 + + + 将给定字符串反序列化为 对象。 + 反序列化的注释值。 + 要反序列化的注释的名称。 + 要反序列化的字符串。 + 如果在读取序列化值时出错。 + + + 将给定 序列化为要存储在 EDMX XML 中的字符串。 + 序列化值。 + 要序列化的注释的名称。 + 要序列化的、必须是 IndexAnnotation 对象的值。 + + + 表示传递到 事件处理程序的时间参数。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。与 AddDependencyResolver 方法不同,此方法将解析程序放置于责任链的底部,这样,该解析程序将仅用于解析任何其他解析程序无法解析的依赖项。 + 要添加的解析程序。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。 + 要添加的解析程序。 + 如果为 true,则添加的解析程序将优先于配置文件中的设置。 + + + 获取将要锁定的 的快照。对此对象使用 GetService 方法可获取已注册的服务。 + 将要锁定的 的快照。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取此实例的类型。 + 此实例的类型。 + + + 将一个包装解析程序添加到将要锁定的配置中。包装解析程序是这样一种解析程序:它截取解析程序链已返回的服务并且用相同类型的另一个服务包装或替换它。 + 获取未包装的服务和键并返回已包装或替换的服务的委托。 + 要包装或替换的服务的类型。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 用来调用使用泛型类型参数和/或不带名称的 方法的扩展方法。 + + + 调用 ,将该方法的泛型类型作为类型参数传递并为名称参数传递 null。 + 解析的依赖项;如果解析程序无法解析它,则为 null。 + 要使用的解析程序。 + 要解析的协定类型。 + + + 调用 ,将该方法的泛型类型和给定名称作为参数传递。 + 解析的依赖项;如果解析程序无法解析它,则为 null。 + 要使用的解析程序。 + 要解析的依赖项的键。 + 要解析的协定类型。 + + + 调用 ,以传递给定类型参数并对名称参数使用 null。 + 解析的依赖项;如果解析程序无法解析它,则为 null。 + 要使用的解析程序。 + 要解析的协定类型。 + + + 调用 ,将该方法的泛型类型作为类型参数传递并为名称参数传递 null。 + 所有已解析的依赖项,如果没有解析任何服务,则为 + 要使用的解析程序。 + 要解析的协定类型。 + + + 调用 ,将该方法的泛型类型和给定名称作为参数传递。 + 所有已解析的依赖项,如果没有解析任何服务,则为 + 要使用的解析程序。 + 要解析的依赖项的键。 + 要解析的协定类型。 + + + 调用 ,以传递给定类型参数并对名称参数使用 null。 + 所有已解析的依赖项,如果没有解析任何服务,则为 + 要使用的解析程序。 + 要解析的协定类型。 + + + 用于解析 工厂的 实现。 + 解析的执行策略的类型。 + + + 初始化 的新实例。 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 将与连接字符串中的服务器名称进行匹配的字符串。null 将匹配任意内容。 + 返回执行策略的新实例的函数。 + + + 如果给定类型为 ,则此解析程序将尝试返回要使用的服务,否则它将返回 null。在给定类型为 Func{IExecutionStrategy} 时,键应该是 + + 或 null。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 如果给定类型为 ,则此解析程序将尝试返回要使用的服务,否则它将返回空枚举。在给定类型为 Func{IExecutionStrategy} 时,键应该是 + 可枚举的 或空枚举。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 此接口由可以解析依赖项(直接解析或通过使用外部容器进行解析)的任何对象实现。 + + + 尝试为给定的协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回 null 并且不引发。这允许解析程序用于责任链模式中,以便可以请求多个解析程序解析某一依赖项,直到其中一个解析程序最终解析了该依赖项。 + 解析的依赖项,它必须是给定协定类型的实例;如果无法解析该依赖项,则为 null。 + 定义要解析的依赖项的接口或抽象基类。返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 尝试为给定协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回空枚举并且不引发。此方法与 不同,因为它返回给定类型和键组合的所有注册服务。 + 解析依赖项的所有服务,它们必须是给定协定类型的实例,如果无法解析依赖项,则为空枚举。 + 定义要解析的依赖项的接口或抽象基类。每个返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 实现 以便解析某一依赖项,使其可以始终返回相同的实例。 + 定义将解析的依赖项的协定的类型。 + + + 构造一个新的解析程序,该解析程序将返回协定类型的给定实例,而与传递给 Get 方法的键无关。 + 要返回的实例。 + + + 构造一个新解析程序,如果给定键与基于给定谓词传递给 Get 方法的键匹配,该解析程序将返回协定类型的给定实例。 + 要返回的实例。 + 采用键对象并在当且仅当它匹配时才返回 true 的谓词。 + + + 构造一个新的解析程序,如果给定键完全匹配传递给 Get 方法的键,该解析程序将返回协定类型的给定实例。 + 要返回的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 尝试为给定的协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回 null 并且不引发。这允许解析程序用于责任链模式中,以便可以请求多个解析程序解析某一依赖项,直到其中一个解析程序最终解析了该依赖项。 + 解析的依赖项,它必须是给定协定类型的实例;如果无法解析该依赖项,则为 null。 + 定义要解析的依赖项的接口或抽象基类。返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 尝试为给定协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回空枚举并且不引发。 + 解析依赖项的所有服务,它们必须是给定协定类型的实例,如果无法解析依赖项,则为空枚举。 + 定义要解析的依赖项的接口或抽象基类。每个返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 表示用于解析 工厂的 实现。 + + + 初始化 类的新实例。 + 一个返回事务处理程序的新实例的函数。 + ADO.NET 提供程序固定名称,指示将使用事务处理程序的 ADO.NET 连接的类型。null 将匹配任意内容。 + 将与连接字符串中的服务器名称进行匹配的字符串。null 将匹配任意内容。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索对象实例的哈希代码。 + 对象实例的哈希代码。 + + + 如果给定类型为 ,则此方法将尝试返回要使用的服务,否则它将返回 null。在给定类型为 时,键应该是 + + 或 null。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 如果给定类型为 ,则此解析程序将尝试返回要使用的服务,否则它将返回空枚举。在给定类型为 时,键应该是 + 可枚举的 或空枚举。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 提供用于从 App.config 或 Web.config 文件读取的实用工具方法。 + + + 初始化 的新实例。 + 要从中读取的配置。 + + + 从配置获取指定的提供程序服务。 + 提供程序服务类型名称或 null(如果未找到)。 + 提供程序服务的固定名称。 + + + 表示映射视图。 + + + 创建具有指定实体 SQL 的 实例。 + 一个指定实体 SQL 的字符串。 + + + 获取实体 SQL。 + + + 表示映射视图缓冲实现的抽象基类。派生类如果与 一起使用,则必须具有无参数构造函数。 + + + 初始化 类的新实例。 + + + 获取与指定范围对应的视图。 + 一个指定映射视图的 ,如果范围不与映射视图关联,则为 null。 + 一个指定范围的 。 + + + 获取通过映射结束计算出的哈希值。 + 通过映射结束计算出的哈希值。 + + + 指定用于创建具体的 实例的方法。 + + + 初始化 类的新实例。 + + + 为由已映射容器的名称指定的容器映射创建生成的视图缓存实例。 + 一个指定生成的视图缓存的 + 概念模型中容器的名称。 + 存储模型中容器的名称。 + + + 定义指定与上下文类型( 的子类)关联的映射视图缓存类型( 的子类)的自定义属性。缓存类型在运行时实例化并用于在相应上下文中检索预先生成的视图。 + + + 创建将上下文类型与映射视图缓存类型相关联的 实例。 + + 的子类。 + 缓存类型的程序集限定的全名。 + + + 创建将上下文类型与映射视图缓存类型相关联的 实例。 + + 的子类。 + + 的子类。 + + + 表示 要使用的自定义复数形式术语 + + + 创建一个新实例 + 表示单数的非 null 或空字符串。 + 表示复数的非 null 或空字符串。 + + + 获取复数。 + + + 获取单数。 + + + 要由实体框架使用的默认复数形式服务实现。此复数形式服务基于英文区域设置。 + + + 构造实体框架中使用的默认复数形式服务的新实例。 + + + 构造实体框架中使用的默认复数形式服务的新实例。 + 要由此服务使用的用户字典项的集合。这些输入信息可以根据用户需要对服务进行自定义。 + + + 返回指定单词的复数形式。 + 输入参数的复数形式。 + 要改为复数形式的单词。 + + + 返回指定单词的单数形式。 + 输入参数的单数形式。 + 要改为单数形式的单词。 + + + 要由 EF 运行时使用的复数形式服务实现此接口。默认情况下,使用 ,但是可以在从 派生的类中设置要使用的复数形式服务。 + + + 使用服务使单词变为复数形式。 + 已变为复数形式的单词 + 要变为复数形式的单词。 + + + 使用服务使单词变为单数形式。 + 已变为单数形式的单词。 + 要变为单数形式的单词。 + + + 表示基于代码的迁移的基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。 + + + 添加将列添加到现有表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列将添加到的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要添加的列的名称。 + 一个指定要添加的列的操作。例如,c =&gt; c.Int(nullable:false, defaultValue:3) + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 此外键引用的列。如果未提供任何值,则将引用主体表的主键。 + 指示是否应针对外键关系配置级联删除的值。如果未提供任何值,则将关闭级联删除。 + 数据库中的外键约束的名称。如果未提供任何值,则将生成唯一名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 此外键引用的列。如果未提供任何值,则将引用主体表的主键。 + 指示是否应针对外键关系配置级联删除的值。如果未提供任何值,则将关闭级联删除。 + 数据库中的外键约束的名称。如果未提供任何值,则将生成唯一名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 主键列。 + 数据库中的主键的名称。如果未提供任何值,则将生成唯一名称。 + 指示此键是否是聚集的主键。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于多列创建新主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 主键列。 + 数据库中的主键的名称。如果未提供任何值,则将生成唯一名称。 + 指示此键是否是聚集的主键。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加更改现有列的定义的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所在的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要更改的列的名称。 + 一个指定列的新定义的操作。例如,c =&gt; c.String(nullable:false, defaultValue:"none") + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加更改存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定存储过程参数的操作。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + 此更改存储过程操作中的参数。无需指定此类型,将根据您提供的 参数推断此类型。 + + + 添加更改存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + + + 添加一项操作以处理表中所定义的注释的更改。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定表中要包含的列的操作。例如,t =&gt; new { Id = t.Int(identity:true), Name = t.String() } + 表中已更改的自定义注释。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + 此操作中的列。无需指定此类型,将根据您提供的 columnsAction 参数推断此类型。 + + + 添加在单列上创建索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要在其上创建索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要在其上创建索引的列的名称。 + 指示此索引是否是唯一索引的值。如果未提供任何值,则将创建非唯一索引。 + 用于数据库中的索引的名称。如果未提供任何值,则将生成唯一名称。 + 指示此索引是否是聚集索引的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加在多列上创建索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要在其上创建索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要在其上创建索引的列的名称。 + 指示此索引是否是唯一索引的值。如果未提供任何值,则将创建非唯一索引。 + 用于数据库中的索引的名称。如果未提供任何值,则将生成唯一名称。 + 指示此索引是否是聚集索引的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定存储过程参数的操作。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + 此存储过程创建操作中的参数。无需指定此类型,将根据您提供的 参数推断此类型。 + + + 添加创建新存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + + + 添加创建新表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 允许进一步配置表创建操作的对象。 + 表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定表中要包含的列的操作。例如,t =&gt; new { Id = t.Int(identity:true), Name = t.String() } + 要创建的表中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + 此表中的列创建表操作。无需指定此类型,将根据您提供的 columnsAction 参数推断此类型。 + + + 添加创建新表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 允许进一步配置表创建操作的对象。 + 表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定表中要包含的列的操作。例如,t =&gt; new { Id = t.Int(identity:true), Name = t.String() } + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + 此表中的列创建表操作。无需指定此类型,将根据您提供的 columnsAction 参数推断此类型。 + + + 要在降级过程中执行的操作。 + + + 添加删除现有列的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除列的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的列的名称。 + 要删除的列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除现有列的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除列的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的列的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束名称删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 数据库中的外键约束的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束面向的列删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束面向的列删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 此外键引用的列。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束面向的列删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于索引名称删除索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的索引的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于索引面向的列删除索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 索引面向的列的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除使用默认名称创建的现有主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除没有默认名称的现有主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的主键的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加一个操作,以删除具有使用指定名称的现有存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的表的各列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 要删除的表的各列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 确定此实例是否等于指定对象。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要与当前实例进行比较的对象。 + + + 返回当前对象的哈希函数。 + 当前对象的哈希函数。 + + + 返回当前实例的运行时类型。 + 当前实例的运行时类型。 + + + 创建当前对象的浅表副本。 + 当前对象的浅表副本。 + + + 添加将存储过程移至新架构的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要将存储过程移到其中的架构。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加将表移至新架构的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 表将移至的架构。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加重命名列的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含要重命名的列的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要重命名的列的名称。 + 列的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加一项重命名索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含要重命名的索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要重命名的索引的名称。 + 索引的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加重命名存储过程的操作。若要更改存储过程的架构,请使用 MoveStoredProcedure 实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 存储过程的新名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加重命名表的操作。若要更改表的架构,请使用 MoveTable。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 表的新名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加执行 SQL 命令的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL。 + 指示是否应在用于迁移过程的事务之外执行 SQL 的值。如果未提供任何值,则将在事务内执行 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加要执行 SQL 文件的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL 文件。相对路径假定相对于当前 AppDomain 的 BaseDirectory。 + 指示是否应在用于迁移过程的事务之外执行 SQL 的值。如果未提供任何值,则将在事务内执行 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加要执行 SQL 资源文件的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL 资源文件的清单资源名称。 + 包含资源文件的程序集。如果未提供,采用调用的程序集。 + 指示是否应在用于迁移过程的事务之外执行 SQL 的值。如果未提供任何值,则将在事务内执行 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加迁移操作。 + 要添加的迁移操作。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 要在升级过程中执行的操作。 + + + 与对给定模型使用迁移相关的配置。通常将创建派生自 的配置类,而不是使用此类。 + + + 初始化 DbMigrationsConfiguration 类的新实例。 + + + 获取或设置指示是否可接受自动迁移期间的数据丢失的值。如果设置为 false,则将在数据丢失可能作为自动迁移一部分出现时引发异常。 + + + 获取或设置指示迁移数据库时是否可使用自动迁移的值。 + + + 获取或设置为迁移搭建基架时要使用的代码生成器。 + + + 获取或设置在迁移中用于单个命令的超时值。null 值指示将使用基础提供程序的默认值。 + + + 获取或设置字符串,它可用于区分属于此配置的迁移和属于其他使用同一数据库的配置的迁移。该属性使来自多个不同模型的迁移能够应用于一个数据库。 + + + 获取或设置表示要迁移的模型的派生 DbContext。 + + + 存储迁移的默认目录。 + + + 获取设置为与给定数据库提供程序结合使用的历史记录上下文工厂。 + 为数据库提供程序设置的历史记录上下文工厂。 + 要为其获取工厂的数据库提供程序的名称。 + + + 获取设置为用于给定数据库提供程序的 SQL 生成器。 + 为数据库提供程序设置的 SQL 生成器。 + 要为之获取 SQL 生成器的数据库提供程序的名称。 + + + 获取或设置包含基于代码的迁移的程序集。 + + + 获取或设置其中存储基于代码的迁移的子目录。请注意,此属性必须设置为 Visual Studio 项目根目录下子目录的相对路径;它不能设置为绝对路径。 + + + 获取或设置用于基于代码的迁移的命名空间。 + + + 添加一个新工厂,以便创建要用于给定数据库提供程序的 实例。 + 要为之设置 SQL 生成器的数据库提供程序的名称。 + 一个工厂,用于为表示默认架构的给定 创建 实例。 + + + 添加新的要同于给定数据库提供程序的 SQL 生成器。 + 要为之设置 SQL 生成器的数据库提供程序的名称。 + 要使用的 SQL 生成器。 + + + 获取或设置用于重写要迁移的数据库的连接的值。 + + + 与对给定模型使用迁移相关的配置。 + 表示此配置应用于的模型的上下文。 + + + 初始化 DbMigrationsConfiguration 类的新实例。 + + + 确定当前配置是否等于指定的对象。 + 如果当前配置等于指定的对象,则为 true;否则为 false。 + 要与当前配置进行比较的对象。 + + + 获取此实例的哈希函数。 + 此实例的哈希函数。 + + + 返回当前实例的运行时类型。 + 当前实例的运行时类型。 + + + 创建当前对象的浅表副本。 + 当前对象的浅表副本。 + + + 在升级到最新迁移以允许更新种子数据后运行。 + 要用于更新种子数据的上下文。 + + + 返回此配置的字符串表示形式。 + 此配置的字符串表示形式。 + + + DbMigrator 用于将现有迁移应用于数据库。DbMigrator 可用于升级和降级到任何给定迁移。若要基于对模型的更改为迁移搭建基架,请使用 + + + 初始化 DbMigrator 类的新实例。 + 用于迁移过程的配置。 + + + 获取要用于迁移过程的配置。 + + + 获取已应用于目标数据库的所有迁移。 + 迁移的列表。 + + + 获取已在配置的迁移程序集中定义的所有迁移。 + 迁移的列表。 + + + 获取已在程序集中定义但尚未应用于目标数据库的所有迁移。 + 迁移的列表。 + + + 表示应用任何迁移前数据库的状态的迁移 Id。 + + + 将目标数据库更新到给定迁移。 + 要升级/降级到的迁移。 + + + + 的一组扩展方法 + + + 调用 SaveChanges 时,按自定义标识表达式添加或更新实体。等效于数据库术语中的“upsert”操作。此方法在使用迁移设置数据的种子时很有用。 + 实体所属的集。 + 指定在确定是应执行添加操作还是更新操作时应使用的属性的表达式。 + 要添加或更新的实体。 + 要添加或更新的实体类型。 + + + 调用 SaveChanges 时,按键添加或更新实体。等效于数据库术语中的“upsert”操作。此方法在使用迁移设置数据的种子时很有用。 + 实体所属的集。 + 要添加或更新的实体。 + 要添加或更新的实体类型。 + + + 用于配置列的帮助器类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。 + + + 创建新的列定义以存储二进制数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 数组数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 指示是否应将此列配置为时间戳的值。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储布尔数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储字节数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 DateTime 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的精度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 DateTimeOffset 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的精度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Decimal 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的数值精度。 + 列的数值刻度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 指示插入过程中数据库是否会为此列生成值的值。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Double 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 指示指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 创建新的列定义以存储 geography 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 geometry 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 创建新的列定义以存储 GUID 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Integer 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Long 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 创建新的列定义以存储 Short 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Single 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储字符串数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 字符串数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 指示列是否支持 Unicode 内容的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Time 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的精度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 表示用于配置参数的类。 + + + 初始化 类的新实例。 + + + 创建新参数定义以传递 Binary 数据。 + 新构造的参数定义。 + 数组数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 用作此参数的默认值的常量值。 + 用作此参数的默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Boolean 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Byte 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 DateTime 数据。 + 新构造的参数定义。 + 参数的精度。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 DateTimeOffset 数据。 + 新构造的参数定义。 + 参数的精度。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Decimal 数据。 + 新构造的参数定义。 + 参数的数值精度。 + 参数的小数位数。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Double 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 创建新参数定义以传递 geography 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 geometry 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 创建新参数定义以传递 GUID 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Integer 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Long 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 创建新参数定义以传递 Short 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Single 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 String 数据。 + 新构造的参数定义。 + 字符串数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 指示参数是否支持 Unicode 内容的值。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Time 数据。 + 新构造的参数定义。 + 参数的精度。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 用于进一步配置从 上的 CreateTable 调用创建的表的帮助器类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 标识表的列的类型。 + + + 初始化 TableBuilder 类的新实例。 + 要进一步配置的表创建操作。 + 其中创建了表的迁移。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 指定要在表上创建的外键约束。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 对象自身,以便多个调用可以链接在一起。 + 该外键约束面向的表的名称。 + 表示外键属性的 lambda 表达式。C#:t =&gt; t.PropertyOne VB.Net:Function(t) t.PropertyOne 如果外键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.PropertyOne, t.PropertyTwo } VB.Net:Function(t) New With { t.PropertyOne, t.PropertyTwo } + 指示是否应在外键约束上配置级联删除的值。 + 此外键约束的名称。如果未提供名称,则将计算默认名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取当前对象的哈希代码。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 指定要在表上创建的索引。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 对象自身,以便多个调用可以链接在一起。 + 表示要编制索引的属性的 lambda 表达式。C#:t =&gt; t.PropertyOne VB.Net:Function(t) t.PropertyOne 如果要对多个属性编制索引,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.PropertyOne, t.PropertyTwo } VB.Net:Function(t) New With { t.PropertyOne, t.PropertyTwo } + 索引的名称。 + 指示此索引是否是唯一索引的值。 + 指示此索引是否是聚集索引的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 指定表的主键。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 对象自身,以便多个调用可以链接在一起。 + 表示要用作主键的属性的 lambda 表达式。C#:t =&gt; t.Id VB.Net:Function(t) t.Id 如果主键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.Id1, t.Id2 } VB.Net:Function(t) New With { t.Id1, t.Id2 } + 主键的名称。如果未提供,则将生成默认名称。 + 指示此键是否是聚集的主键。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 返回当前对象的字符串表示形式。 + 当前对象的字符串表示形式。 + + + 为基于代码的迁移生成 C# 代码。 + + + 初始化 类的新实例。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成用户可查看和编辑的主代码文件。 + 生成的代码。 + 迁移要执行的操作。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定使用 lambda 表达式的一组列名称。 + 要为之生成代码的列。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码。 + 应为其生成代码的操作。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以指定 的定义。 + 要为之生成代码的列定义。 + 生成的代码要添加到的文本编写器。 + 指示定义中是否包含列名称的值。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以指定 的定义。 + 要为之生成代码的参数定义。 + 生成的代码要添加到的文本编写器。 + 指示定义中是否包含列名称的值。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定数据类型未知的列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 使用 生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 要为之生成代码的操作。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 使用迁移元数据生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 为可能为 null 的给定注释值生成代码。默认行为是使用 (如果已注册一个),否则将对注释值调用 ToString。 + 需要代码的注释的名称。 + 要生成的注释值。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 使用相应的转义将标识符用引号引起来以允许它存储在字符串中。 + 保存的标识符。 + 要用引号引起来的标识符。 + + + 从数据库体系结构名称中删除所有无效字符。 + 已擦除的名称。 + 要擦除的名称。 + + + 获取用于给定数据类型的列的类型名称。 + 要在生成的迁移中使用的类型名称。 + 要转换的数据类型。 + + + 生成类特性。 + 生成的代码要添加到的文本编写器。 + 指示是否应为代码隐藏文件生成此类的值。 + + + 为以 WriteClassStart 开头的类生成结束代码。 + 其中应生成代码的命名空间。 + 生成的代码要添加到的文本编写器。 + + + 使用语句和类定义生成命名空间。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + 生成的代码要添加到的文本编写器。 + 生成的类的基类。 + 指示是否应为代码隐藏文件生成此类的值。 + 将为其添加 using 指令的命名空间。如果为 null,则将使用从 GetDefaultNamespaces 返回的命名空间。 + + + 生成属性以在代码隐藏文件中返回源或目标模型。 + 属性的名称。 + 要返回的值。 + 生成的代码要添加到的文本编写器。 + + + 为基于代码的迁移生成代码的提供程序的基类。 + + + 初始化 类的新实例。 + + + 获取所使用的 实例。 + + + 生成应添加到用户项目的代码。 + 生成的代码。 + 迁移的唯一标识符。 + 迁移要执行的操作。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 为生成的所有代码获取必须输出为“using”或“Imports”指令的默认命名空间。 + 命名空间名称的有序列表。 + 指示是否应为代码隐藏文件生成此类的值。 + + + 获取必须输出为可处理给定操作生成的代码的“using”或“Imports”指令的命名空间。 + 命名空间名称的有序列表。 + 将为其生成代码的操作。 + + + 为基于代码的迁移搭建基架以将挂起的模型更改应用于数据库。 + + + 初始化 MigrationScaffolder 类的新实例。 + 要用于搭建基架的配置。 + + + 获取或设置迁移生成的代码中使用的命名空间。默认情况下,此命名空间与传入构造函数的迁移配置对象上的 MigrationsNamespace 相同。对于 VB.NET 项目,此命名空间将需要更新为将项目的根命名空间考虑进去。 + + + 为基于代码的迁移搭建基架以将挂起的所有模型更改应用于数据库。 + 已搭建基架的迁移。 + 要用于已搭建基架的迁移的名称。 + + + 为基于代码的迁移搭建基架以将挂起的所有模型更改应用于数据库。 + 已搭建基架的迁移。 + 要用于已搭建基架的迁移的名称。 + 是否包括模型更改。 + + + 为与之前运行的数据库初始值设定项对应的基于代码的初始迁移搭建基架。 + 已搭建基架的迁移。 + + + 表示已搭建基架并准备写入文件的基于代码的迁移。 + + + 初始化 类的新实例。 + + + 获取或设置应存储在代码隐藏文件中的已搭建基架的迁移代码。 + + + 获取或设置此迁移应保存在其中的用户项目中的子目录。 + + + 获取或设置迁移是否已重新搭建基架。 + + + 获取或设置用于此迁移的编程语言。通常用于生成的代码的文件扩展名。 + + + 获取或设置此迁移的唯一标识符。通常用于生成的代码的文件名。 + + + 获取要添加到迁移资源文件中的字符串资源的字典。 + + + 获取或设置用户可编辑的已搭建基架的迁移代码。 + + + 设计时工具用于运行需要与正在 Visual Studio 中编辑的应用程序进行交互的迁移相关命令的帮助器类。由于应用程序处于编辑状态,因此需要在单独的 AppDomain 中加载程序集以确保始终加载的是最新版本。还将复制启动项目中的 App/Web.config 文件以确保应用所有配置。 + + + 初始化 ToolingFacade 类的新实例。 + 包含要使用的迁移配置的程序集的名称。 + 包含要使用的 DbContext 的程序集的名称。 + 要使用的迁移配置的命名空间限定名称。 + 包含已编译程序集的工作目录。 + 启动项目中的配置文件的路径。 + 启动项目中的应用程序数据目录的路径。通常,App_Data 目录用于 Web 应用程序,或者工作目录用于可执行文件。 + 与要迁移的数据库的连接。如果未提供,则将使用上下文的默认连接。 + + + 释放 类的当前实例所使用的资源。 + + + 释放由外观使用的所有资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 释放由 facade 使用的所有非托管资源。 + + + 获取派生自 的类型的完全限定名。 + 找到的上下文类型。 + 上下文类型的名称。如果为 nul,将返回在程序集中找到的单个上下文类型。 + + + 获取派生自 的所有类型的完全限定名。 + 找到的所有上下文类型。 + + + 获取已应用于数据库的所有迁移的列表。 + 已应用迁移的 ID。 + + + 获取尚未应用于数据库的所有迁移的列表。 + 挂起的迁移的 ID。 + + + 获取或设置要运行以记录信息的操作。 + + + 获取或设置要运行以记录详细信息的操作。 + + + 获取或设置要运行以记录警告的操作。 + + + 为基于代码的迁移搭建基架以应用所有挂起的模型更改。 + 已搭建基架的迁移。 + 生成的迁移的名称。 + 生成的迁移的编程语言。 + 迁移将添加到的项目的根命名空间。 + 是否包括模型更改。 + + + 为与之前运行的数据库初始值设定项对应的基于代码的初始迁移搭建基架。 + 已搭建基架的迁移。 + 生成的迁移的编程语言。 + 迁移将添加到的项目的根命名空间。 + + + 生成 SQL 脚本以在两个迁移之间进行迁移。 + 生成的 SQL 脚本。 + 要从其进行更新的迁移。如果未提供,则将生成更新当前数据库的脚本。 + 要更新到的迁移。如果未提供,则将生成更新到最新迁移的脚本。 + 指示是否可接受自动迁移期间的数据丢失的值。 + + + 将数据库更新到指定的迁移。 + 要迁移到的迁移的 ID。如果未提供,则会将数据库更新到最新迁移。 + 指示是否可接受自动迁移期间的数据丢失的值。 + + + 为基于代码的迁移生成 VB.Net 代码。 + + + 初始化 类的新实例。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成用户可查看和编辑的主代码文件。 + 生成的代码。 + 迁移要执行的操作。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定使用 lambda 表达式的一组列名称。 + 要为之生成代码的列。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码。 + 应为其生成代码的操作。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以指定 的定义。 + 要为之生成代码的列定义。 + 生成的代码要添加到的文本编写器。 + 指示定义中是否包含列名称的值。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为其生成代码的参数模型定义。 + 生成的代码要添加到的文本编写器。 + 为 true 则在定义中包含列名称;否则为 false。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定数据类型未知的列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 使用迁移元数据生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 迁移要执行的操作。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 使用迁移元数据生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 为可能为 null 的给定注释值生成代码。默认行为是使用 (如果已注册一个),否则将对注释值调用 ToString。 + 需要代码的注释的名称。 + 要生成的注释值。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以便重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以便重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 使用相应的转义将标识符用引号引起来以允许它存储在字符串中。 + 保存的标识符。 + 要用引号引起来的标识符。 + + + 从数据库体系结构名称中删除所有无效字符。 + 已擦除的名称。 + 要擦除的名称。 + + + 获取用于给定数据类型的列的类型名称。 + 要在生成的迁移中使用的类型名称。 + 要转换的数据类型。 + + + 生成类特性。 + 生成的代码要添加到的文本编写器。 + 指示是否应为代码隐藏文件生成此类的值。 + + + 为以 WriteClassStart 开头的类生成结束代码。 + 其中应生成代码的命名空间。 + 生成的代码要添加到的文本编写器。 + + + 使用语句和类定义生成命名空间。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + 生成的代码要添加到的文本编写器。 + 生成的类的基类。 + 指示是否应为代码隐藏文件生成此类的值。 + 将为其添加 Imports 指令的命名空间。如果为 null,则将使用从 GetDefaultNamespaces 返回的命名空间。 + + + 生成属性以在代码隐藏文件中返回源或目标模型。 + 属性的名称。 + 要返回的值。 + 生成的代码要添加到的文本编写器。 + + + 此类由 Code First 迁移用于读取和写入数据库中的迁移历史记录。要对迁移历史记录表进行自定义,您可以从此类派生并重写 OnModelCreating。派生的实例可以使用 基于每个迁移配置注册,或使用 全局注册。 + + + 初始化 HistoryContext 类的新实例。如果要创建派生历史记录上下文,通常将公开一个构造函数,接受这同样的这些参数,然后将它们传递给此基构造函数。 + 要用于新的上下文的现有连接。 + 要迁移的模型的默认架构。如果未在 OnModelCreating 中配置另一架构,则此架构将用于迁移历史记录表。 + + + 获取用于查找以前为此上下文生成的模型的键。这用于避免在每次创建新的上下文实例时处理 OnModelCreating 并计算模型。默认情况下,此属性返回默认架构。在多数情况下,您不需要重写此属性。但是,如果您的 OnModelCreating 实现包含导致为同一数据库提供程序和默认架构生成不同模型的条件逻辑,应重写此属性并计算相应的键。 + + + 获取要迁移的模型的默认架构。如果未在 OnModelCreating 中配置另一架构,则此架构将用于迁移历史记录表。 + + + 用于迁移历史记录表的默认名称。 + + + 获取或设置可用于读取和写入 实例的 + + + 应用迁移历史记录表的默认配置。如果重写此方法,建议在应用您的自定义配置前调用这个基实现。 + 定义要创建的上下文的模型的生成器。 + + + 此类由 Code First 迁移用于读取和写入数据库中的迁移历史记录。 + + + 初始化 类的新实例。 + + + 获取或设置一个键,该键表示行应用的上下文。 + + + 获取或设置此行表示的迁移的 ID。 + + + 获取或设置此迁移应用后模型的状态。 + + + 获取或设置创建此条目的实体框架的版本。 + + + 表示自动迁移将导致数据丢失时出现的错误。 + + + 初始化 AutomaticDataLossException 类的新实例。 + + + 初始化 AutomaticDataLossException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 表示在应用最后一个迁移后仍然存在挂起的模型更改并且禁用了自动迁移时出现的错误。 + + + 初始化 AutomaticMigrationsDisabledException 类的新实例。 + + + 初始化 AutomaticMigrationsDisabledException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 显式实现,用于防止某些成员在已搭建基架的迁移的 IntelliSense 中出现。 + + + 将自定义 添加到迁移中。鼓励自定义操作实现人员在 上创建扩展方法,为添加新操作提供 Fluent 样式的 API。 + 要添加的操作。 + + + 提供有关基于代码的迁移的其他元数据。 + + + 获取迁移的唯一标识符。 + + + 获取此迁移运行前模型的状态。 + + + 获取此迁移运行后模型的状态。 + + + 表示 Code First 迁移管道内出现的错误。 + + + 初始化 MigrationsException 类的新实例。 + + + 使用序列化数据初始化 MigrationsException 类的新实例。 + 包含有关正在发生的异常的序列化对象数据的 。 + 包含有关源或目标的上下文信息的 。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 可用于迁移过程的记录器的基类。 + + + 初始化 类的新实例。 + + + 记录信息性消息。 + 要记录的消息。 + + + 记录只应在用户请求详细输出时呈现给他们的一些其他信息。 + 要记录的消息。 + + + 记录用户应了解的警告。 + 要记录的消息。 + + + 当由于某些现有迁移尚未应用到数据库,导致无法执行操作时引发。 + + + 初始化 MigrationsPendingException 类的新实例。 + + + 初始化 MigrationsPendingException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsPendingException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 表示包装核心 的修饰器的基类。 + + + 初始化 类的新实例。 + 此修饰器将包装的迁移程序。 + + + 获取要用于迁移过程的配置。 + 要用于迁移过程的过程。 + + + 获取已应用于数据库的迁移的列表。 + 迁移 ID 的列表。 + + + 获取程序集中定义的迁移的列表。 + 迁移 ID 的列表。 + + + 获取尚未应用于数据库的挂起的迁移的列表。 + 迁移 ID 的列表。 + + + 将目标数据库更新到最新迁移。 + + + 将目标数据库更新到给定迁移。 + 要升级/降级到的迁移。 + + + 在迁移操作期间提供日志记录的修饰器。 + + + 初始化 MigratorLoggingDecorator 类的新实例。 + 此修饰器将包装的迁移程序。 + 消息将写入到的记录器。 + + + 生成 SQL 脚本而不是将更改应用于数据库的修饰器。使用此修饰器包装 将防止 将任何更改应用于目标数据库。 + + + 初始化 MigratorScriptingDecorator 类的新实例。 + 此修饰器将包装的迁移程序。 + + + 生成更新数据库的脚本。 + 生成的 SQL 脚本。 + 要从其进行更新的迁移。如果未提供,则将生成更新当前数据库的脚本。 + 要更新到的迁移。如果未提供,则将生成更新到最新迁移的脚本。 + + + 表示将添加到表中的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AddColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列应添加到的表的名称。 + 将添加的列的详细信息。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将添加的列的详细信息。 + + + 获取表示删除已添加列的操作。 + + + 获取一个值,该值指示更改是否具有破坏性。 + 如果更改具有破坏性,则为 true;否则为 false。 + + + 获取列应添加到的表的名称。 + + + 表示将添加到表中的外键约束。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AddForeignKeyOperation 类的新实例。还应填充 PrincipalTable、PrincipalColumns、DependentTable 和 DependentColumns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取或设置指示是否应在外键约束上配置级联删除的值。 + + + 获取在外键列上创建索引的操作。 + 添加索引的操作。 + + + 获取删除外键约束的操作。 + + + 获取或设置一个值,该值指示此更改是否将导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 外键约束应面向的列的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 表示向表添加主键。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AddPrimaryKeyOperation 类的新实例。还应填充 Table 和 Columns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除主键的操作。 + + + 获取或设置此键是否为聚集主键。 + + + 表示更改现有列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AlterColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所属表的名称。 + 列应更改为的内容的详细信息。 + 指示此更改是否会导致数据丢失的值。 + 还原对此列的更改的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 AlterColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所属表的名称。 + 列应更改为的内容的详细信息。 + 指示此更改是否会导致数据丢失的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取列的新定义。 + + + 获取表示还原更改的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此更改是否会导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 获取列所属表的名称。 + + + 表示更改现有存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。 + SQL 中表示的存储过程的主体。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。始终返回 + + + 表示对表中的自定义注释所做的更改。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 其中注释已更改的表的名称。 + 表中已更改的自定义注释。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表中已更改的自定义注释。 + 表中已更改的自定义注释。 + + + 获取要包括在表中的注释已更改的列。 + 要包括在其注释已更改的表中的列。 + + + 获取此操作的反向操作,以便注释将在应用此操作之前恢复原样。 + 此操作的方向操作,以便注释将在应用此操作之前恢复原样。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取其中注释已更改的表的名称。 + 其中注释已更改的表的名称。 + + + 表示有关列的信息。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 ColumnModel 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 此列的数据类型。 + + + 初始化 ColumnModel 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 此列的数据类型。 + 有关数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 获取或设置列中已更改的自定义注释。 + + + 获取与此列的数据库类型对应的 CLR 类型的默认值。 + + + 获取与此列的数据库类型对应的 CLR 类型。 + + + 获取或设置指示此列的值是否由使用标识模式的数据库生成的值。 + + + 确定此列的数据类型是否窄于另一列的。用于确定将提供的列定义更改为此定义是否会导致数据丢失。 + 如果此列的数据类型更窄,则为 True。 + 要与之比较的列。 + 正使用的数据库提供程序的详细信息。 + + + 获取或设置指示此列是否可存储 null 值的值。 + + + 获取或设置一个值,指示是否应将此属性模型配置为时间戳。 + + + 表示创建数据库索引。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 CreateIndexOperation 类的新实例。还应填充 Table 和 Columns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除此索引的操作。 + + + 获取或设置此索引是否为聚集索引。 + + + 获取或设置一个值,该值指示此更改是否将导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 获取或设置指示此索引是否是唯一索引的值。 + + + 要向数据库中添加新存储过程的迁移操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。 + SQL 中表示的存储过程的主体。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除存储过程的操作。 + + + 表示创建表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要创建的表的名称。 + 要创建的表中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要创建的表的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取要创建的表中存在的自定义注释。 + 要创建的表中存在的自定义注释。 + + + 获取要包含在新表中的列。 + 要包含在新表中的列。 + + + 获取删除表的操作。 + 删除表的操作。 + + + 获取指示此操作是否会导致数据丢失的值。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要创建的表的名称。 + 要创建的表的名称。 + + + 获取或设置新表的主键。 + 新表的主键。 + + + 表示将从表中删除的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 要删除的列中存在的自定义注释。可能为 null 或为空。 + 表示还原删除操作的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 要删除的列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 表示还原删除操作的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表示还原删除列的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要删除的列的名称。 + + + 获取要删除的列中存在的自定义注释。 + + + 获取应从中删除列的表的名称。 + + + 表示将从表中删除的外键约束。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表示还原删除外键约束的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 类的新实例。还应填充 PrincipalTable、DependentTable 和 DependentColumns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除外键列上关联的索引的操作。 + 删除索引的操作。 + + + 获取表示还原删除外键约束的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + 表示还原删除外键约束的操作。 + + + 获取一个值,该值指示更改是否具有破坏性。 + 如果更改具有破坏性,则为 true;否则为 false。 + + + 表示删除现有索引。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropIndexOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表示还原删除索引的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropIndexOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表示还原删除索引的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 表示从表中删除主键。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropPrimaryKeyOperation 类的新实例。还应填充 Table 和 Columns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 在更改迁移历史记录表时使用,以便可以重新构建表,而不是简单地删除和添加主键。 + 用于迁移历史记录表的创建表操作。 + + + 获取添加主键的操作。 + + + 从数据库中删除存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的存储过程的名称。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。始终返回 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取要删除的存储过程的名称。 + 要删除的存储过程的名称。 + + + 表示删除现有表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 要删除的表的列中存在的自定义注释。可能为 null 或为空。 + 表示还原删除表的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 要删除的表的列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 表示还原删除表的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表示还原删除表的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要删除的表的名称。 + + + 获取要删除的表中存在的自定义注释。 + + + 获取要删除的表的各列中的自定义注释。 + + + 影响外键约束的更改的基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 ForeignKeyOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 外键列的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置其中存在外键列的表的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取指示是否为此外键约束提供了特定名称的值。 + + + 获取或设置此外键约束的名称。如果未提供名称,则将计算默认名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置外键约束面向的表的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 表示对迁移历史记录表的 DML 更改的操作。迁移历史记录表用于存储已应用于数据库的迁移的日志。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 HistoryOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表示要应用于历史记录表的操作的命令目录树序列。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 表示要应用于历史记录表的操作的命令序列。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 影响索引的操作的常规基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 IndexOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 根据提供的列名创建一个默认索引名称。 + 默认索引名称。 + 用于创建默认索引名称的列名。 + + + 获取已编制索引的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取指示是否为此索引提供了特定名称的值。 + + + 获取或设置此索引的名称。如果未提供名称,则将计算默认名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置此索引所属的表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 表示修改数据库架构的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 MigrationOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取提供程序可能会处理的其他参数。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取将还原此操作的操作。 + + + 获取指示此操作是否会导致数据丢失的值。 + + + 表示将存储过程移动到数据库中的新架构。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的存储过程的名称。 + 存储过程的新架构。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取要移动的存储过程的名称。 + 要移动的存储过程的名称。 + + + 获取存储过程的新架构。 + 存储过程的新架构。 + + + 表示将表从一个架构移至另一个架构。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 MoveTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的表的名称。 + 要将表移至的架构的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 在更改迁移历史记录表时使用,以便可以将数据移到新表。 + 模型的上下文键。 + + + 在更改迁移历史记录表时使用,以便可以重新构建表,而不是简单地删除和添加主键。 + 用于迁移历史记录表的创建表操作。 + + + 获取将表移回其原始架构的操作。 + + + 获取一个值,该值指示此更改是否将导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 获取一个指示表是否为系统表的值。 + 如果表是系统表,则为 true;否则为 false。 + + + 获取要移动的表的名称。 + + + 获取要将表移至的架构的名称。 + + + 表示一项可能因不受目标数据库提供程序的支持而无法执行的迁移操作。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 表示有关参数的信息。 + + + 使用指定类型初始化 ParameterModel 类的新实例。 + 此参数的数据类型。 + + + 使用指定类型和类型用法初始化 ParameterModel 类的新实例。 + 此参数的数据类型。 + 有关数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 获取或设置一个指示此实例是否为 out 参数的值。 + 如果此实例是 out 参数,则为 true;否则为 false。 + + + 用于表示影响主键的操作的常规基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 PrimaryKeyOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 返回主键的默认名称。 + 默认主键名称。 + 目标表名。 + + + 获取组成主键的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取指示是否为此主键提供了特定名称的值。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取或设置此主键的名称。如果未提供名称,则将计算默认名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置包含主键的表的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 影响存储过程的迁移操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。 + SQL 中表示的存储过程的主体。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取 SQL 中表示的存储过程的主体。 + SQL 中表示的存储过程的主体。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取存储过程的名称。 + 存储过程的名称。 + + + 获取存储过程的参数。 + 存储过程的参数。 + + + 表示有关实体属性的信息。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 PropertyModel 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 此属性模型的数据类型。 + 有关数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 获取或设置要用作此属性模型的默认值的常量值。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置用作此属性模型的默认值的 SQL 表达式。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置一个指示此属性模型的长度是否固定的值。仅对数组数据类型有效。 + + + 获取或设置一个指示此属性模型是否支持 Unicode 字符的值。仅对文本数据类型有效。 + + + 获取或设置此属性模型的最大长度。仅对数组数据类型有效。 + + + 获取或设置属性模型的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置此属性模型的精度。仅对十进制数据类型有效。 + + + 获取或设置此属性模型的小数位数。仅对十进制数据类型有效。 + + + 获取或设置要用于此属性模型的提供程序特定数据类型。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取此属性模型的数据类型。 + + + 获取有关此属性模型的数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 表示重命名现有列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 RenameColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所属表的名称。 + 要重命名的列的名称。 + 列的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取还原重命名的操作。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要重命名的列的名称。 + + + 获取列的新名称。 + + + 获取列所属表的名称。 + + + 表示现有索引的重命名操作。 + + + 初始化 RenameIndexOperation 类的新实例。 + 索引所属表的名称。 + 要重命名的索引的名称。 + 索引的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取还原索引原来名称的操作。 + 还原索引原来名称的操作。 + + + 获取是否重命名索引对操作具有破坏性。 + 如果重命名索引对操作具有破坏性,则为 true;否则为 false。 + + + 获取要重命名的索引的名称。 + 要重命名的索引的名称。 + + + 获取索引的新名称。 + 索引的新名称。 + + + 获取索引所属表的名称。 + 索引所属表的名称。 + + + 表示重命名数据库中的一个存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的存储过程的名称。 + 存储过程的新名称。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取要重命名的存储过程的名称。 + 要重命名的存储过程的名称。 + + + 获取存储过程的新名称。 + 存储过程的新名称。 + + + 表示重命名现有表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 RenameTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的表的名称。 + 表的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取还原重命名的操作。 + + + 获取一个值,该值指示更改是否具有破坏性。 + 如果更改具有破坏性,则为 true;否则为 false。 + + + 获取要重命名的表的名称。 + + + 获取表的新名称。 + + + 表示要直接对目标数据库执行的提供程序特定 SQL 语句。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 SqlOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要执行的 SQL。 + + + 获取或设置指示是否应在用于进行迁移过程事务的事务范围外执行此语句的值。如果设置为 true,则在迁移过程失败时,不会回滚此操作。 + + + 在对更新数据库操作编写脚本以存储已对数据库执行的操作时使用。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 用于确定是否需要对数据库应用此迁移的查询。这用于生成可在任何版本中对数据库运行的幂等 SQL 脚本。 + + + 为此更新数据库操作添加迁移。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 迁移的 ID。 + 迁移所应用的各项操作。 + + + 用于确定是否需要对数据库应用此迁移的查询。这用于生成可在任何版本中对数据库运行的幂等 SQL 脚本。 + + + 获取一个值,以指示其中任何操作是否会导致数据丢失。 + + + 获取在更新数据库期间应用的迁移。 + 在更新数据库期间应用的迁移。 + + + 表示要应用于数据库的迁移。 + + + 获取迁移的 ID。 + 迁移的 ID。 + + + 获取此迁移所应用的各项操作。 + 此迁移所应用的各项操作。 + + + 将提供程序不可知的迁移操作转换为数据库提供程序特定 SQL 命令的提供程序的常规基类。 + + + 初始化 类的新实例。 + + + 使用指定 中的 Facet 为指定 生成存储类型用法。 + 特定于存储的 TypeUsage + 存储类型的名称。 + 目标属性。 + + + 将一组迁移操作转换为数据库提供程序特定 SQL。 + 为执行迁移操作而要执行的 SQL 语句的列表。 + 要转换的操作。 + 表示将面向的数据库版本的标记。 + + + 为存储过程生成 SQL 主体。 + 存储过程的 SQL 主体。 + 表示针对插入、更新或删除操作的命令的命令目录树。 + 影响了参数名称的行。 + 提供程序清单标记。 + + + 获取或设置提供程序清单。 + 提供程序清单。 + + + 表示已转换为 SQL 语句的迁移操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。 + + + 为数据库提供程序获取或设置批处理终止符。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 数据库提供程序的批处理终止符。 + + + 获取或设置为执行此迁移操作而要执行的 SQL。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置指示是否应在用于进行迁移过程事务的事务范围外执行此语句的值。如果设置为 true,则在迁移过程失败时,不会回滚此操作。 + + + 相同,但以部分信任模式运行,添加所生成缩进字符串的显式缓存,同时将仅包含 \r\n 或 \n 的字符串的写入识别为写入行,以确保在下一行正确缩进。 + + + 使用指定的文本编写器和默认 Tab 字符串,初始化 IndentedTextWriter 类的新实例。请注意,传递到此构造函数的编写器必须使用 属性指定的 + 用于输出的 。 + + + 使用指定的文本编写器和 Tab 字符串,初始化 IndentedTextWriter 类的新实例。请注意,传递到此构造函数的编写器必须使用 属性指定的 + 用于输出的 。 + 用于缩进的 Tab 字符串。 + + + 关闭正在向其写入的文档。 + + + 指定将由基础 TextWriter 使用的区域性。此静态属性为只读。请注意,传递到 的构造函数之一的任何编写器都必须使用此相同的区域性。区域性为 + + + 生成表示当前新行缩进级别的字符串。 + 一个空字符串,或者是包含所指定 Tab 字符串 .Indent 级别值的字符串。 + + + 指定默认 Tab 字符串。此字段为常数。 + + + 获取供文本编写器使用的编码。 + 指示供文本编写器使用的编码的 + + + 刷新流。 + + + 获取或设置要缩进的空格数。 + 要缩进的空格数。 + + + 获取要使用的 + 要使用的 + + + 获取或设置要使用的换行符。 + 要使用的换行符。 + + + 根据 属性为每个缩进级别输出一次 Tab 字符串。 + + + 将 Boolean 值的文本表示形式写入文本流。 + 要写入的 Boolean 值。 + + + 将字符写入文本流。 + 要写入的字符。 + + + 将字符数组写入文本流。 + 要写入的字符数组。 + + + 将字符的子数组写入文本流。 + 要从中写出数据的字符数组。 + 在缓冲区中开始索引。 + 要写入的字符数。 + + + 将 Double 的文本表示形式写入文本流。 + 要写入的 double。 + + + 将整数的文本表示形式写入文本流。 + 要写入的整数。 + + + 将 8 字节整数的文本表示形式写入文本流。 + 要写入的 8 字节整数。 + + + 将对象的文本表示形式写入文本流。 + 要写入的对象。 + + + 将 Single 的文本表示形式写入文本流。 + 要写入的 single。 + + + 将指定的字符串写入文本流。 + 要写入的字符串。 + + + 使用与指定语义相同的语义写出已格式化的字符串。 + 格式化字符串。 + 要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出已格式化的字符串。 + 要使用的格式化字符串。 + 第一个要写入已格式化字符串的对象。 + 第二个要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出已格式化的字符串。 + 要使用的格式化字符串。 + 要输出的参数数组。 + + + 写入一个行结束符。 + + + 将后跟行结束符的 Boolean 的文本表示形式写入文本流。 + 要写入的 Boolean。 + + + 将后跟行结束符的字符写入文本流。 + 要写入的字符。 + + + 将后跟行结束符的字符数组写入文本流。 + 要写入的字符数组。 + + + 将后跟行结束符的字符子数组写入文本流。 + 要从中写出数据的字符数组。 + 在缓冲区中开始索引。 + 要写入的字符数。 + + + 将后跟行结束符的 Double 的文本表示形式写入文本流。 + 要写入的 double。 + + + 将后跟行结束符的整数的文本表示形式写入文本流。 + 要写入的整数。 + + + 将后跟行结束符的 8 字节整数的文本表示形式写入文本流。 + 要写入的 8 字节整数。 + + + 将后跟行结束符的对象的文本表示形式写入文本流。 + 要写入的对象。 + + + 将后跟行结束符的 Single 的文本表示形式写入文本流。 + 要写入的 single。 + + + 将后跟行结束符的指定字符串写入文本流。 + 要写入的字符串。 + + + 使用与指定语义相同的语义写出后跟行结束符的已格式化字符串。 + 格式化字符串。 + 要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出后跟行结束符的已格式化字符串。 + 要使用的格式化字符串。 + 第一个要写入已格式化字符串的对象。 + 第二个要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出后跟行结束符的已格式化字符串。 + 要使用的格式化字符串。 + 要输出的参数数组。 + + + 将后跟行结束符的 UInt32 的文本表示形式写入文本流。 + 要输出的 UInt32。 + + + 将指定字符串写入无制表符的行。 + 要写入的字符串。 + + + 允许为模型中的复杂类型执行配置。可以通过对 使用 ComplexType 方法来获取 ComplexTypeConfiguration,也可以通过对 使用 Configurations 属性来注册从 ComplexTypeConfiguration 派生的自定义类型。 + 要配置的复杂类型。 + + + 初始化 ComplexTypeConfiguration 的一个新实例 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与指定对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 特定类型的哈希函数。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 ComplexTypeConfiguration 实例,以便多个调用可以链接在一起。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要忽略的属性的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 允许为模型中的实体类型执行配置。可以通过对 使用 Entity 方法来获取 EntityTypeConfiguration,也可以通过对 使用 Configurations 属性来注册从 EntityTypeConfiguration 派生的自定义类型。 + 要配置的实体类型。 + + + 初始化 EntityTypeConfiguration 的一个新实例 + + + 返回指定的配置模型是否等于当前配置模型。 + 如果指定的配置模型等于当前配置模型,则为 true;否则为 false。 + 要与当前对象进行比较的模型。 + + + 返回指定配置模型的哈希函数。 + 指定模型生成器的哈希函数。 + + + 获取当前模型配置的类型。 + 当前模型配置的类型。 + + + 配置要用于此实体类型的实体集名称。只能为每个集中的基类型配置实体集名称。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 实体集的名称。 + + + 配置此实体类型的主键属性。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 表示要用作主键的属性的 lambda 表达式。C#:t =&gt; t.Id VB.Net:Function(t) t.Id 如果主键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.Id1, t.Id2 } VB.Net:Function(t) New With { t.Id1, t.Id2 } + 键的类型。 + + + 从此实体类型配置一对多关系。 + 可用于进一步配置关系的配置对象。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 关系另一端的实体的类型。 + + + 从此实体类型配置可选关系。实体类型的实例将能保存到数据库,而无需指定此关系。数据库中的外键可为 null。 + 可用于进一步配置关系的配置对象。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 关系另一端的实体的类型。 + + + 通过此实体类型配置必需关系。除非指定此关系,否则实体类型的实例将无法保存到数据库。数据库中的外键不可为 null。 + 可用于进一步配置关系的配置对象。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 关系另一端的实体的类型。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要忽略的属性的类型。 + + + 允许与派生的实体类型映射到数据库架构的方式相关的高级配置。Map 调用是累加性的,后续调用不会重写已通过 Map 执行的配置。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 执行配置的操作。 + 要配置的派生实体类型。 + + + 允许与此实体类型映射到数据库架构的方式相关的高级配置。默认情况下,任何配置都还会应用于从此实体类型派生的任何类型。可以使用配置派生类型的 Map 的重载,或使用派生类型的 EntityTypeConfiguration,来配置派生类型。可以使用多个 Map 调用,在多个表之间拆分实体的属性。Map 调用是累加性的,后续调用不会重写已通过 Map 执行的配置。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 执行配置的操作。 + + + 将此类型配置为使用插入、更新和删除的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个配置实例,以便可以链接多个调用。 + + + 将此类型配置为使用插入、更新和删除的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 返回模型配置的字符串表示形式。 + 模型生成器的字符串表示形式。 + + + 配置此实体类型映射到的表名。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置此实体类型映射到的表名。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的数据库架构。 + + + 在模型创建过程中,生成无效模型时,由 引发的异常。 + + + 初始化 ModelValidationException 的一个新实例 + + + 使用序列化信息和流下文初始化 类的新实例。 + 序列化信息。 + 流上下文。 + + + 初始化 ModelValidationException 的一个新实例 + 异常消息。 + + + 初始化 ModelValidationException 的一个新实例 + 异常消息。 + 内部异常。 + + + 用于执行关系配置的基类。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 初始化 类的新实例。 + + + 允许为用于修改关系的存储过程执行配置。 + 将从中配置关系的实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 属性的类型。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 将属性配置为具有指定的最大长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。设置“null”将从属性中移除任何最大长度限制。 + + + 将属性配置为用作开放式并发标记。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。默认情况下, 属性是可选的。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为数据库中的行版本。实际数据类型将因使用的数据库提供程序而异。将属性设置为行版本会自动将属性配置为开放式并发标记。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可变长度。默认情况下, 属性为可变长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置可以支持级联删除功能的关系。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 将级联删除配置为对关系启用。 + + + 配置是否对关系启用级联删除。 + 指示是否启用级联删除的值。 + + + 允许实体和复杂类型的派生配置类向 注册。 + + + 添加到 中。只能为模型中的每个类型添加一个 + 同一个 ConfigurationRegistrar 实例,以便多个调用可以链接在一起。 + 要添加的复杂类型配置 + 要配置的复杂类型。 + + + 添加到 中。只能为模型中的每个类型添加一个 + 同一个 ConfigurationRegistrar 实例,以便多个调用可以链接在一起。 + 要添加的实体类型配置。 + 要配置的实体类型。 + + + 发现从给定的程序集中的 继承的所有类型并将每个发现的类型的实例添加到此注册器。 + 同一个 ConfigurationRegistrar 实例,以便多个调用可以链接在一起。 + 包含要添加的模型配置的程序集。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 创建一个约定,配置将用于在数据库中删除实体的存储过程。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取此实例的基础类型。 + 此实例的基础类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 创建一个约定,配置将用于在数据库中插入实体的存储过程。 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 获取当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取与配置关联的类型。 + 与配置关联的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性。 + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性的名称。 + 结果列的名称。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 表示一个配置用于在数据库修改实体的存储过程的约定。 + + + 创建一个约定,配置将用于在数据库中修改实体的存储过程。 + + + 配置用于删除实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 指定此配置是否等于特定对象。 + 如果此配置等于特定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此配置关联的哈希代码。 + 与此配置关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于插入实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 返回 类的字符串表示形式。 + + 类的字符串表示形式。 + + + 配置用于更新实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 标志实体类型或复杂类型的基元属性。 + + + 获取该属性的 + 此属性的 + + + 指定此实例是否等于另一个对象。 + 如果此实例等于另一个对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。 + + + 将属性配置为具有指定的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + 属性的最大长度。 + + + 配置存储过程中用于此属性的参数的名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 参数的名称。 + + + 配置 属性的精度。如果数据库提供程序不支持列的数据类型的精度,则忽略该值。 + 同一个 实例,以便多个调用可以链接在一起。 + 属性的精度。 + + + 配置 属性的精度和小数位数。 + 同一个 实例,以便多个调用可以链接在一起。 + 属性的精度。 + 属性的小数位数。 + + + 将属性配置为用作开放式并发标记。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将此属性配置为实体类型的主键的一部分。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为数据库中的行版本。实际数据类型将因使用的数据库提供程序而异。将属性设置为行版本会自动将属性配置为开放式并发标记。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为支持 Unicode 字符串内容。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 配置属性是否支持 Unicode 字符串内容。 + 同一个 实例,以便多个调用可以链接在一起。 + 指示属性是否支持 Unicode 字符串内容的值。 + + + 将属性配置为可变长度。属性在默认情况下为可变长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 允许自定义 实例使用的约定。可在 System.Data.Entity.ModelConfiguration.Conventions 命名空间中找到默认约定。 + + + 启用 的约定。 + 要启用的约定类型。 + + + 启用 的一个或多个约定。 + 要启用的约定。 + + + 启用 的约定。在指定一个约定后将运行此约定。 + 要启用的约定。 + 在其之后将运行启用的约定的约定类型。 + + + 启用 的配置约定。在指定一个约定前将运行此约定。 + 要启用的约定。 + 在其之前将运行启用的约定的约定类型。 + + + 发现给定程序集中的所有约定并将它们添加到 + 包含要添加的约定的程序集。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 禁用 的约定。可在 System.Data.Entity.ModelConfiguration.Conventions 命名空间中找到可移除的默认约定。 + 要禁用的约定的类型。 + + + 禁用 的一个或多个约定。 + 要禁用的约定。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 允许为模型中的实体类型执行配置。通过轻型约定可使用此配置功能。 + + + 获取此实体类型的 + 此实体类型的 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置要用于此实体类型的实体集名称。只能为每个集中的基类型配置实体集名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 实体集的名称。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性的名称。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性的名称。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 从模型中排除此实体类型,使其不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + 要配置的属性。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + 要配置的属性的名称。 + + + 将此实体类型更改为复杂类型。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将此类型配置为使用插入、更新和删除的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个配置实例,以便可以链接多个调用。 + + + 将此类型配置为使用插入、更新和删除的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 配置在此类型上定义的属性。 + 可用于配置属性的配置对象。 + 要配置的属性。 + + + 配置在此类型上定义的属性。 + 可用于配置属性的配置对象。 + 要配置的属性的名称。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的数据库架构。 + + + 允许为模型中的实体类型执行配置。通过轻型约定可使用此配置功能。 + 实体类型继承的类型。 + + + 获取此实体类型的 + 此实体类型的 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置要用于此实体类型的实体集名称。只能为每个集中的基类型配置实体集名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 实体集的名称。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 表示要用作主键的属性的 lambda 表达式。C#:t =&gt; t.Id VB.Net:Function(t) t.Id 如果主键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.Id1, t.Id2 } VB.Net:Function(t) New With { t.Id1, t.Id2 } + 键的类型。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 进行序列化的字符串或其他类型。 + + + 从模型中排除此实体类型,使其不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要忽略的属性的类型。 + + + 将此实体类型更改为复杂类型。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将此类型配置为使用插入、更新和删除的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个配置实例,以便可以链接多个调用。 + + + 将此类型配置为使用插入、更新和删除的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 配置在此类型上定义的属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的数据库架构。 + + + 创建一个约定,配置将用于在数据库中更新实体的存储过程。 + + + 确定此实例是否与指定对象相同。 + 如果此实例与指定对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 返回与当前实例关联的类型。 + 与当前实例关联的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名称的当前值。 + 参数名称的原始值。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性。 + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性的名称。 + 结果列的名称。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 配置属性的精度。如果数据库提供程序不支持列的数据类型的精度,则忽略该值。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的精度。 + + + 将属性配置为用作开放式并发标记。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。默认情况下, 属性是必需的。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 配置属性的精度和小数位数。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的精度。 + 属性的小数位数。 + + + 将属性配置为用作开放式并发标记。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。默认情况下, 属性是必需的。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 允许为用于删除实体的存储过程执行配置。 + 可使用存储过程进行删除的实体的类型。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 检索当前实例的类型。 + 当前实例的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 配置可以支持在对象模型中公开的外键属性的关系。通过 Code First Fluent API 可使用此配置功能,请参见 + 从属实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 将关系配置为使用在对象模型中公开的外键属性。如果未在对象模型中公开外键属性,则使用 Map 方法。 + 可用于进一步配置关系的配置对象。 + 表示要用作外键的属性的 lambda 表达式。如果外键由多个属性组成,请指定包括这些属性的匿名类型。在使用多个外键属性时,指定这些属性的顺序必须与为主体实体类型配置主键属性的顺序相同。 + 键的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置实体类型或实体类型中属性子集的表和列映射。通过 Code First Fluent API 可使用此配置功能,请参见 + 要映射的实体类型。 + + + 初始化 类的新实例。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 重新映射从基类型继承的所有属性。当将派生类型配置为映射到单独的表时,这会使所有属性都包含在该表中,而不仅仅是非继承的属性。这称为“每个具体类型一张表”(TPC) 映射。 + 同一个配置实例,以便可以链接多个调用。 + + + 配置将包含在此映射片段中的属性。如果未调用此方法,则将配置尚未包含在映射片段中的所有属性。 + 针对包含要映射的属性的匿名类型的 lambda 表达式。C#:t =&gt; new { t.Id, t.Property1, t.Property2 } VB.Net:Function(t) New With { p.Id, t.Property1, t.Property2 } + 包含要映射的属性的匿名类型。 + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 配置用于区分继承层次结构中各个类型的鉴别器条件。 + 用于进一步配置鉴别器条件的配置对象。 + 表示要用于鉴别各个类型的属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要用于鉴别各个类型的属性的类型。 + + + 配置用于区分继承层次结构中的各个类型的鉴别器列。 + 用于进一步配置鉴别器列和值的配置对象。 + 鉴别器列的名称。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置要映射到的表名。 + 同一个配置实例,以便可以链接多个调用。 + 表的名称。 + + + 配置要映射到的表名和架构。 + 同一个配置实例,以便可以链接多个调用。 + 表的名称。 + 表的架构。 + + + 配置未在对象模型中公开外键属性的关系的表和列映射。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的 。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 在已使用 配置的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 已使用 HasKey 方法配置的列的名称。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置外键的列名。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 外键列名。在使用多个外键属性时,必须按照为目标实体类型配置主键属性的顺序来指定这些属性。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置外键列所在表的名称。指定的表必须已针对实体类型进行映射。如果要外键位于其自己的表中,则对 使用 Map 方法来执行实体拆分,以创建只有主键属性的表。然后可以使用此方法将外键添加到表。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置外键列所在表的名称和架构。指定的表必须已针对实体类型进行映射。如果要外键位于其自己的表中,则对 使用 Map 方法来执行实体拆分,以创建只有主键属性的表。然后可以使用此方法将外键添加到表。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的架构。 + + + 配置只能支持未在对象模型中公开的外键属性的关系。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象比较的对象 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 将关系配置为使用未在对象模型中公开的外键属性。可通过指定配置操作来自定义列和表。如果指定了空的配置操作,则约定将生成列名。如果在对象模型中公开了外键属性,则使用 HasForeignKey 方法。并非所有关系都支持在对象模型中公开外键属性。 + 可用于进一步配置关系的配置对象。 + 配置外键列和表的操作。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 表示允许为用于插入实体的存储过程执行配置。 + 可使用存储过程进行插入的实体的类型。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取此实例的类型。 + 此实例的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 用于为实体类型或复杂类型配置具有长度方面的列。此配置功能由 Code First Fluent API 公开,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 将列配置为具有指定的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + 列的最大长度。将值设置为 null 将从列中移除任何最大长度限制,并且会将默认长度用于数据库列。 + + + 将列配置为固定长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将列配置为允许使用数据库提供程序支持的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将列配置为可变长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 用于为实体类型或复杂类型配置具有长度方面的属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 将属性配置为具有指定的最大长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。设置为“null”将从属性中移除任何最大长度限制,并且会将默认长度用于数据库列。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可变长度。属性在默认情况下为可变长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 通过实体类型配置多关系。 + 关系源自的实体类型。 + 作为关系目标的实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 将关系配置为 many:many,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 many:many,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 many:optional,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 many:optional,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 many:required,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 many:required,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置 many:many 关系的表和列映射。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 在联接表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置左外键的列名。左外键指向在 HasMany 调用中指定的导航属性的父实体。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 外键列名。在使用多个外键属性时,必须按照为目标实体类型配置主键属性的顺序来指定这些属性。 + + + 配置右外键的列名。右外键指向在 WithMany 调用中指定的导航属性的父实体。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 外键列名。在使用多个外键属性时,必须按照为目标实体类型配置主键属性的顺序来指定这些属性。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置关系的联接表名。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置关系的联接表名和架构。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的架构。 + + + 允许为用于修改多对多关系的存储过程执行配置。 + 将从中配置关系的实体的类型。 + 关系另一端的目标实体的类型。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 检索此当前实例的类型。 + 此当前实例的类型。 + + + 设置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 过程的名称。 + + + 设置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 过程的名称。 + 架构的名称。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 允许为用于修改多对多关系的存储过程执行配置。 + 将从中配置关系的实体的类型。 + 关系另一端的目标实体的类型。 + + + 配置用于删除关系的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于插入关系的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 配置 many:many 关系。通过 Code First Fluent API 可使用此配置功能,请参见 + 在 HasMany 调用中指定的导航属性的父实体类型。 + 在 WithMany 调用中指定的导航属性的父实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于存储关系的外键列和表。 + 同一个 实例,以便多个调用可以链接在一起。 + 配置外键列和表的操作。 + + + 配置将用于修改此关系的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 配置将用于修改此关系的存储过程。 + 同一个 实例,以便多个调用可以链接在一起。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 执行用于在数据库中修改实体的存储过程的配置。 + + + 允许为用于修改实体的存储过程执行配置。 + 可使用存储过程进行修改的实体的类型。 + + + 配置用于删除实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 指定此实例是否等同于指定对象。 + 如果此实例等同于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于插入实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 配置用于更新实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 配置一个条件,该条件用于基于赋给属性的值来区分继承层次结构中的各个类型。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 将条件配置为属性中需要值。对于未向存储此属性的列赋值的行,假定这些行属于此实体类型的基类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 通过实体类型配置可选关系。 + 关系源自的实体类型。 + 作为关系目标的实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 将关系配置为 optional:many,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:many,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 optional:optional,且在关系的另一端无导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:optional,且在关系的另一端有导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 optional:optional,且在关系的另一端无导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:optional,且在关系的另一端有导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。 + + + 将关系配置为 optional:required,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:required,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 通过实体类型配置基元列。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于存储属性的基元列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的基元列的数据类型。 + 同一个 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 将基元列配置为可选列。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将基元列配置为必需列。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 提供用于配置实体类型或复杂类型的基元属性的方法。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定此实例是否与指定对象相同。 + 如果此实例与指定对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 配置存储过程中用于此属性的参数的名称。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 参数名。 + + + 将属性配置为用作开放式并发标记。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 允许基于模型中的属性为轻型约定执行配置。 + + + 允许此约定应用到的属性的配置。 + 执行配置的操作。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在配置期间捕获以后要使用的值时基于谓词筛选此约定应用到的属性。 + 一个 实例,以便多个调用可以链接在一起。 + 用于为每个属性捕获值的函数。如果值为 null,则筛选掉该属性。 + 捕获的值的类型。 + + + 返回表示当前对象的字符串。 + 当前对象。 + + + 基于谓词筛选此约定应用到的属性。 + 一个 实例,以便多个调用可以链接在一起。 + 用于测试每个属性是否满足条件的函数。 + + + 允许基于模型中实体类型的属性和捕获的值为轻型约定执行配置。 + 捕获的值的类型。 + + + 允许此约定应用到的属性的配置。 + 使用捕获的值对 执行配置的操作。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 用于配置映射片段中的属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 PropertyMappingConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储映射片段中的属性的数据库列的名称。 + 同一个 PropertyMappingConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 通过实体类型配置必需关系。 + 关系源自的实体类型。 + 作为关系目标的实体类型。 + + + 指定指定的对象是否与当前对象相同。 + 如果指定的对象与当前对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与当前对象关联的哈希代码。 + 与当前对象关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回当前对象的字符串表示形式。 + 当前对象的字符串表示形式。 + + + 将关系配置为 required:many,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:many,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 required:optional,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:optional,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 required:required,且在关系的另一端无导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:required,且在关系的另一端有导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 required:required,且在关系的另一端无导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:required,且在关系的另一端有导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置用于存储字符串值的数据库列。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 配置数据库列的顺序。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置数据库列的数据类型。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 将属性配置为具有指定的最大长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。如果设置为“null”,将对此列使用默认长度。 + + + 将列配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为允许使用数据库提供程序支持的最大长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为可选列。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为必需。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为支持 Unicode 字符串内容。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置列是否支持 Unicode 字符串内容。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 指示列是否支持 Unicode 字符串内容的值。指定“null”将从列中移除 Unicode 方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将列配置为可变长度。列在默认情况下为可变长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 进行序列化的字符串或其他类型。 + + + 配置用于存储属性的数据库列的名称。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 将属性配置为具有指定的最大长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。设置为“null”将从属性中移除任何最大长度限制,并且会将默认长度用于数据库列。 + + + 将属性配置为用作开放式并发标记。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。默认情况下, 属性是可选的。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为支持 Unicode 字符串内容。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否支持 Unicode 字符串内容。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否支持 Unicode 字符串内容的值。指定“null”将从属性中移除 Unicode 方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可变长度。默认情况下, 属性为可变长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 允许为模型中的类型执行配置。 + 要配置的类型。 + + + 初始化 类的新实例。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 允许基于模型中的实体类型为轻型约定执行配置。 + + + 允许此约定应用到的实体类型的配置。 + 执行配置的操作。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在配置期间捕获以后要使用的值时基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于为每个实体类型捕获值的函数。如果值为 null,则筛选掉该实体类型。 + 捕获的值的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于测试每个实体类型是否满足条件的函数。 + + + 允许基于模型中从通用指定类型继承的实体类型为轻型约定执行配置。 + 此约定应用到的实体类型的通用类型。 + + + 允许此约定应用到的实体类型的配置。 + 执行配置的操作。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在配置期间捕获以后要使用的值时基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于为每个实体类型捕获值的函数。如果值为 null,则筛选掉该实体类型。 + 捕获的值的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于测试每个实体类型是否满足条件的函数。 + + + 允许基于模型中的实体类型和捕获的值为轻型约定执行配置。 + 捕获的值的类型。 + + + 允许此约定应用到的实体类型的配置。 + 使用捕获的值对 执行配置的操作。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 将当前实例的值转换为其等效字符串表示。 + 当前实例的字符串表示形式。 + + + 允许基于模型中从通用指定类型继承的实体类型和捕获的值为轻型约定执行配置。 + 此约定应用到的实体类型的通用类型。 + 捕获的值的类型。 + + + 允许此约定应用到的实体类型的配置。 + 使用捕获的值对 执行配置的操作。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 允许为用于更新实体的存储过程执行配置。 + 可使用存储过程进行更新的实体的类型。 + + + 确定指定对象是否等于此实例对象。 + 如果指定对象等于此实例对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索哈希代码。 + 哈希代码。 + + + 检索此配置的类型。 + 此配置的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 配置用于区分继承层次结构中各个类型的鉴别器列。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于标识通过继承层次结构中其他类型配置的实体类型的鉴别器值。 + 用来配置用于存储鉴别器值的列的配置对象。 + 用于标识实体类型的值。 + 鉴别器值的类型。 + + + 配置用于标识通过继承层次结构中其他类型配置的实体类型的鉴别器值。 + 用来配置用于存储鉴别器值的列的配置对象。 + 用于标识实体类型的值。 + + + 配置用于标识通过继承层次结构中其他类型配置的实体类型的鉴别器值。 + 用来配置用于存储鉴别器值的列的配置对象。 + 用于标识实体类型的值。 + 鉴别器值的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 提供用于在相关类型之间只存在一对导航属性时,将导航属性检测为相互反向的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 从 .NET 属性 (Property) 读取属性 (Attribute) 并根据这些属性 (Attribute) 生成列注释的 Code First 约定的通用类。 + 要发现的属性类型。 + 将创建的注释类型。 + + + 构造一个将创建具有给定名称且使用给定工厂委托的列注释的约定。 + 要创建的注释的名称。 + 用于在各列中创建注释的工厂。 + + + 从 .NET 类型读取属性并根据这些属性生成表注释的 Code First 约定的通用类。 + 要发现的属性类型。 + 将创建的注释类型。 + + + 构造一个将创建具有给定名称且使用给定工厂委托的表注释的约定。 + 要创建的注释的名称。 + 用于在各表中创建注释的工厂。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到指定配置。 + 配置。 + 列属性。 + + + 表示通过 API 应用指定的列排序的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 验证为列提供的排序配置。此基实现是一个空操作。 + 列所属表的名称。 + 表的定义。 + + + 用于应用通过 API 指定的列顺序的约定。如果检测重复配置的列顺序,则此约定引发。 + + + 初始化 类的新实例。 + + + 验证为列提供的排序配置,以确保没有为两个列提供相同的序号。 + 列所属表的名称。 + 表的定义。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 应用具有给定配置和特性的约定。 + 配置。 + 属性。 + + + 表示用于在类型没有主键、没有映射的基类型且没有导航属性的情况下将其配置为复杂类型的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 表示处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 不重写配置的约定。 + + + 派生的类可以使用默认构造函数应用更改模型配置的一组规则。 + + + 开始配置适用于模型中所有属性的轻型约定。 + 约定的配置对象。 + + + 开始配置适用于模型中指定类型的所有基元属性的轻型约定。 + 约定的配置对象。 + 此约定将适用于的属性类型。 + + + 开始配置应用于从指定类型派生或实现指定类型的模型中的所有映射类型的轻型约定。 + 约定的配置对象。 + 此约定将适用于的实体类型。 + + + 开始配置应用于模型中所有映射类型的轻型约定。 + 约定的配置对象。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有给定配置的属性。 + 配置。 + 属性。 + + + 用于为小数属性将精度设置为 18 并将小数位数设置为 2 的约定。 + + + 使用默认值初始化 的新实例。 + + + 使用指定的精度和小数位数初始化 类的新实例。 + Precision + Scale + + + 将此约定应用于属性。 + 项。 + 模型。 + + + 表示用于移动主键属性使其首先出现的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 表示用于基于外键属性的 CLR 可为 null 性区分可选和必需关系的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 表示发现外键属性的约定的基类。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 项。 + 模型。 + + + 如果 应为外键的一部分,则当被重写时,返回 true。 + 如果 dependentProperty 应为外键的一部分,则为 true;否则为 false。 + 所配置的关联类型。 + 依赖端。 + 依赖端的候选属性。 + 主体端实体类型。 + 主体端的键属性,该键属性是外键的候选目标。 + + + 获取约定是否支持具有其间定义的多个关联的实体类型对。 + 如果约定支持具有其间定义的多个关联的实体类型对,则为 true;否则为 false。 + + + 表示为外键引入索引的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 项。 + + + 表示用于处理模型中导航属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 数据库模型。 + + + 表示用于处理在模型中的外键属性上发现的 的实例的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到指定属性。 + 属性信息。 + 要为模型中实体类型执行的配置。 + 从数据库映射中排除的属性或类。 + + + 在创建模型后对模型的概念性部分执行操作的约定。 + 此约定操作的元数据项的类型。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 标识可以添加到 实例或从该实例中移除的约定。 + + + 用于检测主键属性的约定。按优先级顺序的可识别的命名模式为:1. ''Id' 2。[type name]Id。主键检测不区分大小写。 + + + 初始化 类的新实例。 + + + 要匹配 类的约定。 + 要匹配的 类。 + 实体类型。 + 基元属性的集合。 + + + 用于发现属性 (Property) 上的 属性 (Attribute),以及在模型中生成 列注释的约定。 + + + 构造此约定的新实例。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有配置的指定模型。 + 成员信息。 + 配置。 + 属性。 + + + 在创建模型后对模型的数据库部分执行操作的约定。 + 此约定操作的元数据项的类型。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 用于处理在模型中属性上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 表示发现主键属性的约定的基类。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 如果被重写,则返回将成为主键一部分的属性子集。 + 应成为主键一部分的属性。 + 实体类型。 + 实体的基元类型。 + + + 用于将级联删除从多对多关系中涉及的两个表添加到联接表的约定。 + + + 初始化 类的新实例。 + + + 确保在映射继承的属性时不创建无效/不支持的映射的约定 + + + 初始化 类的新实例。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有指定配置的属性。 + 配置。 + 属性。 + + + 用于发现名称是从属导航属性名称和主体类型主键属性名称组合的外键属性的约定。 + + + 初始化 类的新实例。 + + + 匹配依赖的实体模型的键。 + 返回 + 关联类型元数据对象。 + 依赖的关联的端。 + 依赖的属性。 + 主体实体类型 + 主体键属性。 + + + 获取或设置一个值,该值指示约定是否支持多个关联。 + 如果约定支持多个关联,则为 true;否则为 false。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到指定属性。 + 属性信息。 + 要为模型中实体类型执行的配置。 + 从数据库映射中排除的属性或类。 + + + 表示用于处理在模型中类型上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到指定属性。 + 要为模型中实体类型执行的配置。 + 从数据库映射中排除的属性或类。 + + + 提供用于为任何必需关系启用级联删除的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 数据库模型。 + + + 提供用于将从属实体类型的主键配置为一对一关系中外键的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 数据库模型。 + + + 表示用于将实体集名称设置为实体类型名称的复数版本的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 实体集。 + 数据库模型 + + + 表示用于将表名称设置为实体类型名称的复数版本的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 用于发现名称与主体类型主键属性名称匹配的外键属性的约定。 + + + 初始化 类的新实例。 + + + 匹配与约定关联的依赖键属性。 + 匹配的依赖键属性。 + 关联类型。 + 依赖的关联端。 + 依赖的属性。 + 主体实体类型。 + 主体键属性。 + + + 用于处理在模型的基元属性 (Property) 中找到的 CLR 属性 (Attribute) 的约定的基类。 + 要查找的特性的类型。 + + + 初始化 类的新实例。 + + + 对已应用 TAttribute 类型的属性 (Attribute) 的属性 (Property) 应用此约定。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 用于处理在模型的类型属性 (Property) 中找到的 CLR 属性 (Attribute) 的约定的基类。 + 要查找的特性的类型。 + + + 初始化 类的新实例。 + + + 对已应用 TAttribute 类型的属性 (Attribute) 的属性 (Property) 应用此约定。 + 具有该属性 (Attribute) 的属性 (Property) 的成员信息。 + 包含该属性的类的配置。 + 属性。 + + + 表示用于为其类型支持长度方面的属性设置最大长度的约定。默认值为 128。 + + + 使用默认长度初始化 类的新实例。 + + + 使用指定长度初始化 的新实例。 + 属性的最大长度。 + + + 应用具有给定模型配置的约定。 + 项。 + 映射模型。 + + + 应用具有给定模型配置的约定。 + 项。 + 映射模型。 + + + 应用具有给定模型配置的约定。 + 项。 + 映射模型。 + + + 用于处理在模型中导航属性上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 表示用于处理模型中基元属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有给定配置的属性。 + 配置。 + 属性。 + + + 表示为其类型在 SqlCe 为提供程序时支持长度方面的属性设置默认最大长度为 4000 的约定。 + + + 使用默认长度初始化 类的新实例。 + + + 初始化 的新实例。 + 属性的默认最大长度。 + + + 将此约定应用到给定的提供程序。 + 项。 + 模型。 + + + 将此约定应用到给定的提供程序。 + 项。 + 模型。 + + + 表示用于将整数主键配置为标识的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 应用具有给定配置和特性的约定。 + 配置。 + 属性。 + + + 表示用于处理在模型中类型上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 用于处理在模型中找到的 CLR 特性的约定的基类。 + 要查找的特性的类型。 + + + 初始化 类的新实例。 + + + 将此约定应用于已应用 TAttribute 类型的属性的类。 + 包含该属性的类的配置。 + 属性。 + + + 用于发现名称是主体类型名称和主体类型主键属性名称组合的外键属性的约定。 + + + 初始化 类的新实例。 + + + 确定依赖键的属性是否与当前键匹配。 + 如果依赖键的属性与当前键匹配,则为 true;否则为 false。 + 关联类型。 + 端上依赖的关联。 + 依赖的属性。 + 主体实体类型。 + 主体键属性。 + + + 表示大地(圆地球)坐标系中的数据。 + + + 获取指示此 DbGeography 值面积的可为 null 的双精度值,如果此值不表示面,则可能为 null。 + 指示此 DbGeography 值的面积、可以为 null 的双精度值。 + + + 生成此 DbGeography 值的已知二进制表示形式。 + 此 DbGeography 值的已知二进制表示形式。 + + + 生成此 DbGeography 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeography 值的 GML 表示形式的字符串。 + + + 生成此 DbGeography 值的已知文本表示形式。仅包含点的经度和纬度。 + 包含此 DbGeography 值的已知文本表示形式的字符串。 + + + 返回一个表示点并集的地理对象,该并集中所有点与地理实例的距离都小于或等于指定的值。 + 一个地理对象,表示所有点的并集 + 距离。 + + + 获取与坐标系关联的标识符。 + 与坐标系关联的标识符。 + + + 获取地理值 (WGS 84) 的默认坐标系 ID (SRID) + 地理值 (WGS 84) 的默认坐标系 ID (SRID) + + + 计算此 DbGeography 值和另一 DbGeography 值的差异。 + 一个新 DbGeography 值,表示此地理值与其他地理值之间的差异。 + 应计算它与此值的差异的地理值。 + + + 获取给定 值的维度(如果值为集合)或最大的元素维度。 + 给定 值的维度。 + + + 确定此 DbGeography 在空间上是否与指定的 DbGeography 参数不相交。 + 如果其他地理值不与此地理值相交,则为 true;否则为 false。 + 应与此地理值比较不相交性的地理值。 + + + 计算此 DbGeography 值和另一 DbGeography 值中两个最接近的点之间的距离。 + 一个双精度值,指定此地理值和其他地理值中,最接近两点之间的距离。 + 应计算与此值的距离的地理值。 + + + 如果表示地理集合,则从特定位置返回此 DbGeography 值的元素。&amp;lt;param name="index"&amp;gt;此地理值中,应采用该处元素的位置。&amp;lt;/param&amp;gt;&amp;lt;returns&amp;gt;如果此地理值表示其他地理值的集合,则为它当中指定位置处的元素;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值在特定位置处的元素 + 索引。 + + + 如果此 DbGeography 值表示地理集合,则获取它当中的元素个数。&amp;lt;returns&amp;gt;如果此地理值表示其他地理值的集合,则为它当中的元素个数;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值中的元素数目。 + + + 如果此 DbGeography 值表示点,则获取它的海拔(Z 坐标)值。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的海拔(Z 坐标)值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的海拔(Z 坐标)。 + + + 获取表示此值起始点的 DbGeography 值,如果 DbGeography 值不表示曲线,此值可能是 null。 + 表示此值起点的 DbGeography 值。 + + + 基于指定的已知二进制值创建新的 值。 + 使用默认的地理坐标系标识符 (SRID) ()、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 使用默认的地理坐标系标识符 (SRID) ()、由 GML 值定义的新 DbGeography 值。 + 包含地理值的地理标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由 GML 值定义的新 DbGeography 值。 + 包含地理值的地理标记语言 (GML) 表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值创建新的 值。 + 使用默认的地理坐标系标识符 (SRID) ()、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 计算此 DbGeography 值和另一 DbGeography 值的交集。 + 一个新 DbGeography 值,表示此地理值与其他地理值之间的交集。 + 应计算与此值的交集的地理值。 + + + 确定此 DbGeography 值在空间上是否和指定的 DbGeography 参数相交。 + 如果其他地理值与此地理值相交,则为 true;否则为 false。 + 应与此地理值比较相交性的地理值。 + + + 获取指示此 DbGeography 值是否为闭合的可为 null 的布尔值,如果此值不表示曲线,则可能为 null。 + 如果此 DbGeography 值为闭合值,则为 true;否则为 false。 + + + 获取一个可为 null 的布尔值,它指示此 DbGeography 值是否为空。 + 如果此 DbGeography 值为空,则为 true;否则为 false。 + + + 如果此 DbGeography 值表示点,则获取它的纬度坐标。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的纬度坐标值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的纬度坐标。 + + + 获取指示此 DbGeography 值长度的可为 null 的双精度值,如果此值不表示曲线,则可能为 null。 + 指示此 DbGeography 值的长度、可以为 null 的双精度值。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 如果此 DbGeography 值表示点,则获取它的经度坐标。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的经度坐标值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的经度坐标。 + + + 如果此 DbGeography 值表示点,则获取它的 M(度量值)坐标。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的 M(度量值)坐标值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的 M(度量值)坐标。 + + + 返回二进制值中的多线值。 + 二进制值中的多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多线值。 + 已知文本值中的多线值。 + 已知的文本。 + 坐标系标识符。 + + + 返回已知二进制值中的多点值。 + 已知二进制值中的多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多点值。 + 已知文本值中的多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 返回已知二进制值的多多边形值。 + 已知二进制值中的多多边形值。 + 多多边形已知二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多多边形值。 + 已知文本值中的多多边形值。 + 多多边形已知文本值。 + 坐标系标识符。 + + + 如果表示行字符串或线性环,则从特定位置返回此 DbGeography 值的元素。&amp;lt;param name="index"&amp;gt;此地理值中,应采用该处元素的位置。&amp;lt;/param&amp;gt;&amp;lt;returns&amp;gt;如果此地理值表示行字符串或线性环,则为它当中指定位置处的元素;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值在特定位置处的元素 + 索引。 + + + 如果表示行字符串或线性环,则获取此 DbGeography 值中的点数。&amp;lt;returns&amp;gt;如果此地理值表示行字符串或线性环,则为它当中的元素个数;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值中的点数。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 获取将用于此空间类型的操作的空间提供程序。 + + + 获取此 DbGeography 值的表示形式,它对于构造它的基础提供程序是特定的。 + 此 DbGeography 值的表示形式。 + + + 确定此 DbGeography 在空间上是否与指定的 DbGeography 参数相等。 + 如果其他地理值在空间上与此地理值相等,则为 true ;否则为 false。 + 应与此地理值比较相等性的地理值。 + + + 获取 DBGeography 的空间类型名称。 + DBGeography 的空间类型名称。 + + + 获取表示此值起始点的 DbGeography 值,如果 DbGeography 值不表示曲线,此值可能是 null。 + 表示此值起点的 DbGeography 值。 + + + 计算此 DbGeography 值和另一 DbGeography 值的对称差异。 + 一个新 DbGeography 值,表示此地理值与其他地理值的对称差异。 + 应计算与此值的对称差异的地理值。 + + + 返回地理值的字符串表示形式。 + 地理值的字符串表示形式。 + + + 计算此 DbGeography 值和另一 DbGeography 值的并集。 + 一个新 DbGeography 值,表示此地理值与其他地理值之间的并集。 + 应计算与此值的并集的地理值。 + + + 获取或设置此 DbGeography 值的数据协定的可序列化已知表示形式。 + 此 DbGeography 值的数据协定的可序列化的已知表示形式。 + + + + 值的数据协定的可序列化表示形式。 + + + 初始化 类的新实例。 + + + 获取或设置此值的坐标系标识符 (SRID)。 + + + 获取或设置此值的已知二进制表示形式。 + + + 获取或设置此值的已知文本表示形式。 + + + 表示几何形状。 + + + 获取指示此 DbGeometry 值面积的可为 null 的双精度值,如果此值不表示面,则可能为 null。 + 一个可以为 null 的双精度值,指示此 DbGeometry 值的面积。 + + + 生成此 DbGeometry 值的已知二进制表示形式。 + 此 DbGeometry 值的已知二进制表示形式。 + + + 生成此 DbGeometry 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeometry 值的 GML 表示形式的字符串。 + + + 生成此 DbGeometry 值的已知文本表示形式。仅包含点的 X 和 Y 坐标。 + 包含此 DbGeometry 值的已知文本表示形式的字符串。 + + + 获取 DbGeometry 对象的边界。 + DbGeometry 对象的边界。 + + + 返回一个表示所有点并集的几何对象,该并集中所有点与几何实例的距离都小于或等于指定的值。 + 一个几何对象,表示所有点的并集。 + 距离。 + + + 获取表示此 DbGeometry 值的形心的 DbGeometry 值,如果此值不表示面,则可能为 null。 + 一个 DbGeometry 值,表示此 DbGeometry 值的形心。 + + + 确定此 DbGeography 值在空间上是否包含指定的 DbGeography 参数。 + 如果此几何值包含其他几何值,则为 true;否则为 false。 + 应与此几何值比较包含关系的几何值。 + + 为 null。 + + + 获取此 DbGeometry 值的凸包作为另一 DbGeometry 值。 + 用作另一 DbGeometry 值的此 DbGeometry 值的凸包。 + + + 获取此 DbGeometry 对象的坐标系统标识符。 + 此 DbGeometry 对象的坐标系统标识符。 + + + 确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数相交。 + 如果其他几何值与此几何值相交,则为 true;否则为 false。 + 应与此几何值比较的几何值。 + + 为 null。 + + + 获取几何值的默认坐标系统 ID (SRID)。 + 几何值的默认坐标系统 ID (SRID)。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的差异。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的差异。 + 应计算与此值的差异的几何值。 + + 为 null。 + + + 获取给定 值的维度(如果该值为一个集合)或其中最大元素的维度。 + 给定 值的维度。 + + + 确定此 DbGeometry 在空间上是否与指定的 DbGeometry 参数不相交。 + 如果其他几何值与此几何值不相交,则为 true;否则为 false。 + 应与此几何值比较不相交性的几何值。 + + 为 null。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值中两个最接近的点之间的距离。 + 一个双精度值,指定此几何值和其他几何值中最接近的两点之间的距离。 + 应计算与此值的距离的几何值。 + + 为 null。 + + + 如果表示几何集合,则从特定位置返回此 DbGeometry 值的元素。 + 如果此几何值表示其他几何值的集合,则为其在指定位置的元素;否则为 null。 + 在此几何值中应提取元素的位置。 + + + 如果表示几何集合,则获取此 DbGeometry 值中的元素数。 + 如果此几何值表示其他几何值的集合,则为它当中的元素个数;否则为 null。 + + + 如果此 DbGeometry 值表示点,则获取它的海拔(Z 坐标)值。 + 如果此 DbGeometry 表示一个点,则为它的海拔(Z 坐标);否则为 null。 + + + 获取表示此值起始点的 DbGeometry 值,如果 DbGeometry 值不表示曲线,此值可能为 null。 + 表示此值起点的 DbGeometry 值。 + + + 获取此 DbGeometry 值的包络线(最小边界框)作为几何值。 + 此 DbGeometry 值的包络线(最小边界框)。 + + + 获取表示此 DbGeometry 值的外部环的 DbGeometry 值,如果此值不表示多边形,则可能为 null。 + 一个 DbGeometry 值,表示此 DbGeometry 值的外部环。 + + + 基于指定的已知二进制值创建新的 值。 + 使用默认的几何坐标系标识符 ()、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + + 为 null。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 使用默认的几何坐标系标识符 (SRID) ()、由 GML 值定义的新 DbGeometry 值。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + + 为 null。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由 GML 值定义的新 DbGeometry 值。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值创建新的 值。 + 使用默认的几何坐标系标识符 (SRID) ()、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + + 为 null。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 如果表示多边形,则从此 DbGeometry 值返回位于特定位置的内部环。 + 如果此几何值表示多边形,则为其在指定位置的内部环;否则为 null。 + 在此几何值中应提取内部环的位置。 + + + 如果表示多边形,则获取此 DbGeometry 值中的内部环数。 + 如果此几何值表示多边形,则为它当中的元素个数;否则为 null。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的交集。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的交集。 + 应计算与此值的交集的几何值。 + + 为 null。 + + + 确定此 DbGeometry 在空间上是否与指定的 DbGeometry 参数相交。 + 如果其他几何值与此几何值相交,则为 true;否则为 false。 + 应与此几何值比较相交性的几何值。 + + 为 null。 + + + 获取指示此 DbGeometry 值是否为闭合的可为 null 的布尔值,如果此值不表示曲线,则可能为 null。 + 如果此 DbGeometry 值为闭合值,则为 true;否则为 false。 + + + 获取一个可以为 null 的布尔值,该值指示此 DbGeometry 值是否为空;如果此值不表示曲线,则可能为 null。 + 如果此 DbGeometry 值为空,则为 true;否则为 false。 + + + 获取指示此 DbGeometry 值是否为环的可为 null 的布尔值,如果此值不表示曲线,则可能为 null。 + 如果此 DbGeometry 值是一个环,则为 true;否则为 false。 + + + 获取一个可以为 null 的布尔值,该值指示此 DbGeometry 值是否为简单值。 + 如果此 DbGeometry 值简单,则为 true;否则为 false。 + + + 获取一个可以为 null 的布尔值,该值指示此 DbGeometry 值是否有效。 + 如果此 DbGeometry 值有效,则为 true;否则为 false。 + + + 获取指示此 DbGeometry 值长度的可为 null 的双精度值,如果此值不表示曲线,则可能为 null。 + 此 DbGeometry 值的长度。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 如果此 DbGeometry 值表示点,则获取它的度量值(M 坐标)。 + 如果此几何值表示一个点,则为它的度量值(M 坐标);否则为 null。 + + + 返回二进制值中的多线值。 + 二进制值中的多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多线值。 + 已知文本值中的多线值。 + 已知的文本。 + 坐标系标识符。 + + + 返回已知二进制值中的多点值。 + 已知二进制值中的多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多点值。 + 已知文本值中的多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 返回已知二进制值的多多边形值。 + 已知文本值中的多点值。 + 多多边形已知文本值。 + 坐标系标识符。 + + + 返回已知二进制值的多多边形值。 + 已知二进制值中的多多边形值。 + 多多边形已知文本值。 + 坐标系标识符。 + + + 确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数重叠。 + 如果此几何值与其他几何值重叠,则为 true;否则为 false。 + 应与此几何值比较重叠的几何值。 + + 为 null。 + + + 如果此 DbGeometry 值表示行字符串或线性环,则返回它特定位置处的元素。 + 如果此几何值表示行字符串或线性环,则为其在指定位置的元素;否则为 null。 + 在此几何值中应提取元素的位置。 + + + 如果此 DbGeometry 值表示行字符串或线性环,则获取它当中的点数。 + 如果此几何值表示行字符串或线性环,则为它的元素数。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 获取此 DbGeometry 值面上的点,如果此值不表示面,则可能为 null。 + 此 DbGeometry 值面上的点。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 获取将用于此空间类型的操作的空间提供程序。 + 将用于此空间类型的操作的空间提供程序。 + + + 获取此 DbGeometry 值的表示形式,它对于构造它的基础提供程序是特定的。 + 此 DbGeometry 值的表示形式。 + + + 根据给定的维度扩展的 9 交集模型 (DE-9IM) 交集模式来确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数相关。 + 如果根据指定的交集模式矩阵,此几何值与其他几何相关,则为 true;否则为 false。 + 应与此几何值比较相关性的几何值。 + 包含定义了相关性的 (DE-9IM) 交集模式的文本表示形式的字符串。 + + 为 null。 + + + 确定此 DbGeometry 在空间上是否与指定的 DbGeometry 参数相等。 + 如果其他几何值在空间上与此几何值相等,则为 true;否则为 false。 + 应与此几何值比较相等性的几何值。 + + 为 null。 + + + 获取此 DbGeometry 值的空间类型名称表示形式。 + 此 DbGeometry 值的空间类型名称表示形式。 + + + 获取表示此值起始点的 DbGeometry 值,如果 DbGeometry 值不表示曲线,此值可能为 null。 + 表示此值起点的 DbGeometry 值。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的对称差异。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的对称差异。 + 应计算与此值的对称差异的几何值。 + + 为 null。 + + + 返回几何值的字符串表示形式。 + 此几何值的字符串表示形式。 + + + 确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数接触。 + 如果其他几何值与此几何值相接,则为 true;否则为 false。 + 应与此几何值比较的几何值。 + + 为 null。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的并集。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的并集。 + 应计算与此值的并集的几何值。 + + 为 null。 + + + 获取或设置此 DbGeometry 值的数据协定的可序列化已知表示形式。 + 此 DbGeometry 值的数据协定的可序列化的已知表示形式。 + + + 确定此 DbGeometry 值在空间上是否在指定的 DbGeometry 参数内。 + 如果此几何值在其他几何值中,则为 true;否则为 false。 + 应与此几何值比较包含关系的几何值。 + + 为 null。 + + + 如果此 DbGeometry 值表示点,则获取它的 X 坐标。 + 如果表示点,则为此几何值的 X 坐标值;否则为 null。 + + + 如果此 DbGeometry 值表示点,则获取它的 Y 坐标。 + 如果表示点,则为此几何值的 Y 坐标值;否则为 null。 + + + + 值的数据协定的可序列化表示形式。 + + + 初始化 类的新实例。 + + + 获取或设置此值的坐标系标识符 (SRID)。 + + + 获取或设置此值的已知二进制表示形式。 + + + 获取或设置此值的已知文本表示形式。 + + + 与提供程序无关的服务 API,用于支持地理空间(几何/地理)类型。 + + + 初始化 类的新实例。 + + + 当在派生类型中实现时,从指定列序号的列读取 的实例。 + 位于指定列值处的 DbGeography 实例 + 包含地理值的列序号 + + + 从位于指定的列序号的列异步读取 的实例。 + 表示异步操作的任务。任务结果包含位于指定列值处的 实例。 + 包含地理值的列序号。 + 等待任务完成期间要观察的 。 + + + 当在派生类型中实现时,从指定列序号的列读取 的实例。 + 位于指定列值处的 DbGeometry 实例 + 包含提供程序专用几何数据的数据记录列的序号 + + + 从位于指定的列序号的列异步读取 的实例。 + 表示异步操作的任务。任务结果包含位于指定列值处的 实例。 + 包含提供程序特定的几何数据的数据记录列的序号。 + 等待任务完成期间要观察的 。 + + + 返回位于指定的列序号的列是否为地理类型 + 如果位于指定的列序号的列为地理类型,则为 true;否则为 false。 + 列序号。 + + + 返回位于指定的列序号的列是否为几何类型 + 如果位于指定的列序号的列为几何类型,则为 true;否则为 false。 + 列序号。 + + + 与提供程序无关的服务 API,用于支持地理空间(几何/地理)类型。 + + + 初始化 类的新实例。 + + + 获取给定 值的已知二进制表示形式。 + 给定 值的已知二进制表示形式。 + 应为其生成已知二进制的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的已知二进制表示形式。 + 给定 值的已知二进制表示形式。 + 应为其生成已知二进制的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 生成此 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeography 值的 GML 表示形式的字符串。 + 应生成 GML 的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 生成此 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeometry 值的 GML 表示形式的字符串。 + 应生成 GML 的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的已知文本表示形式。此值仅应包含点的经度和纬度。 + 一个字符串,包含 geographyValue 的已知文本表示形式。 + 应为其生成已知文本的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的已知文本表示形式,仅包含点的 X 和 Y 坐标。 + 一个字符串,包含 geometryValue 的已知文本表示形式。 + 应为其生成已知文本的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回 带有海拔和测量值的文本表示形式。 + + 的文本表示形式。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回 带有海拔和测量值的文本表示形式。 + + 带有海拔和测量值的文本表示形式。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 创建一个地理值,该值表示所有距离小于或等于所给定 值的点。 + 一个新 DbGeography 值,表示所有距离小于或等于 geographyValue 的点。 + 地理值。 + 一个双精度值,指定从 geographyValue 到缓冲区的距离。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 创建一个几何值,该值表示所有距离小于或等于所给定 的点。 + 一个新 DbGeometry 值,表示所有距离小于或等于 geometryValue 的点。 + 几何值。 + 一个双精度值,指定从 geometryValue 到缓冲区的距离。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定一个 值是否在空间上包含另一个值。 + 如果 geometryValue 包含 otherGeometry,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 在进行指定提供程序值的合适验证后,此方法主要由 的派生实现使用,以确保其适用于派生实现。 + 一个新的 实例,包含指定的 providerValue,使用指定的 spatialServices 作为其空间实现。 + 返回的 值将依赖它实现空间功能的空间服务实例。 + 提供程序值。 + + + 在进行指定提供程序值的合适验证后,此方法主要由 的派生实现使用,以确保其适用于派生实现。 + 一个新的 实例,包含指定的 providerValue,使用指定的 spatialServices 作为其空间实现。 + 返回的 值将依赖它实现空间功能的空间服务实例。 + 提供程序值。 + + + 基于指定的已知 表示形式,创建一个兼容此空间服务实现的提供程序特定值。 + 一个提供程序特定值,它按照兼容此空间服务实现的方式,对 wellKnownValue 中包含的信息进行编码。 + 一个 实例,包含地理值的此已知表示形式。 + + + 基于指定的已知 表示形式,创建一个兼容此空间服务实现的提供程序特定值。 + 一个提供程序特定值,它按照兼容此空间服务实现的方式,对 wellKnownValue 中包含的信息进行编码。 + 一个 实例,包含几何值的此已知表示形式。 + + + 使用其中一个或这两个标准已知空间格式,创建表示指定 值的 实例。 + geographyValue 的已知表示形式,用作新 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 使用其中一个或这两个标准已知空间格式,创建表示指定 值的 实例。 + geometryValue 的已知表示形式,用作新 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 geometryValue 与 otherGeometry 相交,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取默认服务。 + 默认服务。 + + + 计算两个 值的差异。 + 一个新 DbGeography 值,表示 geographyValue 和 otherGeography 的差异。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的差异。 + 一个新 DbGeometry 值,表示 geometryValue 和 otherGeometry 的差异。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上不相交。 + 如果 geographyValue 不与 otherGeography 相交,则为 true;否则为 false。 + 用来比较不相交性的第一个地理值。 + 用来比较不相交性的第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上不相交。 + 如果 geometryValue 不与 otherGeometry 相交,则为 true;否则为 false。 + 用来比较不相交性的第一个几何值。 + 用来比较不相交性的第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值中最接近的点之间的距离。 + 一个双精度值,表示 geographyValue 和 otherGeography 中,最接近两点之间的距离。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值中最接近的点之间的距离。 + 一个双精度值,指定 geometryValue 和 otherGeometry 中,最接近两点之间的距离。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示地理集合,则返回给定 值的元素。 + 如果 geographyValue 表示其他地理值的集合,则为其在位置索引处的元素;否则为 null。 + 不需要表示地理集合的地理值。 + 在地理值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示几何集合,则返回给定 值的元素。 + 如果 geometryValue 表示其他几何值的集合,则为其在位置索引上的元素;否则为 null。 + 不需要表示几何集合的几何值。 + 在几何值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值创建新的 值。 + 一个新 值,由已知二进制值使用默认 坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 一个新 值,由 GML 值使用默认 坐标系统标识符 (SRID) () 进行定义。 + 包含地理值的几何标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由 GML 值使用指定的坐标系标识符 (SRID) 进行定义。 + 包含地理值的几何标记语言 (GML) 表示形式的字符串。 + 值应使用的坐标系标识符。 + + + 基于与此空间服务实现兼容的提供程序特定的值创建新的 值。 + 一个新 DbGeometry 值,它受此空间服务实现和指定提供程序值的支持。 + 此空间服务实现可将其解释为地理值的提供程序特定的值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 基于指定的已知文本值创建新的 值。 + 一个新 值,由已知文本值使用默认 坐标系标识符 (SRID) 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值创建新的 值。 + 一个新 值,由已知二进制值使用默认 坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 一个新 值,由 GML 值使用默认 坐标系统标识符 (SRID) () 进行定义。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由 GML 值使用指定的坐标系标识符 (SRID) 进行定义。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + 值应使用的坐标系标识符。 + + + 基于与此空间服务实现兼容的提供程序特定的值创建新的 值。 + 一个新 DbGeometry 值,它受此空间服务实现和指定提供程序值的支持。 + 此空间服务实现可将其解释为几何值的提供程序特定的值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 基于指定的已知文本值创建新的 值。 + 一个新 值,由已知文本值使用默认 坐标系标识符 (SRID) 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多线值。 + 多线值 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多线值。 + 多线值 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 返回一个指示给定 值的面积、可以为 null 的双精度值,如果该值不表示面则可能为 null。 + 一个可以为 null 的双精度值,指示给定的 值的面积。 + 不需要表示面的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的面积、可以为 null 的双精度值,如果该值不表示面则可能为 null。 + 一个可以为 null 的双精度值,指示给定的 值的面积。 + 不需要表示面的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的边界、可以为 null 的双精度值。 + 给定 值的边界。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值形心的 值,如果该值不表示面则可能为 null。 + 如果 geometryValue 表示面,则为它的形心;否则为 null。 + 不需要表示面的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的凸包、可以为 null 的双精度值。 + 给定 值的凸包。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回给定 值的坐标系标识符。 + 给定 值的坐标系标识符。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回给定 值的坐标系标识符。 + 给定 值的坐标系标识符。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的维度(如果值为集合)或最大的元素维度。 + geographyValue 的维度;如果 是一个集合,则为最大元素维度。 + 应检索维度值的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的维度(如果值为集合)或最大的元素维度。 + geometryValue 的维度;如果 是一个集合,则为最大元素维度。 + 应检索维度值的几何值。 + + + 如果表示地理集合,则返回给定 值的元素数目。 + 如果 geographyValue 表示其他地理值的集合,则为它当中的元素个数;否则为 null。 + 不需要表示地理集合的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示几何集合,则返回给定 值的元素数目。 + 如果此 geometryValue 表示其他几何值的集合,则为它当中的元素个数;否则为 null。 + 不需要表示几何集合的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的海拔(Z 坐标)。 + 如果此 geographyValue 表示点,则为它的海拔(Z 坐标);否则为 null。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的海拔 (Z)。 + 如果此 geometryValue 表示点,则为它的海拔(Z 坐标);否则为 null。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeography 值终点的 值,如果该值不表示曲线则可能为 null。 + 如果此 geographyValue 表示曲线,则为它的终点;否则为 null。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值终点的 值,如果该值不表示曲线则可能为 null。 + 如果此 geometryValue 表示曲线,则为它的终点;否则为 null。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定的 值的包络线(最小边界框)作为几何值。 + geometryValue 的包络线,用作 值。 + 应检索包络线值的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值外部环的 值,如果该值不表示多边形则可能为 null。 + 如果此 geometryValue 表示多边形,则为表示其上外部环的 DbGeometry 值;否则为 null。 + 不需要表示多边形的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示多边形,则返回给定 值中的内部环数。 + 如果此 geometryValue 表示多边形,则为它当中的元素个数;否则为 null。 + 不需要表示多边形的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否闭合;如果该值不表示曲线则可能为 null。 + 如果给定的 值为闭合值,则为 true;否则为 false。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否闭合;如果该值不表示曲线则可能为 null。 + 如果给定的 值为闭合值,则为 true;否则为 false。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否为空。 + 如果给定的 为空,则为 true;否则为 false。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否为空。 + 如果给定的 为空,则为 true;否则为 false。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否是环;如果该值不表示曲线则可能为 null。 + 如果给定的 值是一个环,则为 true;否则为 false。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否很简单。 + 如果给定的 值简单,则为 true;否则为 false。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否有效。 + 如果给定的 值有效,则为 true;否则为 false。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的纬度坐标。 + 给定 值的维度坐标。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的长度、可以为 null 的双精度值,如果该值不表示曲线则可能为 null。 + 给定 值的长度。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的长度、可以为 null 的双精度值,如果该值不表示曲线则可能为 null。 + 给定 值的长度。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的经度坐标。 + 给定 值的经度坐标。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 M(度量值)坐标。 + 给定 值的 M(测量值)坐标。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 M(度量值)坐标。 + 给定 值的 M(测量值)坐标。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值中的点数。 + 给定 值中的点数。 + 不需要表示行字符串或线性环的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值中的点数。 + 给定 值中的点数。 + 不需要表示行字符串或线性环的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值面上点的 值,如果该值不表示面则可能为 null。 + 一个 值,表示给定 DbGeometry 值面上的点。 + 不需要表示面的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回指示给定 值的空间类型名称的值。 + 给定的 值的空间类型名称。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回指示给定 值的空间类型名称的值。 + 给定的 值的空间类型名称。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeography 值起点的 值,如果该值不表示曲线则可能为 null。 + 给定 值的起始点。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值起点的 值,如果该值不表示曲线则可能为 null。 + 给定 值的起始点。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 X 坐标。 + 给定 值的 X 坐标。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 Y 坐标。 + 给定 值的 Y 坐标。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示多边形,则返回给定 值中的内部环。 + 如果此 geometryValue 表示多边形,则为其处于位置索引的内部环;否则为 null。 + 不需要表示多边形的几何值。 + 在几何值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的交集。 + 一个新 值,代表 geographyValue 和 otherGeography 的交集。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的交集。 + 一个新 值,代表 geometryValue 和 otherGeometry 的交集。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 geographyValue 与 otherGeography 相交,则为 true;否则为 false。 + 用来比较相交性的第一个地理值。 + 用来比较相交性的第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 geometryValue 与 otherGeometry 相交,则为 true;否则为 false。 + 用来比较相交性的第一个几何值。 + 用来比较相交性的第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取一个值,该值指示 EF 是否将在假定提供程序具有所需的类型/资源而非更快失败的情况下继续运行。默认值为 true。 + 如果 EF 将在假定提供程序具有所需的类型/资源而非更快失败的情况下继续运行,则为 true;否则为 false。 + + + 确定两个给定的 值是否在空间上重叠。 + 如果 geometryValue 与 otherGeometry 重叠,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值的点元素。 + 如果此 geographyValue 表示字符串或线性环,则为其在位置索引处的点;否则为 null。 + 不需要表示行字符串或线性环的地理值。 + 在地理值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值的点元素。 + 如果此 geometryValue 表示行字符串或线性环,则为其在位置索引处的点;否则为 null。 + 不需要表示行字符串或线性环的几何值。 + 在几何值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 根据给定的维度扩展的 9 交集模型 (DE-9IM) 交集模式来确定两个给定的 值在空间上是否相关。 + 如果根据指定的交集模式矩阵,此 geometryValue 与 otherGeometry 相关,则为 true;否则为 false。 + 第一个几何值。 + 应与第一个几何值比较相关性的几何值。 + 包含定义了相关性的 (DE-9IM) 交集模式的文本表示形式的字符串。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值在空间上是否相等。 + 如果 geographyValue 与 otherGeography 在空间上相等,则为 true;否则为 false。 + 要比较是否相等的第一个地理值。 + 要比较是否相等的第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值在空间上是否相等。 + 如果 geometryValue 与 otherGeometry 在空间上相等,则为 true;否则为 false。 + 要比较是否相等的第一个几何值。 + 要比较是否相等的第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的对称差异。 + 一个新 值,表示此 geographyValue 和 otherGeography 的对称差异。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的对称差异。 + 一个新 值,表示 geometryValue 和 otherGeometry 的对称差异。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值在空间上是否接触。 + 如果 geometryValue 与 otherGeometry 相接,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的并集。 + 一个新 值,代表 geographyValue 和 otherGeography 的并集。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的并集。 + 一个新 值,代表 geometryValue 和 otherGeometry 的并集。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定一个 值在空间上是否在另一几何值内。 + 如果 geometryValue 在 otherGeometry 中,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 包含 类的扩展方法。 + + + 配置用于等待此 的等待器,以避免封送继续部分回原始上下文,但是保留当前区域性和 UI 区域性。 + 用于等待此任务的对象。 + 要等待的任务。 + + + 配置用于等待此 的等待器,以避免封送继续部分回原始上下文,但是保留当前区域性和 UI 区域性。 + 用于等待此任务的对象。 + 要等待的任务。 + 相关 所生成的结果类型。 + + + 提供一个可等待的对象,它允许等待保留区域性的 + + + 构造 类的新实例。 + 要等待的任务。 + + + 获取用于等待此 的等待器。 + 等待器实例。 + + + 结束等待已完成的 + 未正确初始化等待器。 + 该任务已取消。 + 任务在错误状态下完成。 + + + 获取此 是否已完成的信息。 + + + 未实施此方法,不应调用它。 + 等待操作完成时要调用的操作。 + + + 计划继续操作到与此 关联的 + 等待操作完成时要调用的操作。 + + 参数为 null(在 Visual Basic 中为 Nothing)。 + 未正确初始化等待器。 + + + 提供一个可等待的对象,它允许等待保留区域性的 + 相关 所生成的结果类型。 + + + 构造 类的新实例。 + 要等待的任务。 + + + 获取用于等待此 的等待器。 + 等待器实例。 + + + 结束等待已完成的 + 已完成的 的结果。 + 未正确初始化等待器。 + 该任务已取消。 + 任务在错误状态下完成。 + + + 获取此 是否已完成的信息。 + + + 未实施此方法,不应调用它。 + 等待操作完成时要调用的操作。 + + + 计划继续操作到与此 关联的 + 等待操作完成时要调用的操作。 + + 参数为 null(在 Visual Basic 中为 Nothing)。 + 未正确初始化等待器。 + + + 表示在实体验证失败时从 引发的异常。 + + + 使用默认值初始化 类的新实例。 + + + 使用指定错误消息初始化 类的新实例。 + 异常消息。 + + + 使用指定错误消息和验证结果初始化 类的新实例。 + 异常消息。 + 验证结果。 + + + 使用指定错误消息、验证结果和内部异常初始化 类的新实例。 + 异常消息。 + 验证结果。 + 导致异常的错误。 + + + 使用指定错误消息和内部异常初始化 类的新实例。 + 异常消息。 + 导致异常的错误。 + + + 获取与实体关联的验证错误。 + 与实体关联的验证错误。 + + + 表示单个实体的验证结果。 + + + 创建 类的实例。 + 应用结果的实体项。绝不会为 null。 + + 实例的列表。绝不会为 null。可以为空意味着实体有效。 + + + 获取应用结果的 的实例。 + + + 获取指示实体是否有效的指示器。 + + + 获取验证错误。绝不会为 null。 + + + 在从验证代码引发异常时,从 引发的异常。 + + + 初始化 DbUnexpectedValidationException 的新实例。 + + + 用指定的序列化信息和上下文初始化 DbUnexpectedValidationException 的新实例。 + 序列化信息。 + 流上下文。 + + + 初始化 DbUnexpectedValidationException 的新实例。 + 异常消息。 + + + 初始化 DbUnexpectedValidationException 的新实例。 + 异常消息。 + 内部异常。 + + + 验证错误。可以是实体级别或属性级别验证错误。 + + + 创建 的实例。 + 无效属性的名称。可以为 null。 + 验证错误消息。可以为 null。 + + + 获取验证错误消息。 + + + 获取无效属性的名称。 + + + \ No newline at end of file diff --git a/Learun.Framework.Ultimate V7/packages/EntityFramework.zh-Hans.6.2.0/EntityFramework.zh-Hans.6.2.0.nupkg b/Learun.Framework.Ultimate V7/packages/EntityFramework.zh-Hans.6.2.0/EntityFramework.zh-Hans.6.2.0.nupkg new file mode 100644 index 0000000000000000000000000000000000000000..8e16df4fabfc130e05b3c7d9cd8854ca3993fc0c GIT binary patch literal 676197 zcmb5T1yEc~w6+VuA-KCGXc*irzy~BDxZB_iJ}`r8kl-3DxH}B)?hZkMySu~S-0z$^ zx9&anuY2nMch&ByuHEacclCZ&Ro7}21terlg#UOht+f@bZ=KDa5fKpn-gB`>fxB*-YbQTU~U~_8+kT`>j zvn7WRgQSF*nuVQ-^S>*gR@RPCx_?6)pyCWx&d!b^oSaZID+_xQC;;qe;qdPlOEARV z#QEPT1jOlRVrFXsvf$+5;u7He*UkT!#My+?3=Fa0 zaD@CD4RN-%fd0SC{@>dJwSc%fBT0LD*pmRgzydl{XYT9 z{uML7@-IB?NC*ft{{r+sZ{z>ORAT&O1R*!k;CaAXFBckEsqj>-H8q8yn5A4^d5hj0 zxV(^J{+*}ccE_XwjhGY}|ED2|82aehxW(a?-%QHix1J`&Bj>X0}5Yz zx!vt*3VS_m&k*H_OagPlKQTgTa^rW!{Rkoz9I=_(jDCL&O@1`cOUfGZXYOJ}VvcWd z*-E*3Ae}vXqiGJ=Kl0u28bX|+z|UJkFcEdcdqe*3%ov{Jl6t!!BK&zpM&SIH89QrJ zP6rETJ}%DxD!Tur7$Fu=unXj0&;jOlcK;JZv+XXQHT2;U9WlAN2@9viEU0wZ*~P{A z*#y5Z83>Sa`2s`3q*z$8e}sjGoBkjR3Rn$W<&aqj4ZHQ35a#{P<=zf|dA@w|Sobj5 zJ88dLW6!)T_rdWhH~96%OgfYb*y%^8_RoS}-mv6bM2|xA6TJl_`(c+xcJ_W$oT~8Q zr&EATptp?pJ0T#AzrU1NG;=Z`1S%$3yV{of~Nb5p$E+5t3eOXhXG7F^9NSadOUB0 zFXd0&&-zHscR`6y_00O){#2=OK2Jw*`F?A1_;96u4QT zka{f#LxKW3#!=?&xx-G~c88KHA(8EGhwHfCH%5NC$+J9XMkaUqn3Kg&W?KwmV`1Xn zZUz5+u^ha;*bBCCeAm+!ApP+#7WYFkbOd3*zv!V`ylD`&r;sM3tfic8z8SgP_d@F&{U^Sh=V+>>T8Jx*z~ zDt?}Vx5lTtROED(L0y6Q)`o_GDrrW(z|lim8W zi8!VkMYQdTyZKJATCMJ0Oq*rkD5ZVEctH z=~`$1`OHNt=aTmi3{=WEl`VyyuLzsJKKC#teTdZAZkK$m?dAvZMBQ&f0TQ@OG<{f| zQ*Ux)IruTiIeBQlkDCF+uj{0S3veksPH zySch_PFxl)y`r8UB==I$mX;O5^bt5B zUqMcOBoK7zx;NcW@udC!VvhH38UANzG2N7zV|z@I(nw^6?pT&xGHG;I_|)>xKJvD0 zjmCA#%Pa~1{PL}8YAA=v{q|HrSD52E@6Xj{5K3V6|E1e2{g?+{!szKwB9Z%+iZ6}5%M4&s9`~ZDH;KM$ z+gClbkR4?wr3J8y^kKY*!~O8VlOjIp=P5N6t?k=W0M_uk7<0ceQ?F^Rh z%7ZR>aT2NZRJGa)OlPF|ip5&0Oue`{n!>l3IR@V!?FE(n>tiH5cO=}kX8iu=(|w2< z7eEqFY3k$fP^eR$`@{BS1FWyn;Uu%$@KdvTbaduwBp!0#AHrquFc2V;a{i5g z4NjybTTv!Pq3^+0!o!Q0OcmHJ?rxx{j++@$Bu|!{cesInG`br$$1fjprtjg5?I(*W z>Bb$T@riYVxng6`zErO@kp!k7xIz1AWAGE_dWJ5uuA2A>(Lp^$!oJ-mcnGjgpqUxh z|B0tVjDrM=q}*nl#&=raAlFnD_z+y+5-~eHotq?(>$N*5gHn!t1iRXvepudqQ2m(L zEPvm8T*`xcwLK?;Qb*qRSEDILQ&D#cll9?Q9L@R#vx30^Lo4P0NS=j4+?!6;!sE*9 zrz^1h`|qbRe5KXYULhTAT_;4pV=1c;{`X}WS3x@8Yfe<&%g=oJ(>s%8OEiIn`I(us zdZIkp)E#G8E`N+mFN#73t1c)}8eHco{G2adr=R+x-f8Sby4Rg5E)cs^-Lv0++y#aV zN`QRCsGR+@UPXvwsAXW_Dx|sb6Z~u)TPBp{Z6QWAQB_oDlviZ0cRLutEeXy<7rHX|BF3)yL(2jaKC$QhjX%*)tbi!u4 zZk_xcUhD9`zrP4f+_Vsr1b!H#+C>m#U~xu8lgVuroF7D*o%q1Qg;yFpJuV(Z!Kpl% zU$3q+X4HT|KP=f6-svn{#oo_-fhiE^WyV6NL z^YkWG7Ooa6QIaK}hE}sdw0nz=k!u#q0NsDiIuwPXuoqnjgZGXJfV)$-KZJaprF5Mr zmNRJB9XQfN7jLdfOQaimqe0k_5~;X-!kuVP>T_6cd}k_EgsG`sDtwe%5j z;pe_jUzW=r-vS?t8qHtg{ia1Nrz=&f=LK=ToUYzKK03rpfa3UT8y2Y~^i1uHAQyz$2 zz2#|%elCLf(X<=owMgO|bu|y(_(|zx9Lsx_1oE|SDg|D~!v>IK8V!xCkxX*h zs21IgUy>3Dt3fj7wSUYe%(voQ@rJ` zttNDO+gT4`*O5*6i+L95O7b@QfK8p#IWl`i1R1^?5xdWhPR@{8@BmBZr+oG;4?m z)rp&r9RSpq*MDHQ9vC>otg4GyEy!L>L0JylwMzE~y6h}wk{*#B*hY;6AoT#>Fy-}r zwaM#{33km${+b3ARHv)Asgy71k3nX`?NmDYN^iOO5S8?R)#5R$mc~!q=CStDgr7k$ zkRhUf3KDV^WOBKd8_WvTr)NL%%<-W`Ft$Td1mH;K#~u1b)OB7@t(A zT#5e%1<3(dR}PmxGM0HC;=f*L6z9NjNNK}4b}Tf7Zbtq+d|N*H7eJohfjomAJ&>=2 z{8fZjhh_g*FH0v~@J@e3p3Q1AZ~m}UU}DSIAj;w8t9yyrt>+k*!cq2Bm4EJ{%1>o& zJ-YIp*%TZU8H7XFgUQCOcPS{*i({l!m!6f-mE^SbI>3F)XVMR)IQlkeQe&L6+?W9V zPH>a10517^syw!vP${X`;az(_QsC^L``tkO1c1cRj`WTGb#Au~_FH_QMJ3L>2ZNP`WbxoDVklc)k%jwL0WTUX++#BcuJFmkdas)mtO9E3X2^Y zp^`Pl-C2~+bBCZWkVtI52VPZB*0O7jNYQvmWjy$n94*`YY#};=wWWeSqaC@RTa!rL zD*WXfvAR_kP2gHV?ND46$M2ZHQ?{AXNmhffa!n(XLLNJrHP;vP)dgL|HbO$DHsqz8 z&Bj`j$uO9Q($`6owK#7Csx*9QxecSf;yqzeqd960PO zzg`pM*WoyrmJJjP&(ANyH&Ni24db^j(er#UpN%}L=;X2+jnxezFq6~Kqsr3hXrs}X z7Z?-v_leKW@kcOu?FU|wvSXi|@z*2oi#g)+G&{ZhMQ4qzq_v}{VOjj#2sn;P?lSa2cMm&f$sd8Z=hJAy1 zPxHiJTzN%0rl{*Iy&64VC8ahht1Z$ekBQgf8mo2$2V5N3+laRN+SzG+T~*RoIKJGd zkzlr6sM?&qr%EETB%7f+6;6>`PR(yV6jbb>UnG~fjuBRB*v`V%z{1WpW3I2!IQ3IC zYR)iRM8}8K=2yp6&+26mG$4{A^WFwS ztJ6+XK_m1LH3S@_ry8~T36Ople3122?p#a+2{y}f%g|24))tZj2dT2|9Q3lgVUkpN z?6pnkRBiC%at{-y)5>u}e&AWl$LmxOhe!R!2tgKrUqR3OePrgdwbe}n309tM7L&Y} zWo9UjM*$^o@wCVQ@1*3wg}uS|@uIrlUIWKwOpRNe zUg=5=H}PpQw)U)nt6Ah(jTYlg60y&Pob8Y zkQ;b{$!^R0iwbqG?rZya_O6?q;HULmsOdvVuf?cn$4iTtS>Z&u#U{JfjaR)>|K})b z_BLC|@*!|utkv#jhR^^Mm|HOy+{YaSC7`|W{%zHIpt$8!mKDZEVIMD|N5TBJ!6-AK ziH>7<=i%{#`snyqBp=$3<6@VrVfy)*D;{CWkk5B3JLl)y@kMZ@?{|@aFB0({3?73p z_2Fn(@-JFc;8$0_XZmKtMx){9h7tDO%;NGLT(S;Gu))^IyY*j*_WM5iJHdk!`6mz@JAb;s@1Ydk+M&y<0L?sVh*w4sX39o?z@jlbr9f1l7ZgKXcW zdQ82{ud%uq9eW>)EXCl@&rzVZ8R^&OT#7V)j6Mdw0$XA3+bu4z@cH>DYcID|SZwPt z>bQI3#Dn(v?P)k#Wv8FZ&|@TR+PviNCKn&2@$*}LiBwAItckU3qH6EJ#k?rW?-C%e z&|I!#@7h`crBDM{;P;D7h6D^$bd!;TG?UhN{jG7qi`(#USs!_ig7)b*Qz~Yb7P39W?J^$Tgb>$TbfI$X7{QLGO7k zhgtmaemjW>i)>q`)stgU0W6!MD<(Evo>H7%avuxDmt+JzSQQuf47b+`344KHk%bb= z_(|L5?}5E+DFDJpb68wf@`KCP(wGtEF|X$JvcsBR!~PzJ#EU?qL~(Po{!!O>IIB`x zZ{o9nq&{9l^JGQO_-X{eK}piX3A)!Ck!F|(u#Y}=vxeqvk){b6x;N`?n~!p6+d4O1 z*ah2L^LvbvFvHvRKLyV^G($%{Y^#+wv>tPkfJlgmpdjcN+p92XlH={%PY`qJ$c!Q!hV4I8@xSPr$P8U3o*qsp?sy!UN5eUKA+~HPvPKEDhGf;Pi=XMNoGG&>ou9e5J~;qw6Vuskd>{d+xZ_{ZY2u)LJ_-{ZJ?+9P zq%Y9HPVxlX3dxUfb%+{F-V)+)NY*aSd9wn)(LHPjJ>QahVa`pg5#~QR#(*6g+bE0p zuBA1{t^j@cJBcJDyCvpXBkU*cyyxO@)wSQcigyx~WSwxk;@&m-Wp8+C>*J~T3Wxdm zW>g@Y)zD?FF@HVLCnrV|9;4qUywT4sj`zfH)TMjQh~_IU>0*5Qps6WqS1(ei3^!rp9hv!KGCv83P^qcS-Y{= zoeaptx1G^0`RNuk9aBe{?s~Ux$#Eo+xT)(H+OzScTb7 zo&37vW>*L}b6`_lZmZl$eyAi^-xLXz**8PM2_Aez)uUx!+x0A;6}r-~n-4ORmE?&LS6qSErQOb%83j7finiTfR+DgZ zMvsTtczQdW_H9E)NU1s{A7?LJfZ8#WzSlSIn`M)OZb^LN+~C%;Fj3DuWtR6bBHV|w zcZB=tu32PDw*z5!AKjFN@+E|G8n$l3(zREWj(n+oA@RX~hlgbXm0hFtJ+CU(yW`_f z?UkEPH!@oO0(NJA)XFQ}MhH2v)ogF8AMti%**r?WIwvcgD!o0!eDwUHrVf`InbOw; zx$kZ+Wl)OBI1R0C;7n72j6Yda6!eF^`HTrPr|k& zc+iGo&AY_{BX~xE_e8oOliy|eXbl`Bzi#K`aL2F<73s*Bw1?5S0(Rnho6X#|CR4=L zA!irG<LllxGtz{*|VP=?2a^m1zm;5#OJN32A} zaDR&W4yQxpT!*_j^rT-2EY9h08{OQ*^kHvHc&43{lQpBIDSx>lqSXG$kmpNeQ^Ff7 zeEK9mTw!H!oztgj{q$-)^D%kZkj7(CZuqd~stlm5Ckbf23h?yW{p_4J{WQCwHp)5k zO<`mM~1s19~#cjA5fEi1IlLp&Ln zanb&46OtBDsoM-_oqPS$Z9A}vYnZn5xWfz{HR&A9)t880&oj*NOYLO^A96f$n zd+VUF+Jnk0ZudpWw|A_$57~P|Ys!`?)GF2*)0OVpiPNUfwI&{O8n@u5ZM(XEo*VWD zzBVcjPIUT+n$4U-sD~r7UUhMgzw~MO)|XS_wCtUZRf^z1(0B zqxF*CdS1*0d5f!)4wUBti;!IhO{+Yw4CaFsXjOgZ{5;FeTCq4joP_wi9sUeGYzGu| zta*vmUA_QqQ&&0tmNs7_9SqNK^+mT{$x-5;4vm;rXyF|@uOoNb=YA4Jm)SoX&jOD^ z%xF#wMDDr+=d^HPFfK z&rv_Xbj2jVY6OxU&rIvZ2Z(P+KVz?$AWtLWoh$5qw5NL2hdnjnXh0DAqjg7dQ|2|S z=a{FYtxCQ6>YjdoBrv{>ExClY^1VyDF8QBR>s?@dQDPQ+Sp(Z=Up3L^mv%i?r6q>7 zW-UdchAgpB8O8ME?QY^W7I0!F+)FpscXxL$f)nW4sOeq6Qx7kLMhtc=z1a?w0Wp?= z_3R6mrOp<^W#fgMz(c5HXA5lp{I-w3$Y`D0{m!%CrFDK%i?yA*K%@<$19oevy8B14 zq>-~jm16e5zO#d4O~SL_#x+hcrtxd(BbeEU&;2-mGO(DDs<`oO=@E2r zx{MilR}1{A0c@|{9Xzr?vMp=}>(^H0G5|dmOmsx#szjA^(0pnCf{B`Ig=vr+Ja*@)e$ygXHy` z-llvGI#(BvjMwITO&Ohh)^+unoMc~ic+psNh8LMm&1Z4$H9RD?)ty$_@MaisY7D+n z2>A6@3dVOlx4hiJD+4(UeQAeNURy)FFV2+#Xuk5vYfnBaJFn-r$*u9Cg28cSo7+Qi zjKF_x&!`|3yGk`q-EK8r8iZ`thN5ieQ6jrgj&}-S1#5y4MW#@!VjQeVRabRR)r^QU zH8*DQLf139^@9oB2)XmJK>qoQD`aEQIZ&&GYnyJsTXQ+e5;AZEsHJQalB{%^UT7K+FRHMmYK9d%^+ksdcX+=lD;RcFeYIOD6Y~AUH0?R>gsQ_<##mv}ilX~sSX7xCgq;jm_J(p@nd%wnm zX_TYKYY*0yc$!h1;DL{k@6SO>k9pz0S6IR10+j+c4r}`2Z4YHW(6pGd&O(p5pr~;W zn9bhz?K*Go`YD#=FZ-_E7_SDnx`D4=*7V$-!vN-@dGGBK+Oy~ohbidB%qrwr$bQei zo)epwT`4$zp}=FoawG%u)$I|c44wPPi;V=J>)>U*i{x=;p)Dd|h-+?CD=*Ln#4iIHRU(r_9_3kE9G~vl$lK5I3*WYD^fwG#~1I&8RH`D+)%E zhdK72sO?iE%WEvYjD;ix%CVKXc9d4MtXP!Tw2l>&+7B|7SXvg9KGst&+BD6C&gC#} z=_>;>)L z?F2O4Zi7h16NEQG2$9pU2w%TI{weR+B$neGxfo zzdRFS7c1Z1zucs*sN_7m_ZTjTCO&0y<*^YcQcu3N&H!|@P7PbU_A2E+Jt-;LNji_z z+0H$f6!`2n-K0+ldnLBMAF*2QheFQ*mWf!ceZ*%6SCF1W0O6jBVQmYWi%;j@PTP?m z*|4Q}0cUZYrjp}$P;$%J0=)Qm>RP+sy@`5T+- zoWl8^gEls1S~jJ`I0709DI28?jvGq#{mHInhUact_LEJR^>wxto{bXRRc>yb*=y>Z z6X*7D)=IeedTo2o^B<4DAgSZCqhqwAvKT0NfrIzV_f?C` zw3hL0)}xGIdu_?8T(y^`UhUiLqe7q2y<@oIfn<55YF~MW`EEu>n&scSzW}T07*P+E z&ZBC^N0h_pvw4%ZU%s`_3An=fV~vr`;gfF+kn-l-VQXf+xj*t%BJBFf?=W^r(k0>O z2ZzEV4jDO*V;66K4wBs37S0z#C+jYQ zWPcV6^IS&VqjDq(`Mx-|4D11ADLBwpW~(?o%i}IuBlaTcZTVy-X{M>5ZY^4)npkyP z!R50@(+rvlo4c|VjJh1CNk%G^2V4t2#wEkQ{2wRPQ6+r6JhJD#U%OsPvrsb)Ru%Q> zqw-e83O;+yG(neYll=a;w!JEPnQdE&SpOXn0RijhbTw)|GtZW&>=%g@c-=;nI>0Uw zRX93}Q+E-lZ&xc`up z53HQ>W@8g3g#=E-T_WBWxbN%j4@~yZ#9nLpt9$N#YTi!i3iQk|3%GgASj|orIn2-0 z4AJ(asI|G7nADtES1~VNZ?MXI)#y}1e0bj;B6!N>odx(vY88dAU*)vigYsuH944kTn#9oW37UUA! zci3n%O+~c080zvZo{Hq~dCu^Ur(eeP#Vrh3PI9sBuDC{MA3cZIzUud!97C4&taxGu- z@I#*Xx$PQ%n(16G|Eb~`TI70Oa_+4ie8zr>V#IDlqZYKY_nA@g*v0Bqm5Y$yyN#jI zO>J{EFYA7iqbPl)Dp_h9FUH1|k+&F+qO32|oMT}h+)`z0?2OWD;PiDK*eH;ju_PfY z$?CAE^V?y}lS>6hvTb2UR{FJ?w>8*SR9}gr#aly^n0n_=xxN}fd(0KS*ALf1G}T*u z#J`K5J*Aa4^`~XBiy606-dfD`?5`{O?Y;8Zw>A|lhVx<7vc`Ll@%b^Q-3mKSooGDB z){gg{r96CkurF+Gje5wmMH&|e5~omNyPMO@w9fo4%P|}*wwouvZlwc_*^MWg!BFcO zL-}y)heXNE;#vhKO!fDPBIaQaBm;*rpE94ss>#UUtGO@6FpHV1FQZZtPDw=)1G+Y2 zfQIi_t)?E3bxws0_1=L2J145N973K3qsx}+Wv~&&^0wyU0@ZlZ_H>IY4SXs|Q0e%3 z+9_`yMzhb)?qhJc*}mOyvnc7X5fs0j@GKcaSyCpDNhsp!U1nIlU5m35>DCN4f3BWt zFLxb3v;RA7`$IFTAVV{AU8?NFC#(F^x?gpwCn&7Gd+K(MX_K@&$&gXtYB-Lsm z(vH-s*4Da8aeH}K;AmOhUZW^!vAELHf^q+0cyBQvOP~TrccHK{!-R5mdEK>vbF#tj zmS))%)1$$DpQ|(kY7#ff>5x5^~N1H z09a76xXkkn;fB_{fgY*o-T*}^^&1Wy9kZ_ z1?&Ea@nLdMvc5f22d7}#@0K};X_ww)nDu%)6I;s1@7_Xhi+vWPFHG%69?oieR7lAr zl4b@2F2l}?b+_rGQ47ZaUQ?r%8|SAzp6#!U+VF{;I>Z^jXF% zX4<2WhMc2Re92M7^T=WHW-LqnWU+maf3mj(F3!sj^n|HBYL`_odJ9JEC@%fNGlWmIb z&53F~;?+iZWMe$Uob7v2eJ3>x4ciF@M~di@~PnK5htdrbr{4w*MkE zl-r&st?%Q8u4#QvvZTGv;p|yx`a4W>z3QG-y;rRB6Rv12C-2F|=C}#PYDBMTX9s%3 z=smTTPQ@5hLNc(Z9gJ4F8(G=L>(S|+r(71I4HkS)`!);^`{X9??(mj-@hc>`Mj`>8@se7*Ynj%3Hr_gJFVgP`yV`qznh7uO-?g;a!fX$k zo4I8qC)>UFje*}kcejnubMARO6^_x0(V4wI>bLHTjtF zZRpk?1`HSqaOfOow09X#@1rcq1+CQNeUUdvcFI5Ml6c_g9i^Az~6v-IA!h$^$W9inWH9zM@- zSZo87CAaYxLuzyo-(231g{?FR2fcX+2mPHbYmEcGZ0agQUw=xhu4|B$)T>G)KkcN4xF5B== zzh%E9lF(-@tK}!jpr0es5B!#~V3zj%#I%!4zUPK_D>8CoBRswtF*oDQ548R$9Z2~6F| zL<;8{s2-QU#X;|?WEjKyyn40Rf^OQPtBnY9D`n!a#xWLKvKR)gS*Fj#WT^luAFu_= zKNSvj;|EazKM$q45G@J?$BrN59m#zG*cF#b4Y?d_3NBSz%MI1H6Q#i4Uk8jSf>;Qq z$y!+Qzo0z2gjAeXs+xZ|skVMcPg=t=4MCF)UZu+)C6!K%Vcbzw9$O_k&cyMWnfD|7 zwWAa_N6S)UMM`gbSpzHl!nx2Pqi~-oaI+T9!1gg{))bgwQu{&PAS9jEGbr-)pEznS zbZa+45upFwZ)G?{+F?|+4`rUYWNV*a+EOrQ=y9=19hu&`byKhoJ4WRLxkNdd4=f0v zo~pKE$usv5%n)wzn{hzx$0^gNk306*H&~sz6rbZLt1icif^;@&w|Xz$*sc7+8BVz~ zpOvK(DhVM=f^rlNPWequ=EbE)xGjmEZ{2C70cPT6PNz6G9$rNB zhwJDV!4e&xCs@l@sd+-i`;S>=Eo}&H@EnA8{^4gL(1 z4uo4xQL&n$T(}2(=R)+HXFXY*y{<&E6Fuu!7anS&;cbDHECLMqMr8DisA_$hG!iSR zvHK&T+I@lRbYrYxu?`m&fM*5ryLzc|*E)YNU8W6lPXn#-d@@lA&fAG#U~D@HQS)31 z0~8gJm&WXDf@o2c__g%&5N0_@m+%0LPM>qiI&DoV%Y#Ro%%r|^p(1^jMfZWww-i%6 zWP&+gSJ*TQEu%5m?=D2rcx@l7(l?nF>(#iye1BL&ZL2R6$EF|tDWq~Ou?SsPIZp6T zs|O3cC>($9-#ew~eDqFHS)~DdwHE)_S6n>Xi;TR`#OatIz6|9!Y*iv|1XrOX)qf;O zp|UIU*?vss4v1Rqh$Ld?3SWu zE+6O>E^2GYWq~E?$Xj8i60&zv+HFGN2k$6njL%ERwngohC|i!PL~nd>R}rfaY6^H#P07o*=;;6!TgfJ~99ImG}u zUowMICBA69|3jJa3~Luw-!#}D1`)Q;C;)ypS!DJMU1o(~RtsPrd-`jma|vU3PVp5E z$?R|o_PNtv=ynF+B@z=|qFQqNkzF~daGChfwhm`xgc;5!FX83( z?pQ~8C>>e)j;=@yx#3e_h1Ti^b83hd{}PNcpe?YTiL+oxe<$SIm>cb!m&Tk z>=%@i^q@8mJ4SlBt|;!%WCQI!)-9_FW_oXnjdR`b$jKk4(=2MHs9DEIZ~x$UjRiVP z%^|qAmQj!eH9`D>$Ydt!yn|LEl4%{kNT9X^Od29;y9c{F_^%kXhcJX}ARQTATuFWJ z+2`MU!`FdMx()GD=OAqaP&+EU3DXCfq!lAoQ99mBRF#1~J`;Gr2wH4?6B(|naVYzy z76ON~H<;Ns1%=7rPak$bkuz5`rW91iq>g9IO<@wxJY|AcRL*~iI=CM&gpe+@xPuww zFRt6JUV2~AE zQ5~{x2HF`h!(d_x-W7)MG^G#(!L?j^#p@qN*B>&3^j>`Ty>tto?a55<@uCR2oOY5Z z`lLy&`q9fziJym2j`hvaC#nb*P`@jG37YJBwYW%8K0dx3g!MQt7E_g_q!@Kqj z`nCvmM$1Cu#Q*qX3hjdK6LH*w5FKp=o*NOU=uw0Wkg|5^-}v77>TT9q8sTfZ%gU_L z?<_|JZemUTkl(PSi866Bo+rXb>*yO~`p`~ENPh;k)T-?wHhUUnIiksb= z0o+^I+;1v*hw!Om-JCb`Qi6yAtAzIPASl9BqK?*{c=U`Wt>k|y5v%eEn%!yloV+>d zTQ;bCED373vhYOjgTEomk}z6Q^iE1R53E#Y&UAG#uuFSW;h9~ihD2;ITqvSB5*c2^ zS!{&otp{8qf?hO_2Scz~oJ@7e7-Kz`k z3@ejz;a&t)U3cYFY)Dky>MlUAxQ1v}vI9|pCPa%d2CMjw$Dt2CpA8`x+)#1@MdIoU z3U{iXVha=tOPC9~wzxF!vs%Ku8_6o^cGCE(H%KBj-Y&XpLlK29Ch3RViu^CBx%b<* zFKIH z9L>QpP2O@8LSdnxzJoRU$;)JtrkFz_56D9np@-fw?mr=C0^62QGbbHCH%?{^EyLZ= zQ0MkTGPdFI7E~mDM4M2|*>5I$AbMcO7r6|9%`pz_Qf`ddP44+;=*o-96}%S3RS} z&|q)GzONM3`0v^~L;Q%T0w=roF@#*%Ewbc>nTp*?AOPcy19R1)n z+gx7tPYG2Ob(>ASK;tz&KeRf)pP%n0jYiNn-RO>}O7-MvVpzhE@msYAF?{K4rZ zMOyNwcj0><|4|o5Xq3<_NoLi*y}noJgKKWnAtEvJiH|#B{9W&iSEy$lmtKj4Q4PgV z_m2pq=FxPRFG`834+`D^klGHyNpaI5>z@{ge;b6Ri@!Ix!hTfzF)qg_*>;X75!%%J zqiyk>lMA}98u}VWs#5R|=5;0c6PO&0JdQ9D%^KmONFbcUe_rC^r}V<@hoeq`(6qIX zuCz&i+#izZd zs~npD=>uH&t$jUs|G_YS@oP@kN;b{y4|i3=!2_BN2;Cvv><|C8fH@r=re zJLZESw1vL2A#C8tF(!p_CI5r>=!g8e=(iz(1vOkJKjIGX&lP8!hbkiP977&=4#=wK z&MqmLDB1C|zxNAu^DUt23E%Pf(S8GPb;3HUh}B(&h1)Y( zU8rIe$i9xWw-+47Lzo+%DIk{wvo+&gq)a9f;I2)#fMg?t_2hqx1l3`Vs=5%zz#8pS zXXK>oJ1o>dN@PUZr##>+8n6R(PcmpS3(XfO71`NcCJLkv&HB(rv>A9x+(qwc>hwo} z-|>L_N{hQ{kVwKF2iOxRp6LIEvysk=r%j{NNO2!VezdD;q*8RbDL+JLvC+3!<;P|x zO6{H>^KdmaM{#S2Jhx8$f`*uOUc{KR*_rH**3RXCbM+aw?W&uQ`StV5I|-ut_b#ID zy)FmkNH;Dh*L5iK%cvbCSZ_Eo&*p(3)GkZ@u3Ql7#`X~Fb>xqVjX8EBl@CNKSLl!o z@}_?zP7HpuoX|I|IL{Ks_eFi*Aa+I}3hYg%Bf6}Vu?~?Afr`4)9At3Y zPgJ()7kzD9}kikdb=pP7U>nnr5!qD4ghqv;gcn>yt^dGVq1CRUPr z`%i3IV=Bd2^@^&AW-IML5o^?{9RzO&7Mt3+VvO}4Av99UQGbSojrHY?P3hd%q=!yw zF$~^&xZpW!2c*A{xQb!=axoF}lQr#GUHr)_&bf)@HR_%G_LwsMMCd=B2Z1{@&>wb4!Z zdmi|t67-t{-N}P@J_hG24@Pc4Tq`60`#>K%5zDnBkk61Sh9bW2Vh-Pm2x$Zv8Q`X! z{D5!Z&wOCpny;`6FmopScno-b1hA?dVlf4=d>KB!w+ZkOd~O7C(-hPVn}Da?!F??; zw^b)l%K-al!2jpN-`y~-33zHH$WaUMXFh5W4RCp%P>NhYe%OZmD3OY6g@6CbVwE(`1`%QCC*d6-+37t4uAohVFf$;lN7()~K&&Aq0 zBM;312JrO2V-CZX$erWBB@+-UIl#G#z^{yVmhR7v9QOg_zKTAMebQbY89C}PZ?V^YH zSc~MY2n?A4jvkBH-V1I&1^z#(9o7U}*~9-1BEOG=4P(@Sw|Lz`os|L1UI+gigY|TU zJ`W*=_`tvySd$B|*#|MJhn&z0nCS|CQ$+n&ggnoK-&Vr+<1j}x@VWlrxlQjQ{=MP9 zz`^;z%LvrSiO4_h&_^kJdL?+gZZK?yxabLdz6DZyTY*9q{8}sNt95dJN*l4R!q%iOz^<*BapWdTjN@y9>_ypg1!oHEdn|VNAC86{nrAI zCnL@lg9B)Tn|(nJ+zD)0^^zh+`;nWF_wNAX^})GIz%eevKV~8yYoPu*hMHjzbdrF& z@%D7+1~@hy`5}o9+&~Wc1%C(uKOudPJHd}Oqo$h;-f4`QiI3RL>4f>i|2@H1@&bXa zTVP-09uDSk3H50Vd~7(zT8f%+H}ZZEIBGofX#o50&Ib;H6Y9fmuCUK^Mfe`L-d%9Y zr||c=;4#6GbR7@7BM&?t04{*>?gRHngOhT=wK!Pg8sz@%z`4jwqZI$lbM$5!;7F!)Loc)l&T&m-_*9mwbe zzc&V7>WX<>fShC7plj5lS;$`o@cE&1Eeov307eeI2QGv4aGL{%Isu2lJ=~UH4#+{X zfhGNcXMxBsqk-R1;ACZ}le`g&qu`tKVV@}Ic>r)qBLR4a{IbN2B9ZnKxd(rI2)&(0 zP2mcTn29w+0w4E6-Y4KoEVx-P?DYwJuPd-qAJ|e(?;peNci}?^;IqBJ#XCc%&*8_d z!PE4>`HR61w!&X$W6asev!=+^2sh%0@vPxbvnt{9$Z>5@|K|eZe5&a^0N^&pl?Oj4 zgPxpW_W`<%=yP*Si7jy_Cd6NGWPx|xsf~7mqcZ6O4MZo0(Elt%-GZ3&Qzegwkv>Gi zjAEw_ee#43tY?t1s%x4|~-H8vFfgv3Jeh5dgBX8*gh)wIF zDnM|KjBxJsY1q^MyI?E9NjCKC*?zR!SPSB=z6D&6v-EGgBca#V zpRWmkjmD-K5;LEP&cptuvj_&nyDQ6!d8ahuo8ld}flMTMu#^L1NxJQJc`;2oGSdx2 z(+K8_CCS*NMbHCP$TP>Ld*eR~fjoa^d>R{QZ*;6X4qEmJb^V(&5#i6QHB9V?Ht_?z z9R(TDss)qtq#Ik-JMo*2K_3Cod6VhrHr0q>4n~Xu{BV&yMmwy|*~HJ7vKI)JR;nlr zS-1-n3;UD*cY|0lqWzedW_ty}6tqj|D+m8R|g)&#Y$!7(b2Q`{A?ku8MMgmu2z2mwfgB<_dN%CyCFrua;^Mps~jzXlO zxe{&g7$uqOvtsn@AvmPmgLzN45kJcCjS>^_^}9-+GA8V>RhfzSKqfSJVh!x;WkF+R zY!)HeuM}vk^4Fc68MmOZMySEh|Zmi7?$k8oCrrB^>5Eujn?c1cDj;hLW=uHkRWhHq`?1=uop(UsxqAM z|5BtgWBF-yt{Sh(lq~-=1f3!p7OT*TJ}2dW6e2ydf>sUaQ$&l+8UGKEI*HSdv86-Z zU}1Hz`K1+8tXXf{S^*wk&!WF_`!Mi0i}Y#3Oy$A6}% zSFD+o>CL=Wv}P8=V?2~CO6du*SvS} z-Utr{bSCVVG|;&^jJUL6f>3s6@eFhg4SUxA&J$5p7R0F2x-Ek{^_xk45eglt^xQ=! z6=t>*o5-KOQ>C~)Lp-D#+B4IjrAsG(Fj9&xJz0R2g{MMCi|T;llWitzXTX`6hKSZZ zMDxMo&4uT|3LS;jy|82p66B#sGPxsGz;k6(S3!YSuuVLtchrqu#V=Ek7%sVHg944U#d*Y28qY8#618V3046IggetaqAn+k%^p0fk+`e z2_pl#Gv;eZjC8VQXD3vnc)F&an6Uo0f<))qibRIiStbu6M@xznmExj3y*~^20U>I} zg#Df%_8V?!)z(M6aU4RX88gkMF_(q5rfng9y0AFovKKHRKgOZOt8ZGQFd^~;g^9TU zN|5BSz*`%o;KytQh6}b@g}~&`aF@F9V<01xX+awyk{m$i zBucoGW6nqk6T~HJChvMBwD8Dk(VE=r%x5K#fX=c0*=tR`WMg+)=woY-&cz@Ix!+cV7k_M1{(Ah<9j6yz~x) ztafASAW1YB9UPnb2|QAk;QIF>gk`DFl-xRS-O?Ww!2cph{Eoq!KMA7^+z_j04bR^4 z5hBFi0e=uy|89{`{jz&}9UyQ8@$WqdLI)Z-BN?SG(g4Mh)x@L@n^|nkY`CEaJZRON zMnjIQhT=&3wIONN0-`RQ-vCWQyrp;8*&?z&ua>3qoY5in6LDVbsTJp$z@M740aX zPoe_g9R{)f_k%P%>oDRn5X@aN|JXp4(*>UFE|r^1m~xCI(!zUZTmeP!X6T>zT~cY_ zJUFnqQC@eb%YQ5`&ekSm@}CA0vJau#$j-nGr*-;SItSUEXoJ}? znx+9NQ0#Ld4;Iz$lHf-7`3}KT{)=F1F*`{1ulM~RI)X1*sy{@-Tb|NeiVq;f|8KSg zECns-u_fovvJ8<5{Qju%VY-9_{>^~0c(V8;ge9mXK*>_9kFJ2?1PZ>X$e6iP%+^SO z4bF5Yx=j>zqa_LxD7*V4xr4)oOgPpe;`u%@{G#sp1_&QqUpP-dZKpBRh0UNrf?2aF z*fWTbJ`LM&B4P)LMY=lADHf$0d4%^l!MMa3v88spFD-{W|^n2&xkv zbH|5Xk&x&H33z}95#9!0HAHNB!fxy(SsRlg>NNx;z1~ zl6;_I@zA>O*Qzf@v_sXf9^?(gz9g-_0NI^H%a~vwre#^(g>|kU;}{_Zb>Ac=-MoHc zmE3^4U?9Ul>?IMaum2@?dc(xN#qICAi4(CfvT|61#`=>GX|U@yT)^l4ofvj2Lt0qa z@CFUXejOE85Rj64mBQGq87?4Q^}9>zecy-%^)7h>P57)G3!SQl4eDKbB@O!-{nrc) zj4hsUq@(Nzx@pO}Cn0(SQ1sLuOEp7B)*(_uU4*Q3^T;}vmu$+SP_R_<<0I?VAlaM^ z=D>R7n(g*kZBAG%4eKz>vMUlG_)2NACxI;w%i3%iP@MgL8J_TM!X$xj3 zQ0wo#N%5tMcsc1K0>hOPtg6YLUw9#v-qp#aHmdzXDn%4c+)BMC2w*uM1l ztg{T@{^+{6nn{F@8i_I$y{jC~#JY)*fTT+|4EsYs2=`nhdr01D6=z0SMgs2n?*^&A zBh=845yk?=(wY}OgC@CuXvqK@+m$tNC{ZwBz$=8|zebpWFJnSqK}9V+1L@q5XTpGs zusf|zcf#HqVDBo+dH_cH@w%&$LV_8miDVvEmi|siCn9_-i8Zol`>~ZNLy?6-*p19- zg6f7AAiWf}D)M7Cmc@5!*xL$&`s8R){h2 zs~bo56XW%@^|ZbKZvhm`79lO5tr^3VSOF%2O<`&6u%5$4aouCBX3R#cbVngK6Fr_~ z#*F8|Y*7iX?M3IllAU=n9Gw09hnbkBWk1Q+(1W$2=L@XOnI!*jgw(Hzg%0Lr&JYiA zVZj1l3=;zc>3e0;x?gTC=B3g=%>La%Xx$wvq247Qa}*IG_OT1;)|bttbSF84EJP7q zuY1^g43k~{PKdBm#+ZLGvWU4#K4yMx43lm}LV^WIC496+8or4Iv;EjmhlZd1lNRJ< zA>rN)31aIN>CQVWn4~YObN#(7$*ylK!~$BfD|`Q6*7mfxfPR(@j{Q$v6D*m$DyysH z?Q>C=Docs!h7$Gx8sP)h?hJ1pPlS&YIWUh!)3y(0SacZaK2{kIfdux~e(;ef0# zQ$fV};CJ??bo`NVVv}cSBFkgF8VC+)FdaIM*{os(NIsq_-Ca8Ii4sc$VQ-n+3vk>5gY^U5La46X7@A3QK%?4l~3IF1@MaIG(vt^k)$wH1}eb zDSTE$Qbi_2_~$G4#)~#gfOCDB{oB8Vd7gLva(u38#d-v%x0c! zq4d65giHsKZ4_|^AZIN`x#|lJV&+0CUiNYqS~Itagxw{vMR=o#{@qWo=UTswtVe-` z)-JJTc9Z`X@zRLV!bZZ@^+n3s-nV2HT;JL3AZ&cY!bFdWNbd+XBrwB93=--KbYfsh z(sd+lJjqrp#6*va(3joo-CGv%au2~iA5C?4+lmFdvy{Ns3+f-Om43jPOtD ze2Mt}KYjec=zk+d{BIA1LS{`6OUu$iY?;YNGJz3Ff|)ySUIM_BhU}vdWd8323Fja! zO3CgI`jLH?M3%=G+DRFlCqWQ|8A$pw@tOG9G1Z#52(}yh%uGY+YqOn%E<%|Q3;s`4 zzymv`AgwPdQf472zH>$Eghl)?W^X~%TfEgkd$FjmKY%z#upy$yh1iEerH7CHlQ7}K zs6j-$^bpZLX;Qum!p1fv%!;sgBpn3zwAi_cTGgLhV+S!jw`4#=__T>nd5wd60!BK3?|Hj_Y&^$RoE0kY3gEUv_bN+O+fw_lE8U?twoTA(tawb@72L@lHR^>GsO zQ)%pXm+_!{ea0jzV9lMFhwB;^CS8>LQ@z95bkjf0QCjSu=J?)8jE($Rn9z4bPrR^! zE3S?(DSxwZX6~B(8}Y(r{GfTm?I~N?V9{|@#4N9dx7=Kz>2gBn`R z0v9p7XGi;|eO_r1yTnDa>d-c;~F{=CT#S5=D{FfR7 z+{9|;|8)Si)dO*n_GAWQhX0Klb(kWyrz;ZqXJ+I*MXY2Jb&}1CMB6*kViKl^5iEN_ zeI+^%KvX^oAy(vrk~w>~Id5^}g`bH(Iylr_ zEbadr!LkYi>3z54|Hs^$z*k*di{o?C*7n)mF4}7K)>@=g5s+F%qyk}yhD8#@S}SI` zfxt~}%uQHa1G4Wbi^#4ZR)v5I$R=w0`t0kX)z`B%-QG6R88s?0-Ua=*g5lV>h9Z9HJ%)XVl1nW!3Q6*iW@Yqxr&;_ zGeV!g!NA`n7IrFA_XWtc=o%JeNc`~zjeSRfP->@1QBx~Kt|J0aB2?Y_HJgWt?66a) zFL##RS)uJ|d}K=Ja>HDLO#)Qv?eHajYXe9hJN4rY( z?;4?Jnm_94;_Be)nXMn3#@PF)n+O-e51&*&%(Y@PUxLqP&}YiU7%4=ENP=LKp}|M7 zfq9j*ia)1=A1FIu7X0*a^Cymt|98p`%F2Xn0sTINME3?Dqi7p5T7(%TsOeRHkF(@J=oh~DIIFqdGO;Y z^kZ${TEA?1u+-)zU8&kDk7t%$KRp=bD2ADPF8KLu^>bJZ zaHksaXt_5{0`n8oMLHIKpsE)>@_KH1K%Uf4|NJvG4&P_m>dxq9G~Bn`X5`J(o4>a< zAY)rQ`c$n5K>I%V=x9J~aJt55q|q4on}^kk6u|HXYQHDciaR~jRC%%Wq1V<1GgOU` zn>K0Vx~Voejbj-W9YA$lL0VfIY>bbb?uXAO)8~4&w>CHfWMMQ4FnoQU)jv{V3wfq~ zR2z_xekHwz{h>CXOx;KQju`=$;6L-0ADcW{#2G0n%COQ&%{bNZ2 zrHp(>xFcmVf_<<*sm-cZqvXWLbLwxK5p0d}D5Kobhq7u$upZ`h?+4X1bk~+%KJCDa zV9E42_;+UnJV>Rty{YivE!Sod%gM6D%wXzfV&`1;!I|0+%!}e9r6m5;%;4Zh3#!30 zMGzu?Lpr=;)ws+;87WpdGuS?)pII{liohRC(X~PcWyX>2pBb#x_`tb%aAvSp_#^G< z^D~30qN(MM0meSe*{&UNuy=I7!BBPX~L5l5?+`kg0I_ z811oiK$&4)t?#D;RvXrYNUbX!?Dr%QH6!YNcbzsS{vm2ipQsB~sEnlo?SmkyUFoNw z>J3%SoZk47x?r7TZdzS1uQI_`FbUhow7*&x5E40eTn1EM7c6DDaJjlo7S{zdQXWXH z^>qPFsjFnTY`fi0bmqTNCsNXUpUAO6zmqckVqI`}e0jV7s0*Zx`b<>&zWQL~lf`BU zp96*WFnR_^afT* z7mJCIsx3B&F_&Z*8|nhGe=+ZO>gs5}8yUOY1rRk+H;JwifQ*g=O^eo0oq&F8DcVTKC%K2^6GlxCvPGj1BiVam#Vw2QCVYq|I~#wK%diY*GHTjc7lm+R<9Gxl#SLOqBJA}ndtUmkkp zJULa}r>V;YRRU0t-1}^V)8|Y65eBMQP@G=MLcbEIiWoG^m%=43AS_m=T*3BeKY9ma zBccFOf}J@I8_aEYNWPX2Oq?2!XDyKDGaoR!b6vCp*`ItcOvn80*IYxgpi5 zo-)5%pm{Q^IlbrdG&C9z-bf{6=@$h44xI+Y>13AJ+_+k9lB-7e4N$yZF_P(Zag-;G zzc*VDxUxuaO=~2ZhyqubJp3hqO!o|=*;6m6gzhPhNYT}nJ0(YtLP+%yk=Wccx3B@7 zeHUZ(KHzE%vuvv540@?~b?>&`Xp51XC{=66U6KKI52fD9t!uAW5IgB^#%?%Kh={Ay z1Cm?vBXLiFs~y)V4c*Oq5S*hRI8!sv zx;Ef1sQ&(HliX4Q!gKq1QYBSLL<|9#O2)0)`S#2_@<`D^2IGu zCv`ibd&aG(Jb#PS``j-2!$1>)yQ4a#P85o*eA{!2l!B9mDQDLEjcc!!SS=~T+F&tT z8LR0jB40b#T6lJ=pk+#}!uuI!(uf%;zI>aoc}=f+m?BQpJwmic(TTgTY?}z%>0o@< zDvxd#duQLW&P2H{2% zKiw%rnGH7TB3bz98nsIV>1<$bjj;?fAHvJBr*{dt;C3xx=$)@;z6!7=nCl*3tgj73 zFQKOo_DN`b@hE_Kk*CVPd-Ke+#M`4g`+V$5WE|QJMvoULCtnTvq@$%rFtl~qQB&V zTSNEB{Vea%hpmCCj0}1vm_*VC9|09!Z^~EGea6w2Juab=7NjJ!9+sjBUkvC5=R>Fa zVdx2&Hy#lis5<)Gl;#VWN};6n`t%+!Aao!YxW!!EY0e!?dYj3;g=nXS%m%=NbinpC z6D5T8%TN2D+c3SGo~Ed33e#F(vM{a(O=-Yh#s=shu$yaO=?`h&vDd=uTD(*THjKoc z01)TtASi>1=pe)Jogt#(SNB>QNO|rf9Fu3XR06nMH06h3|!VmrB0b zY8^VCs%BaQal%j^*=Lb92aAcY)zYDF8$O6)4Rjn5-O)D<>V9aSMFG4!l1xU}V(6u; zHpFobI*s>rq6lbMDREp6-*~F`Gd8;WAobCGz2~6l6rKGjW0k!FDyneQJV0}G@1U_G z7=0cCmk9!E+ z1#2F%vz}nAU;a)M1i1s64~^d(eHW-b;!CoL1EAQ&0pJ$VY&l>Fk?^kiE$Ckz5DHfO zZu(8JVF!hRm9MjF#+gB%EL(ig5-DL7rCcqB7}<~Ff(Yk@=Rau)ct41-fqck_o8O%M zMY3?#NY1pkt24+Ah7b zUc>Uh(U`b1;<8J04gPxPQy!(t?d+=4`VNhF zDi-5Jhm?=|-4quXx!8^JrC5!zUVtQev`<9T-TbbYztVX4(u1MnN%GHF@k zK8;;GLA&j?aNBou6zDx(Q>BZ^Yxm4-_R%J$u~lb&U4S;B?q zD|1lBQu69>6T_16z5jsp2pG>TCw@5L4^Q6;1Gul-3*sx@8vTA$bn-*EyZx8X^2b4Y zGR_n6nA4}ft{s8G2Nmz)(TiUfhq!x4^11il|BW6HU~hy4&i_VFPGs*p&eyfS(Oo>x^Li5|SZ=9@jBe>c<8js{*S&3l#ZZnxM718De94d7}v5PA({ zU4S&*dq{mx9hxO~uKXXy8c!rbe-*$-dJnBjRCLVU^z&1mV{BIMphY^Bbqx#-!rRe1 z;drT)8%s6M_2A(6P}>h}k^=fNAez%VhwgzoD79mclyKRmX{LLOfg}^VoOI^UCiswy2lJ z@FBM)E2lDZO`|BrsF;7J?aIeqi!3pG~N_}h$^g2_eq+pA0#eexi4~P#-&eSqhbJn-f(y0A@4@`zKVQZnY z&UMO-VpuvA>k(55QOS!vu*||zUkV}S!!Pzgi?=n_!YHiuCC0YKrm(rv%~GXVz`Unl z2KuHt)wyGCR|8j-xagSv6UMmr|K~CKc$Pb2RZjSfA27D!1dSQj%bzhHzKTO&M5|8F zh*S>0UXL>Wn6CLjAp*90W76}~@VD^s%>ECIM=$iAZ#-*%P>6L>*m#txqrTfT7Cy55 zFtP^iCpviMha%yJ z1NFaWlHY#$jRIjtx5A=gBSe&{S)NBeim@+?Y&8yIj>ul7f|ayNsyeQky2=^}L-fGQ zL5wLMSo4aa9zYHQ-uR=yD#!0ZdXUGX94++o91ps*xRsS2;0X z{3&CnsD`8EO0O_~Cdz;1ry~D?e%6Dugqbd9a`3N1^H1u{vA6*p*1nrt4PXx9v&HVTm zf)~dDS1bnHEU33w%MBR#OG%LVK~P}}->F^FQ!toG^YSl6l6)L66Qmh6LafP5Mnwhe zOrLXpCBkQMKyn6vd9IjIma<0atFcSbEBit0mS4qQkg|w%z5Lfb1cU3k>enKjEF278 zm7;05MIAZ)>GcJF4gjx>0+?^zMu~gRRpPX`b(lW$8zF7G4}PMyjTK%L4ZjgL9^#>h z9__K;2*o2FDB2P`Squ}I-G_eO`HJL-;lS(VJzzdo@zFDBUO=$mMO3=R*JDyGN$mOQc|`?3(A> zB3VQKo|$yGS{z zU;2rr$g#hZR%;lbOvqO3`d#Fy2&+!5svcDc=E2wMCp`gWj_%aoN7_Ifl%l(M+WO?* zN1hG)4Cv49r8S9k@b{5B=2nEz?d2*B&<}neDYVQ|l5{oIoV2S@|MT~e2P>>(_k@6T zs*&s0tj7FbeEgoHO@2(FPQkcy$0O{R3g@)45nMkuKSa<1_;#l z7b`)7-{1O^rKM3fs{O*hs2p|tYUl0s{j)_>1SEWM$%n322E6aj*75U!L0M{6rcvYj z;h()rtBfS|YIVL!g%ib*;Ku4Df3Xf+I8e7%;=#Xoi7d>X`p{o3iRf?6BV715g&Ev6 zB9NE-)#B#_()5vq19*3H`uzeF<|{ zhRcIEJ#+wd{}!1+I%rN%b2PzEo=acI&Q{sNo_itkeDvQIM~p(}QofG~fBbDrwnl+e z-!K%R>JLs43rd%24!><3qj*5wz*ttAcC)0RONZ*uZ;Rw+g}}|KGS?d`E{v0Wlpal< zAU0cv!>z|?xKFZ#8CA}QT365FXU5xG|KUW!jPT?`ixj3jF%^My%d&SBB}|jw2h5dv zN-Wxm>0btb*X0Ljic7c67#4QV_*FnKJs$%1O>7roTAqcdLf*fBM+{^(Ep->!+;=8S z%N92dZ-LqT$F%7__O1l$>(lV4!1+k{WuiRrmC*P+w=tbZ_ip(;&|#Q)Hu6>4waMat z0YpC^h^)7o%4beWn2dU=#Ub&E0$CYuj*~iQ=(Va6@oTR5WdL+JshYZysc3ov!y=kB z(k7;=BizJHGqV=VqyW)D06bXvH+2Upxd#1C%Xhy!!3DIPUEn^Fs|@|9;NqL_7AG)2 zIDD;`r(@z$D6`l;K3p}K6SQ3L9zhQI5sYW4AUegjsaPI_x$JxI5j-qE2=v(Ug)e3F zTs_rpr%?TW{a1p^!u-JSmz0qA(K(Cr0p!Jaj&ZNBIr$y*02X>4bpPwgCnvbC4(sKq zY)zH5>z+OL1q5U?%TE?Z)h)dj_NKP!$}3&%HOK zD>cwT@LRTcUyM&+GISjpx2unREO@WB*7*V4DD7&!W*BJ_-+Zqm>o}nN_2m8mAV$Oi zp)$*Tdok>N37)=60d`W5n&9UvMoT8%Br9O1nVH^X$4ve6Sw?Ty6uv&^tYBI$RV|Yz!EpTVCq?4~782T}uftZjh=%u<#lt1Em0@bhOk* z@J$#L;_mjN?4HF){Y2AJB|~7pB>-?@PXPK#akK%@`rZQ?ClO-%hd`m|3CanKDq@=_ z3~bpC3$k@V`$|~oC5GQ~N`h7A3ryL(0gLsbbns=~_>S?WIEd`56e`1xq&7+xqOA&) z4y#qq`*ZTuNEC`d08UWPL!$3pvwr=MUPQs3()#s05F5mMZW7xml(rh4k7i!t#60NU*-X=T+$O5xiqNSDf!(LgOL+#;CYkz^dZh%$IlSTB*3|{+rczp9z+9p`fVqkD&8ueB0?-rM@5^JS)LI$v^tn>vQn= z6s$plwX5-%42Pf3LrPM0*l|rLN`R!w{SBOiYM{f}VL77(w{br0eqa*JF%^l)r(a%`6hu%j9hT8$QQT)X5}!`6^0?iN{4wn-ga{cpl@wZ8xBWI&T&~S}D{{)|t_UE*ib~cEnjreSWjkg<_&n=lT`22S2 z3II9O1{qZWf>KfIuaBt`ikFO`f*=Z;1lOc_Thetaz5>XZfE+t zQInU>^^A8qQ^8QvbD}E_|Mqot?N@rYMhA04UuR==zG=QWZ`1G7(7D*{9QLj>**NYp zo%}h6LZSf8^#Zw|A81!mKxm~e|GeZUdc$aG_&>fbQmTa<>OXy6N+q`oJsY6tWB7Rq z*2ip24)01yw8U4wcb>CjRM@|qVS$GU!efvXyuXyyN(RSU4>>=U?KX>OEF_lRnsAs4{kA^@u7yTvQ>nB;6dsm`ABt&}rh=JNirU8xBhM zZU3vk!z|3^_KJJrkw0Y+@|~91=IX zjuGdzn!PX}&jOI#n79mWxzR~`1&ZkF9N*kM>YC>$qse`v6y9z|y?(Te0vXzYzx)4fL{$9Jy>Z#?&Tt0mmosw_W5R zMAwt~@h>`>m9Lq-c7OMG;|)~q0MGO`a|fC)_ME}2FgY+O(RZZwUF_&P`8(l*ofxmf zEvRNMUF=y`SEEsJEEQT;ezZ?t;_M_9;ZbLRKux&BVIQOAdBleHx^96ESKA%X6VTIQ zx6fVTupH$_@GYTB#p{MR8v0m<*AMb**sv%Gwvuwwu4(A~oxl~NPNlWY2F@AceBeyBIX6|R{P-oE#eHUQEP{-_b^TmHV z)S*gx1i&qm{MpMKs*HXy;M&Wabutxob)z$FtkXl6Im0qFW9*1R?Ons1#;!`r!*l%M z!al$DGx4LBOGl&$4DFHY;A6G@@kG4EaL<1R(I7T?c!FKun~2=G zyl+H;UDrJnF-!IXf@|X;(BA_nWf-ds1AeXemSKHHb_;ymXAo`$@YnP{cwCxOiygs5 z=WlrS2$Tu7XzgKj#DYF^R?v)M_q{HZrydIub?7NNU=}Jx$2nSSG$0zm*Ty+p6V_4ZIscB2&vX|I7++vV8tCogot-1i zl&*vmj_1ca9M+eTqnBohejN0z@y@=|0rv}?b0#=86Lm13H*SH3XSfYjgO?^a7Eu|) zP^NO)PMqkRXTALGDCT>)qH&^QH>&)L5=L?84HF$jyiCYzl$u8;I*v3w_I|bawb@WB zQX#&GHzqo(><3lK&@(&hD(8gaTOqg|K0E)3s~j6OUl;Q6mcd?^!2kXDDo4K}L#=d@ zXCKs?BCeBx{^_aRpmY>{}V+?g8Y=V97z${CXaN~UGjquTtw+}R)XDEAcjZ)IS#o;%qw zdlc0o&Tt*Xew`)j$zE=n>=+LD7FK^UB3g!g;A)4kzsypi`$+gygP%}&bYHNIn`)ge zujLj%mF^u>$USP939VSJJYC=`n_DS}yN)`LF)FD&mN1gg}ee{c5qA=m~4O zMyP;=cO>?=( zay#d{nf5~f*ODj|JbF6(%Dpr6w;PcQE2a_ljlLk|s#49izIN($33l6mZV-B{4;sRz zo)5td0w}H*$AR((7(zpD4j~TG#;+#Wf*ulp9WG9FYx-ZlKEZD2*+AUeb2gG+0Fp%^ z(~axoiduYM9&4Du?>{xcZaHy7$?x23h5^+32jKc63PEq@($J2i*wLw>G~QE`dIk>G z@Fb+4x*@^lhirP!uwsfjdVZ?JDZnpCi1sopydj*~p4f5dYxA!gLOET}22moSRor@Z z-z};)Qo*KIB-or2H3UqC|q3f>(DB-G&G>etb~@)VtlA65J$3K#H*|ePAA*Kw_!`oQJ`Eb2=4-$?;%BP8!z~vm>R8{f&v6K2<=hFVZh3G!UUyH7gbw}e4h`be%=NrC)j%t!H|PF< zjL|s7?y8o@O*O>vDqZApXmXL+1TVUn&3unu9i_EVT_-Y34#a=?I{h3vU0i6VVup7F zS<1o4$z_)0yZ%KuGv(}t-pR#xx!Zx8dnsnuOQH1f%9OKx`tI7zZ%;W(9@Sir?QP;+ z#|h%2dJQS*hUH*5ljU)jjF>q0xbez989{YFfv!V*U6m*@#fRDbqcw2G-0s)Ff75I- ze7wSR!_tM*k%DVX7xTb!K2+1zEE=NMHo6bMU1NK7hr@!9>$QsM8MAsj?$RZ{wZHw3 z0Qd+OIG1=TWJRMN&QzcS)Bi}LoH5NiM*WoQbr@BF^9nJ=XmM6P-C0jx<;;<=W0Q;` zEP5oGMw(?S0bH>Q&W`>orWTfs+zx=o+JMYlc3x6qq~nsuGAC0FA#{4JXOi6oHi*^L zdNw2uH~>gMx4+Y3Gr`hAJO#k7?GA7q7{!xavwi%G1iQYc;HPRgF)snMNlhCcu>VbO!rsM378hq0{~=vejsLxXpnCL$ca9X`W*^- zaFoJJ6(WE^6=+=!kgD^prtOU8dmiU8Z=LlZ)c4eTDcVI~n>N^IYH;DNL`Z1LhbHCj zasYo`9PmU?8=*sgyMww^G1bGIpM@?%3+pmf#I6YETlF5kSO|a#Li3-?hGr5h?E-S| z3Y!!?fraG=sp_fK-eD}wco;ERHu)r@-7eYSU3zS!FNhKld!Wmp@GfDIz}Fi*EMIlY z$A0Yf>vN;$kVJ!vy0?&Z5PTO9Ot(Qql}9n9G+%}qDMyrkXZNS#4(Y}Ot1J{*;WGR$ zfM!jiFg(84lnDWqR2zzVe2G#}h@sj?Ba`(o(da?hU)`(zxop8J8uisIQKYI?p4yaP z4ZVj(R~y51x~l-`tiq7mH!OTRXlu>B^r5+cdR2iGr2os!1W>hE!wc-|N63ZnVpG8< zH7saA3?w{Zp>K17-OxM8TqKmu-*?stL_#xJJF6R1r1N$acCBarDq89h1oOndZ+5{a z-XGZ3&&z$Yxu3r99&`dSBK0LvspV)$l>MD^4rR|FVlRxBO>NkMf}Y z=bVDMZG6;aN=na7uw}ir#ZwLPAskWLZF9r#%q^Jvqhpe%IjQP{=p%KXl=O?7Avc{s zq;~0h;z+msCy~|5PILZ+wP zE{s41-;!W63PTd5quR+VcHZ!mTM8zPxah(knEl%=h3g^FT0|T@BwCYMeQSc17d9kr zlAzPDO87u=ay*`@%*-0r1%OL?126$ya$C0mx~X*p@IALDSU($}ot-y|Q60X9+dUK- zrChi!V6&3GOGG;CMYnrw#h#!m5jnHU7x07IJv-kM1O)h#Egt7!KEP4#AlGWFY4OlP zcTmuyq0h8<+-%(gNXzi4c^-#V&p_(Fjhp6q!UECY(e-A!D84mMMp+60qt()zpJ1a4 z@2&#uYH}Oqdjw~GP$ps6{i#}uIq59>BOt3eambWcBg^{V;SrxbMMaC)EO}b`4v#~x zr$|OIOfXG3(TgnWxT9chSSUh$5zkt10??WL_4$2yfzK@KU3~fP@hw^4F;IFs2siPu z1JGRE9W=WC9}E0eTGdBSURW^b@R)%~f|UykUK~GYd%-OJxX|Ocjz+_IbQ2?&ysEm{ z!1^pou)&1_1cZ(jxH)#a7IUdKfkzOF=T2DxIP;ecWZ*K^6`ho1(Ssz z&{XLN@{f1)l7i9ro+ikrmOQ=0W2W>z8t$pOl5vxb|M%TXJz=V7q^8!~xYQHbjs{>` z4`?1z&J%}0_eNGOEm*B8B$MGW0Do~|;MLW=vzB?nMR7a3&#^TwD|j9K!46+U?w)0N z8Jqc4zo$A?T9R}h=!47is?SltR4YZBs(jrBv7;+v4A>W^rae1z zRo(-x12CToFn0nsccjP(%QCFXxMG!8^T+FObft=4+~%80$)x(z?xf}OA?c4PQ6Wh6 z%N45=Y=G;&9VMK@VM)%p)gHSaJ(_saxk{s7+l4UI6I8U@T)oD#06jsVJF7=X)fM4x zUE_0j6@trmXz6aO8w|9c6!P_c3&ynKKQbnhX5Fw75q!y=9!}TO0nw{I_GUeBr^it2 z9b_W~1FM$OIxT1U<+~EB{=^^*^Cdrd7r(@FVsP3;uu3%icEs=lcl)f!-Wi7*N<;#4 zZ^ftX_C(lvXAraqVH?qBt;h8dAGQAmsB;Z{tw&zOM^Yjc2Bn6XH**iI?GZmV1(NUh z7p?2j_)P?^gMZn&UL3zqp#EZ=$Hwn20y9(br|T1JPESDlOI>jT!%x=wc{*uB59ehf zR|-y+y||%ATW-H&YPVQ@Pmg$fKJYG$wcpdDbM69ERrAV0v8xr@)S8VwB4poF_a-B0 z-PogD$ydeTR~vgoPk!*I>HOEd3D(qmpu^K|?9g!8y*(1{lf*&8<-u|)`4jiL?)4bO z@ll#@c-h}i+2nES#0PG2FEa++EW@*6mVl=EM4*`Z~NC5S0+_L%DK%UtF<*mX7t z*t45GP7v49byFmz8K8k8yEC`h;}-Q9&py|-9_&4Li^uQV9Y7NpW{@{+@hrX%AUR;D zgtU@_Pi*mc3Va~^8U0!I&aE*gWiP9GYt1Zm{gtgA=b!04bo0E(+CRS46ZTe#Fkvh- z+Wlj~yI`BVO{b%9D~I_O;UC*PlU*Y3_X)oBpJ7SNR@2`5ej9;MD{e>>*!#iS+*xuc!g($nv!%h5Pk$~!rTp=IG zZ{O!RFS_?kMLg64o9e8%&vcgFFa6!9C8!lkNuO)AV4>z^c=OJo?peF{ewmTt2WMAE zqP%A{B7X_bEc@_IDX08^ZI?Q}#buXF_~K3(=_&+>dpUglPRaHBUQ_2KC z0JlCM+2!_xZr&BS-0=aa=bDg>?ARsQs2}hoAwB1^DwbxhS^VAT&S-&}i>(p`<~|VF zIXWNg%?G5iWY+fQS85A?4BdtE#oaPhCLj3xp#HjBl0be?%8b*Um6X%A{y`xXRP?~~ zgvy@o%45JcO8AF{8bMRmDuo#qmiQiV68y^yuXeQDj|uq2j8_*$KqA!@^Q0EP(FLV zGYH=c4mKT3+%L3AyugsQ-rStZd<8Rc>&&BQrezX$Cn-#BM(vHeJnbfNlf)-Be@!rULJ@3p(}p6>}_MdU;Gv z9$ALflAnVvgX7eHwCVO^Pr@;X(=p!51h%Bv1>i5|<+bP)@+P@7dWrRX@6${^1jefV zg0x%ESvLqdSEBVtqPAPVct|X;0;nF&3RBfiJ}f6P+aMFYL~K^80!)@{tyGw?$7BF< z5ywD7viZyexxG}mNRjpP&~+@{?x_&-td}e+-3?&LBVsZ>VDW*x2tX#%eIw42kkR`$ z(|!~c$4xt?sA}<1&}|5)|DkH7(?54qY-6T?LB9@NK0t2?<4;46iIdGsf8OYbE36EF zHQ+5*FmyWuyEO|q_JR2qG`K$e2AI!frBkpTf8_kk2jkMG671^uDDa9HmUlt_7(T33 z?NL7FKPC7=T+n7gEG!+0Zp@VT=IPfJc>S|0KuYqq@KMU20sMJ5mf=Q9+yq%b+wM?) z9E50C2O9Kq(C8d$ge(G^G|G&3YWTjVB}tiYS)13&1EwIBmAmS`4BbZ13L>W}XYRYw z`M}J3T5=f|OunuMpB7?7?ID$a&DZhQ(6JA8Eb%e{B`DwXOoH``YKjb!nvYb?-KN~j zho%xeLzaCeSbATj(y;M&JR@02Q|z_+;Im-7+W~SuBfN@3&r4hi&8Cx^%uNiUC%x}4b)rDWlLRNZV( z1wsx_9lf&mtGK{)GawAud%pp8lpa*IpC1?wzmm%biwo)n4zt1%t`+t-NA(o|cS967 zo$zpD@KUe7`lL9O3(kvr7xGM0GWVo!-qxE3eMZc>(<%K*_z(gCC#*xwnfkvYW@7sOu0+iEx8)cZj`~L6eUJ=7v`kv0I;K@z}g87I&qM>gj&_`7ZYq)VW8|Bx?5k&qo3vnp<90c z`(mCovm?jxG=k(yd6W$ktb1O`nMIm_qUf7nDrh@g(EK~{m2dQPlnNB-F0=rHe~^bo zQ?4Ui?WOF5m~2^*#Ie(*zsZ9Z)3r9s&T@7Yd*-6ZK6% zad8w1{TsTl(IYL?(w`O3*;bUk^Rqk)P4-cK>xlh4!K$M`=}#jg6}c&~x}L6kqRB18 zTORs(9=@&^gRA3Cln535>DKGpKhI;bl#922!h*0Avf%DSO0q$>qO2123(H*;&!O+j zM)w8f@n5^Ti^QkXh8dXe{-t#&x{rj$ZIkA;zqAaP?xV;udZiFux;p62@=OIAR5QYLHvg$EQe%3h>)2huHtjM;5 zeRO>4D+x9@KT_6iu8A+zbI70a}rS7n4_iJ^?NnJMuY*g)0mJ2`ZlTl zRm)V&2gc1?<^)wK)(d^(INce>ngus%UX56S_~`f{oy)egS>i@Xaoj@$YdYbTv_bUU#xnh2{a@nZmdTYkW%BU~xf<^q}#!u)-3`G)`2Qd#^%urCWzo8sSD zMnjzLrW?S2CD*2@!@sj+xE~Q2eRf8xopc@VHQBR&A4_zEBMaa9Ex+d_h4RA=&l2D| zw#n{m1B{4`!c}1~Od~eS-uZu)3h5sbRf4qRE%lC`Y_8_r0KT}p;8oi!d$o{p+M5%_ z5pe+r|G{!<6#||z%Jl?*Q(m*8bbf%gV&mQm^y!&10eDRuCxw|CVP-|R@<-j0Q~5!! z0jgQ?Q0Z!fjw-)P(F~B1Yw6KHCfH5?Nz|q~a^CBq+^6@@+q&CBuZJpEQAqinhdDq@ z6z@Y)GIM%$4)rHMvm}HQMd2C4uyj%!-hxcmR{16hqu%s*&VMt(w#FV!AOlaz6tuq*$}-&cz}KEy@l9;FlWv%=Q{H>SIZ20A^z@MkNg6Fw+6SHqW{ zZ*z&2f3ZBk@euej22THLY%b@EAef7)vJab>FQ`Gi{`aq;3aE|LJPNoFiML{lKfej9 zMy-!oF-R3e{0yL)^PfRQZ^EfuzzhEts*2jkRS>Ds@cO#3A4In8Z=qITT+oyVtV8(? zfNhEgHdd+=)1zsaa$4(ET`vE-l`f(RsNlKAn=o#L!SNP1Ahp(hF2pPjS}NCI%s(x) zQK7XfJ~Rl1ix)DdGgI;4%ZRTxJ^oM23lA1=(&tufmL zJo#T1otPlFAe$4E$3cTWD`{V8ldk+-|1XQ{D6s0G-uRnEkNon#)53A=+pHh_OB^Sa zi0lhynIS>n{ZStqJn7#;+wUpp@nT2Fte_TO{kI@8w~i70+uk%gbKa)qC;lzu69S2P zg(xdQjR?deMarUc4FC3T!QT;qitPE~A6XA|T=}->ZtuQtr+wDZti^~l>I z;7m7nM|eyk^;O-raS0Bfv%FgFJb3-xZVB ztF@9zwzBp*fEXJd^)ds4X7MODR(V~bhz$yldW9YAR_Jz~+ieP~2o}=B+yNbuRFECb zh6+JTX)U60a*@?Y-C9wNhC`!suu+o?3ycOO$0dX+Xn5VkfE`a4yMg5gSU~CyA3Vy&wR~0YHP#>YO45 z*&xZIyCE$zjz>tJ2BgDv?|^rQg}r`~;2P1_$uE6(5gTkbQi3%c z-+SLv#7gZuw#DMF@zN2b7G=1VgX$|NFdP705d~1c!8P2u-iw-Zt%#)XeW?R*<-G@v z6X#4J!?wLA*rEJ@%K~PJH@bM+S*%t@T7U8$A+c;wx=+9qG5VTP$)rlDeV%f%cf#ER z#%Y(zrCfS)fupp6={D1h!htC_gAMrZLZ>{6WySHJ)IhEp&t$F!dGurtajVX$(2n}v zV+95DZL#+ju@N>vV%W%Gse41PDb+I9ODRDm?-jx%E~(mw{eAB%VtwuIVYy6ScwfLi z^u}hR??R)?eRW&)G!jz-)-%!hZ@?bkFBFpS;;;HjQUFcSZhqGCJRlff7y|V4@@o?% zV)f}-CV_nS2a4E48)TUbMWW=wk_L_PYaHqs4M6+jojUxatKT(V%j;bqgmGXOrJ1OD zGw85u45Ss^DaDxna8~aHIst$VaPRhU!Wu74Ik(eh=v1y8tK<|^Wkh`zpMI%1V`u_o zWmU5`0Pu)H0lT9w{t$2;9~e6irdrx~7*xPOoSk5k1z^h(`Jw4_8s>B!AxLeuI12Ta zdlEyQ|u|5k#j(4pi{lZ`$ZoKUB~!X< zf%Q2yaF1R8?0}Dglq?je9ucwu-VOk-i38A=zMgNixsS$NS$}T4E*x~QH6M#f2|ln< zi}4@;z9J6b38EZ6%Aas>gFarw>iyv8Hn)De4Sm46`cJK>FqFxVe307#Wp!aFNxaZY z$?*_Xof=Ar_SHGedP=cInc1c40dn*-tbYN(^ZWqSYU>v+o;@v;xO~5oBUf#YUeQD2 ztDgXUuTZc`JKGE0FZOr04Q~{C`ayjaI@c7^IgD45gD5;;xbc%qln(kT*6rOWFRm2*5f;?Vd z`(UpJw711YOQETH;U~g^cVrvJ+eu%7*Xd^(yg2_5y1T^po@ua+{D|`3y)=6%2K=G3 z3<+5XD!tr3y@WO!z+D#?Tz5)0o|`n3uxJFfoIy2LUGNAZ5dif1xIkUSFwT+fC=^BE zC*-}KE`a~qGGR2saA#P5Wf<2pyHxnXPZz>}ebR`sc_{0&`)73S*+s0lkfGSlZPG@5 zf3~5GbRUqZjWmD8P|yA4zNkc8yu+dFt+xR9(C{5p$JH*2QY(B-Db{*U5xXcHKqf-^ zzj%)HcSKQ-{lfD*K3l~4ny#*Dt?0B_KKfE<+z+!Be2=Z#oMILK6GT6HLiUCXY~RnW*-_EWc)Vw1Ur@I(I#nZFn`wrRAvFpG6&*hK$XZyOdmn%}Qw6wuk*wGIiZxL8 zr;C|N$E~ssa&!#!%bx>cbA3E0ChN7O)yr4bOOw)9l;9x%ID{U=G;<8>Y#SVPl{7hU zx!>Qfh>g{|n>iiG1dzZ~9S$84RpjHqwtpUoi+jH6#7|LbJ#w%y=M}L&*rCB7EIL+N zkn()c=zUs4JRhuSH`${iSgZRNv80Y(4qvzesb~HGwewY@mKRuv`rOjseQb>m3n;Ja#M8EAwfz0rvhv@j;5kNS@kFZW^ z4!w!)?>=<)D)%0`iw735TWoYw1d;G$ZrXW;&_2QWl!Ia^R{2><2hQ52fIMam6vyz! zfXzi6L+%Qy7Nt@B9PN1k)~`$|r89%@4bNfX^C$@1`&`=tMN)47L|+ieM;du_t;!2nS~-5t#%3u{-bhZ{Vp}hxb8M*qrwz zg9ZPmC?aL8`P2wvY;+F{CBSeAx<-=3Y5;h)0%&G+DK+f-&}_P1o2s|omg2mdhy8ST zr+%S`-IMUuT~|z7UreP^QQ>N(u=q<9o2iXTCsaCUy|FR+jhUap=mycLu{FFJsVM5z z%<$X5i$LXyemY0M zzyrz|W&jimeEJAV0v~;~V7g@F#It;}Q^tv4Ka11-pd-m$J6MJ>PH$*H#hS6QoQbsS`m{HJ-7&fY- zZ(dr&`sPCEmh|@uAh@G1EbmxZj$7_l~Q8bvmJby*o>&I9K#6N9XnNr zcS70R=vmi0pi{qmozxON2F?41<&M*{d9xWl*!ALNVynXv&53Q<0`?!5iGA~TqbJ%@ zg6dHsj2RZu!55!y7#1-w^O-Tds{BFdHbUKAN-_2913p{fiZwhHrltJqFhR=ZB`BY2 zr5qvyzNF1Cstc(kS3`#+b)e@~?S-BTjf%tSWQN&MKBKq|0G;DAkL*SI$>kdP(X(i`*RHeKq&N}~<@9>WDi$Gsu33Yrg7N=$c>MPC`NEp}K+*aaiBU03De{9GNi z^|d3kWmR3=9E^WL!_oO485=GLMU7msPvxhaIuewQ{GcXE)u&3(1Ygfq=y;Lau~up; zNK_c?UpyYQ7mle^l% zuI`F7%U|m(Q|=r9c_xBXm-`7kIv@T8P5Svf+w{Js$<9WNk&6?rITf%n71{5Mkz^N^ zb57Zuw#{R5TKlsjm+=xSze`n<>Axf1jNU)LyC_?e}^4$V$fN=-4W zXb{(zN`g=ze9aZ877k2as#7yre(Nd zoTMig6uQmu<-Q98+*`&A%2nKKsudz>W)%E2s|5_2AO;=Xk^DydfAO&{Uxw-tq5X2lf;qazgM%qlLXo6-OQJaT?^YiehVf!xZUU9iy3B`*9TkiZRl2QcGIu3 z;$Tg&rzYSg3WsO=^eGbz$ws87HtO{nvSrRjndEM3DL*Z9HY)r<*^|qQ*pR5k?!#$1 z?v`?gYR&F;fKbQ%bh%))@jHhd0OhEeIN3SLE=US0>SbQp)nI$u9aZ%=>}#zUh6TLZw#ZD8uTDe?xzt8k^40y}F8sJVW?3fKZ@be-8KesHZs zip^<~Mb8y?yEDeVJqrjbT?Bqpr9yB9Qu%dHuZh@2bNV$!Y|e>Cqu2jdi+J}n4sjQT z+(q>EHIB6LQv>=1qg1i&UoK)-o1knR)%19w!!awIoi!RjH(Gw~wa!WM%i@t@lueHD zKKoin2>1c`G!n9t-|-cPF@*ymHIG)O_A3q-@prxg{;t*3rr*ZJ>Z^p>e4Wts^v+X6 zmzkQ9ZJYS7T_=SJnG;BhVFu0UufqBFz1BXKrKB~|$ZDWbUtc2%Jg8UNn%I5N_zJUe zM!46gDg>;co!Y)o}r-XsPb>q!@}llaE{v z+LjNr%GXk`?}Hgxds*CMgZ<&J{~p_ zeLLL={2989joS@z>)s|LWg5)~rvh6j446BSs{qL8Fd%wfoE>j)C$|njo#z9^8=*+o zN0wzzhT*mawp-rD2`kxR0k1Q$=1L+it zw&JCgCaHu_eG~k5aZQK<5^o49d*S;4Xi|Pa_9Z#JoQN;-f5Ws8y~YF^wHWGE6_e6_ zJ1u1D$XQKA&i6uekP$aMMDCk_;%QsoogSiX+2c{7`H#@$;=;Np4g2KUA~qtbv(hH) zmEeiG)T&=?h!z%RhG5~}CYpMh4``l--r&g$ISW*prU%t1nY{${J-EKD1 z^?_MCLlC;&ZE8qN3^N_{G6DE#kogRctYJG->_Z%|cz&^)Et7sQQ)pfB!Qj`)(($Kf zKlMqAqt_dtIJ-~D1Q$N->jCsdHt3P;Du#7S>*Rv_91rj7JmB?lW3QYjV(w_a( zPv%q^1FX>WJLM!J0xr^*-F)#0qE7v2LCpj|KF=6Vk)>r$dbBNOtLW4)F;>OFhyhRXd1eR;j-9Jrms z&*Zm#%T)*f`%wP@0DjU1NMVord(UMLW4eb12d#W zC2SXFJp91ll)NeEwN~{H)h$jWd9DvV4PYn61FL8|;)DJ>nz`?0CuR#t7cqD0ys3av+SXEB$X3fW9s+Xp|D< z0ac?#l(uk25&n+G0yc9pqndQlo4LBtv(BhvO&3kf_2X=*fGjuNJdVg~f8&(Js7i_B8!`y9> zCq8Lz*GaQH%-!EL>vSF+r?V;mV|Ly)%QI+`RgYwNZNpY#zCFuBJDkv_S`RNz)xs~o znkBq*g>|Ciql);uH?juI_D~7>4Rk*tg%$Y3$TvdwInu_;xC&yHtpp@z`jDt9Fh8E{ z(U#06G+}o{e3R3n?JEH0G#3m4ICG9?2Pc2|w?@jrA{D8M@J(%sIs3ipn= z1p#-pMHii-;ky9%toXo9it)|E6g^Ra?WgBz%3FTaF5#1rGeh*dkzIb1CgFMtuuR-6 z$g-c`RM6_j14?d{IX4TBL+=2`+^;^j^mtYIS}MRV_ZC2!eC@3ouk8(hw3`3CRWs#! z0vK2FuG@sSwzt5AX%l^KFJhY$J;M|3Xb*cYS=SoPi{b8}K6HDJsT8+L5!HZ}9&Z(a zGOI_`UDnfVBq|Mn2FjXdmG&+@5|VS?hvs$6S&=QG{ZZPl(~_$ zYB{1{)fU=*BlFJCnvOt;7t<2Hz_s14!=96k}iwHxDWZ_v-x*@w_ zfu?N|=&L}`;a<*WjdELj>38kE&U&Q?yos#euAd<%2zJ0isaa(O2CBd6%XEpl*!GD< zMQkWvXYOLHVwhe;E@o10sJ^4G2<+;`MJ#b)Zr_&9)^#2CE@;1dW!tgM?HjhYuUqnJ z%l!6r``TCT?QA`gTfIKF@xk1|M{^4w>)NmfJ|zZqZCaFDvn02gw|b>z^UVWpeWhhf z+mm|$Om5*F9glBsdvayx9mm?9Je;g=PN#XFp#}Cywl7%^e|LQCFz-Dkw`5Ch_ww9| z^|?J8Iv#nT?a4>^khdSr9bFCm;1_`1c4Sq@4UaGb9lU6I?g zy?xKl&emOCIMAi*-Zii;YQF~N7A@?$Jpt*w0Nc$XVGj^3SH^k{Cy;oQ8{9lMWoEndwRW*}df+%nj!Wx3U@uv)Mk zoy&|Z&F$RHr?~mS00L}s+tKY^EqB2byVf1g9e#jg_#8)HT-%tcYRWXuO}1}3-ge~v zt{sQ?`rgwTY%_0~#3^E5g=pVuK$IN7TYTAGgcS>OYaY(+ytnPihX7Rj-Y1}y{?AMgZ@wjAe+hHI;Sm5@p@cpTd{YP?Jmj^qRxY+{T_T;Me6^nCw?}gcDbi6XR@Mv!D zA-=}~K(Jbz2$rnL-FXizNp8)G+?tjA7aQiD_D6TLZ(a(+${k+IkHnG<9QhO%d2aDB z{^LE{bNdzqNOb)C?>&fZWykJ)aEO9oD!?~H%u2@)0OoXe=s??(Yx&ANwytBxUfvkj zO0?w1Y{v@x1u=+*{0ut_lH0$vy=AxB$t9a|M-Jy&j`GnTS%}BWyDdRqaTNJ6=f4P^ zf)lcLZ&1gkz3tl<2egP^`T~)1@&R50Fg_QM_>d$FF>yMFi&$Yy{HLS_u=Cg>ZHJcT zmMrSJcP)@8OyVn?Su9x(e|;6F2j>E2uKEne5hlxOZ%QQrq+&7DgdgUXqq*Y?yLKGG z0|Wp&_ACtu{DStwYYLjgwZJ0Ux9#d|y$^X&=YeIN#}~J6Tf>h4@(uCTVtTO6ZO0a= z0Sc<@*z_b)W!Kuhd@$z#Y#oNbmEx3w#Xkl=!`T}Wz~*gAaLO`;$1~{RnCYx%~nCAjOd-EU=Ut&A~fpoRp3)`1>J@_eI z{SX(UM^;(z#klx!+VnUl9H2H5kT_{RuJsA%2OJ`Icy(^|K{YC^8Q;qu56wUkXJEtH z=ReqX>^M*=;7<-Oo*+b-DZqmLM`@4L)V}>raRQMU0pyM~i$Dk`%jY(v#L4bFzBadM zD`&}@AL`h)OMDoasZL2j_}bBJ`2UIRMVzJL)DIp383(ahFoyLv`qiH+N#D(HdE8ozbaFALCx%RZT-v(zEleTTT*@5po<1veDQ^R zl~2ztc^HI_qML({;w(^;G?l^{AfQ$XLtuRbzz}LV5#upAa zBQQ1s#R1>gzO)5qk}NALE=__00USR7*>+?X$Xo!~zIsjDQ=4!txJVLG0eTbl7?K=% z9A3q{E?wC*Z*gwPJ}K%465G11H&BkNsIRR_Wt++~GgI}2;U8wKr5Fq9(7`CA0t8$J zRn#Qu*kZ|kk^pL#EOvM{o2jZ5^jD^F3TT-eRbQ>E4)E`$+NQbCDo_SM73K0L_#h79 zJ*z-FfF^k6+E+c;zJ3n~IMs@8?&?;Uprmo3m+8A-f$Sr)ZYvUS@N@`5p5aHr%%?eGE z>D+yP`_?rG9i=Af;;;aCoVkuJrV?noDEGP2hN`FN+qHOQ=P?0(#i6c+D>;S~=MAW{ ziOC{vXV?fX(9m>A3a1tpz3uoG9S65y#Ae`uN<5yx3F^d#4Upw14gbz#yrn=5>&Jf| zWd9BX!l`ZVy`T-X9bRM%X8Eqp2j;aOSkkp|XZxPr&;a=gu{3+Z`N9b}23~Re`LMql zh}q8L^FYUmm;@kcUweqF6G%GZ6o6?5@Yi1mA+3{^W@0VNlDf2BV2**Jg_jg_%Ij5n;z#sen#lh12kQ_YjX>bN!OOGosVxr zR@dCH2**IY|J6 zZMc>PoObmx>?q{qav)9)GR>`6!M_9j4mo4{(x-qcU}s$VBy?_a{jp5X{ZT-Vvp*ZP*rra zpF=NB*iwa$)UZ1)33{WQ$6XYG%1+$IT?^jzT4g7L?lf;Lo!*v?hg-$Ma)ph4T!lsv z{s@qKZB{BdFcd9eSjJ3as-!7ZH!_n>r>cZ**tz(z+`c>U%t-Z7Q$Kj`<%y0X8#|8N z4QDpsDrmimRYWg@Jc6J!?(ckj7e5>5oDd9)E7WBT6;+`94!RX~&;lkUvDWHBt|RC6 z-qCjC5o88RYBsx$G~5)FH62IS=N4@Qs}@cop4_%W%ekb3CA+tGV-tw%c-KaN&q+mrXfmhiDXFu#54X4qt|4XkeEyx(cY zb)P#H<`z8xyehYFUgzE?y-2w#4`;KuQk^T)-r#P$eT$OAo0~Fq@Jm(Dj&E^kCYv3e zPG@GPs*|02pMrzLMatPtjm@dExufRLHdNv`gvkwHY^KiV-6|`xDFD1GdG`6EGmTZL zvy)vdONC#rrSl27n4CE*Sr0qOsq4t$+_uA9)GXcIxnqUBpBsv#wA{Byn%{@-21~Jh z{XU_0t;!v{8+Ne$!5y4F#X$;In~w8*z{^(*daXT#dTYl6^Mo<6NMA9&_<$v7FJQ`E zi#FyK?t*a&#r*z`?ehZ0%9WQjt=8frsPL8V?=E>3d7!@5e5sSdp76j=oZ`Yr>`jnv zVUvUI;gQR;_YNTH_T`VX9pB5RxNIAzHNk)acXwcix+eql5^i>EmOpX{rELYYX_JPVQ&9-*D{>!BStCEg<+pI&@>AWq2-G)ZJlqunGHuBLw9*!=&h1<; zc4}+;s$Ct+4z#z-Gpy?s3p?*$s2gg*sh8UHW)b-i&A0_54EB1-k@@M_yR~E0KH%3t z{UfJW)K7!`5;i%*=dvqg18}i<* zl45*ZMZ=Y;xiS)hbgbG2QmzlWTKE@D-{ z-BD@wEBD>-1{ab6JGwDbHz|`&1xmBA$Y|=&6ms|P12Y2j&!mgh+?>IppHQGQ(e3FK zjFHP+jB7~AJt>vOLqEN?LFgkxKVkD|;6$ppec$1Ics zSSK{TIIvl$@^kSoJ_vmu?NHLklQ@|@%JIJbP;SkgTo+Jyx$z?euigX*Z%DGF9t@HR z%}ru5CH3%^u)%r@@1C8?NEW^%90`~goS|~$^AqJ08&g%aS#d645M@;rd_j+ZD!wED z6f_ak=y%MEj(uT}f?78f<&SgRwL-PI&}kzm6l`kr7IP(bhcL;%ph7nR`AO&WJ*}$y zz+3z4Q6AKNIbjDaE`%0?+!o4+;$es-8>F%a7LsUyp|W65$?}O~lQ1%_ZKIJ5JpwP3 zz-6g|H(zvX;^_nkPurA}=A#6Ro34u|4py){Yh|r2C~P~9>~3FrJhy*-`y)G0Z?&2s zYnOa|-y%L&t+5CvACfxxp=~aT#N{JKl}{NpYCNBO=Tlru5ys*&E^zKzfmUN+dV^If zmvP1VAO=31AYfx_IXD{?(5%@SR_+zu2C=%ey>)HpQ+IUjI1F-*!x~4h;B>fvP>y!B z+{;ztIN(khk;yb=n;I(`ls?jo0dHNTA<^&+e)7q##jAsOb`S|N+#z(56wwIXA4PWi z=9b*P)!gH9*9!i(h#v5vGypYrf~~n%P^KQ%6~+!Hf0#1Rry%Xz!UKBn5Ku|a_w3oT z`_I0xf2MKT1%n0*7X30V#Qb3$&87L3WBiz*GP|)o>=SZbefIBg0&6pr}+p$8eMp zmEK+jf=%EY?O3IguU`yST7ap%Z)8DHlx<iOX=3(0B)iC2{+Cr~e~Gx%E(9wk?&Ll4TFrjzGWABX3=5Fy9?!+v({C23FoNcORx^2^xMMtmmTZezXM?gXE9hCV8Wfp zH-TA(kty_bCZ=(p%&}u!7+6jUJtASnMRdB^r4AV8T`j^}^3+2et6FilINtPg%qTx9ue^=ts1EhRh-QehM+QIfk&;_l2R zmUH2RBLu@_WTvhmoth)Unz~rSQ!nG9V8b0ZIftz6f! z{1LLbH2i$DuZZ{+rk!}5pu*qFwWBo;a4X7lfcYu$9Ud_iuyMK;FGE)ZohTsqNF0Xe$d=X!~hDBy6@Hn zK%d!TPw&$oU;t>T~6 zK69%_WrCasTMy}+m&DMXpf{!sS~?^8LiGcp;(y;xaEo0qDB!Q0<`+H&htQVL8T&+BIcfe=M8!M`2*49r;@+`(f2hgb{T_OASb8jBl*lV|S9^VL5 zjovwgfWnqDzJ-s;iv((|hg*V1|h~t~uRQ+mNoU0>rQ8%Q(=J9k{x% z<9?xRz#8hSm)p63TVKEmQm|1;^y=V}a<2-VZxk58N^nTeB>bQ%s;d%$$p@4^V|qJ=zH>%fx4KwlgFdG87k;}pl(Ec_496V6X~7ZDbLE|?ChcRAG= zs2t)5bREfvl~8j7WFL**1R#OJ|+=gRgi z^8ZTwZnE`$T-G37_E92{7cgc|79lTuC1je(- zsZEImN|#oNIznc9dUJ*?l2u(T-k1U&!_JmFIyc_Q11jqtkLo4}kn^{Fi!8b$r=QGO z(mf8!LjW|j@Icq%mB9If_SQNl`l&O5zA|k!Q5qm@-gboRRe)8~dq^8mFg_faOw0`M zl}cv~2APc9x;^@(5SZ!bg$}f)WA6q&M$wd;d^=ijyswH>DEmAL^IdIZM92XB3c1CH z1N+@}Y*JDbtRJ87p#z{B^61I_`TSh8X!Mc{Y*F5D&l;5!Am|m&Y}?^Y*p&~vi|1$v zvr23p3Q7@7Ls`dz*+Qzp;R>uT9;Xudv@oKMM;>WAyn-jIQ3x(DPht2Kvny)3g9(mU z5dX3uAxl7I6*Vos9q9bkhqGldABY%~U~)ng5l#e|aIj@Dw||a<0z8kK(}$1q-P{X& z05*namvV(qPaMvzY0WKrkl&6Ht`qKQAy8I+ak5Gb zCdujK$N}!ddhEg6q7`|?L*aSGKa;W#hvZIHd2_UsYs0~(=UL-X(&oY$icF)9$kh%w zQ*Y01YeL3-$Z6#@RMC_N?VtN04X}Lv@c09z*Zaf&AR~^~N6U2A` zXBj7AaU%qOL^#TUhi6Ipnu|!6?R-0Inu- zaqPgXkOh|gV2iQCi)7j?O*7c*DYfbJ$ck)LMRjUIeX+0=<-#4_-8pYSlBO;6ULTOxIyU|Q)~Fjm2Qw-EPFl*tnz63(sVGl)H3 zJDuKd%O59}nJzmyW73y8P)GzKd%S4zMKAD$wwk4hTZ`oeE)8ACE59Q~=HnT|FWHjcG&y{8;XpjyIN5+H9W`DwBuJUqWz=M&a1*r!3RU<~B z@*fs5pd}CtGHVugMf{@Ndzg$RZ@Da_KyFL>BRhhGK5^|-TMraM!tEsO;{NTMg={^% z3a@F4TgsTA<#oG!ifcXCSa^Lzd+tRLUF^@?ZNK&@^|_DLTR4pPx-PvNbmAa2%pMhf zju_QtW_zBbhuZJ@L!8F*b+<;1?bWEyGe3KwtJVYfS$t}POIy-@9bHkST`}Z)P;Y5( zYQJ{g3%e=%*|}xziQ?LixXBe*2&gy_JWd)MU!#*=z@sBF4!Zaug(=8wcM z*FE5mHLHTVeke__I|XF-w;g^s2*{!#+81Uzi%Z%}{paL~784Dc0m0=~-`}?c+Et|* znwl%pA}Xi44J{vrA!w1r?tT>Bt2-0kOD}SoVvtB9GSEv)p^qP9X9QUqXZo1s5cD>D zTx#U%3m?;ciD0Yn){3Y=5m>%^^boY=mO*2gtY8^p&8@ztYw_wXVGJU`+@ghC52ElC z=JE?ek|)2ZOLh7!C;<%vD}0b=s=HA0?&YeLOl_iMh|7yBhu2q+n$ysj%8Cp(iG)@g z^LdgZGMRL$f{d8JN68^v1rQn<(sMN!olo7(T{L*-2aILGIp}ViFn7(^KF(Y@w=aS5 z@e&=Y54wB+dc!fxtz0ZJf*#PD@vg&QG>xGD)uozhtF$5M7m(y-E0JZQ=PQW}0&x{d z_)laPlt@B#3BrrXNvSMogcJ-PSzM`5ji{}!=E@-g!KDZ?XAqhf$YdF~J7ScJD4)*n zdT!BE$h3Z-GmG1j+_yv-4i;F>j4HAzeRssbxXFXCQBCt8688dE!!C8~5y_qt12>aQ zyCwk>`-OFx>mK-i6Z4fmmzhx{{5B`iciduK^z% z(RZc17wX=V8wiBin8{|Z$ke(A60u#=}-B{631|lb&(h~ad z$_)pigpVfuL{MzG26jl2ya+AAzb7y9VV;b%?DcR9&qq44P|jLV-RCg0M4@~d>!%fi z5dmtTtK6}5?c48E9Dkl9few+u`-t|a=Crx57fz%=y8xucb{(&b|P0T@FmjN|u z=Qa!~Cv^oRY2~p7K5o=?u?Jnvbo;5O?uz4F^tvMBW^LkpZM3{#q1;g^30wpuV7%cg zQ(#Ha0ePzLS)j{cv;kE!odCV7j)HZwbRJ9HPP&$)BLa2?&!81y*H$?wlm*K@s=7|Q z86i?kJvA6c2X}`JoLcOjtLBk5y>eX4@y~6qsS`@15>KZ8^!N5JBPcbwbCI09Pa07nWrBZbj<~Bh9H-ervZt! z;ulk2?-$@SB2xiJU%f#E+`kB{iBj7_gss%vFpVLQw9pZ{T$!3%sED3aTsfvO)7;>i zaz=N*1t((6rme?emg^+wje?+Au6SdxqDS}z1bM2c3?S80GxaGH*mz%IJ;LLyuC`#I zytTM6&)GM)uyPfNqY0)T&uwYhjYbrQ`(?Z%F4k&cH>W+>2*E@Bm|c zR6rO$ZCYb$T1Au46^0g9mef0@sC!E=DjjrM3cB~j2Mj}?T6=HRO>^OS+85hMpSuDH@tfH|Op4=8`i>cUt*XU3v@PVkoLm{eL1-u$GbudjOH#T+iB*oF^x zgbf}QA$PpM&oGNFn$=W+vDtF# zP9}C7D{<-@JHFeD6Oyt7@gdWaBFhFzP=ZMU6ak8s9mhHZ4yhA?0CNCH;!d}KP)KXRvcdZ*J)r_;`zsmX%_%yfFEown24X=l2=$NJW{ z)?Vk}fTEn_-kZr-#6Ekkwf5R;ed~MtzTXGlL~Ekyh3t*@0b2Yfv9C(&QHXOTA z1e&^fD(MbYJle*_Z!Tt@o7)rKMAv+ys*FGf`ck~&7??=@JiG#lC*vQ5FOWw~CUYFJ zZK;yB7?rFhjR_qkdrOhwc{k!3aOhKXP%)+)tt4J4f!jy_QrVQ&eyT0(=CxsSGpOdy{I4y;?vL}uuI3_Li4B0h1tcMn zJc@pZN2!@foql z4n{F^=3Q1dkPI^1PZl>SO~QEptjZ|$NlrfnC;kstb@g`kr1wV4&}~)IGP3u1TE^Px z;e*CVnz`^gB%Hu!9R}3zR6i=c_$n3$94L77An44fG(uzFTfL>FtJt%u17Sk(iScvX zWk1{|@c2OK?C!u(jPs9}x6!Mm-IKG2j?Re>)F~CvaEEJB&_V2`8&d{A#GfQC4{=R} zw`GGH&sTZ@HdMwZW_DkinS2-5{72Kn=gb!eu9o3*v}$gv^wQbBgQXh>^$>#hQHhN7 zyEd(0;SXMup)-x8Hq`t_ruSgz5Ytth*WsUoJxovO#o}c8c9$wgFc|9;zHjKLWXoCx(Sub{3bNVeYiWK`FV}i+x=+Gj6-UWDNP1{p>IN)jdxW-xV*sFk$7h}Pt%XuWjp95~PS zPfF`@gm=rR;ga%NmX!6@S^|Zdd9TySt6D-?5X~{Dhp4?AP{ux~5R3+8 z$!*|yll%rExsF2HX$kSctR;5kp(YIkhGG(j%Ic}4Omp1d81uO;z!=hoc{5wH=m0Zh zCkbt4v?g}1nQe7?&)=5bM_l5c&#Tq6<(YLUyY7!(B)m$s z*6)6bIrW@0pXY0ACj0%Zx9q)A|NGU}!jD#MY^ZN-*x0ZpM2)fg#;LAuEqbS&Rc62z zxZ3ZI+-Jg;HSE;af$4YR8j=3ZPA;GIgG65<#xdFB$ye!uhrq%7q~!N!`=(}YzLC~9 zt#;Z%^858o&o!)TSl`gps;+*ae#3@!&!y%~N(as*U(WCbCBL((zNJC^{d@5D!wu`a zi(kcyo1boIdbsuJ%;UPhZ!=}!w5nl)e#TsBY-w%LtpuUG zwYsf`h4nBH8zl)X3OWv;6hu1Z(Z*0X5sE;oY;DsVl$ydk| zGIROX?C53p__wSW+9ezxEJ~D+f=_tBt=caDB>3WK``4X`x7=@ES-)vrYhz18Yw9&{ ze?&ZdHG7Sh)%{K8Yd&Q*lNK8+OyFCnj|P8cg~k0);3}B7KY&{!i{XB_9!%tNh|L@Irw!yua(_&~G(X$0ab5iey@kJ8`s94+_y9yW z4_wo_p_%`^r`(KxDPX2bzQ7m8$8e?j^5=f-YUeHa2OArVa4;LH<>|%^>fW!%uiL%9 zv3axqk-sEG*d%_!XR z{$gvh{_{(%AbwR#UkkHUy#>wVM5`lN$ngVp1j=FU-S{PR!@OqfYdiUL0SUM1!lou) zGW{N1sP}}$7t9g0vB65K#~6(4M*{=zmJk?00vB=^!D;+?vIxw7k>5ADl#pSmGzbg* zw(Pu|>}tsjm^x@=n7CM6>bqo4lS-}hWu~;n9;KZ{wI=N?e{|W3#}Lu{Z$1|V)R!%3 zEWpPtJ#u4b0qWuu{zbl+PMvzgvR(0gMyB{>aTEjv*_8(9!W*-s1+&v$} z>OwctAusrKko!(w@CnKWlVWyHvf%^8=!`{4xvFkiVDZ4d>*hK@@J~Lyc!lSTw@qtMlA~3&)jZJJkkW;Yb7S->El_d$%#lOd*x8vcHoO9`b@r*9O*jF? zFY_bo&conkvN(t(i1>LkMnIKmo3}UX?0@i5f;L?V-d6VPWENp zw%JS6PWG??e|hHYVPjmaXm`BXF~A^i)-*`9k#vYIG8WSS=s(=~ZHrf@=9vM3Na=)s zeDH{^*Rgv2k2uj^TFCT_;4Jk51DUk_fH=nn5V=%rESXbtJ$P)X!t&RhHxrA70XkOD zGpJgEfehQ40z_kZJj2oei&}94dg0JeW@RV=qPaoL+ko{}wCm1dhz@CA9k|_Zjer7b zZqQr|m}@ZiaWQYof&VuNCL}AY9jn8?f3LrGjyIOHfDAsLGBCYjwf{#FBqN5ZI|e|~ z9lcvR3TR~qEvpsSZ7+;cnunD^JOg6_)e?exN^i2*7jn5b*#LClFF`u|#K5TD$t>^H80f>xYe64a$$wETFu_>j#8t$j>GA z2#KH$5#U(NevK0nea8|_1F4Y_Sd{A#J$bKvK#Az^*lD2m0WPJnw=i1x9*{BhUlpEB zF1jJ$C5mpS05UC0^S?!)rV}DXrd)(Q<&2M^!$RuC$2mG55Ih2tLb#0EwrVSUQ?D4+ z7>`eliRRbrHYm^v2gKC$iJPV4SLCg*niP~Ey?b+J^PTIbO8vm5MGS>f*vD?RAwq14 zhGkcdcblNPsFB;4@KEEUK2JUQ%z&Mb;WK8F#)i`F-^ zv@RCyjslaF_h@!6dO7SA6}GsRbO)Ce1=E2`WSR~ZBoAnSImzpa0=WpBuGA$uRwyWM zKgn46=+w+*3{FlSl47{XU3H$%1$*c08Nd;^)_}(fCXjNs+w{L&}P3c>fv<(jxso2v9nPEHfo$dL~ww)XE-CZ3o<%@Ms<$GH4 z#g__gijqVI=W@d-Mt<|e%*RKFC75GX_$g>8LB}wreLN=Citf!&mQ)*xw>FMVN|FtX zrbPxo&8L=n&Bw~nMv1bmJ2Z!=-lvlV%*u?HX0DBwZock?|1!*tUIwd_FHtm)@ZPF5 zT>uvXRAzfj4YJfE$bu?Wl5J{1^1^~}a4K1ywt8Suc-^CXqTBe?vMk`4o_>`ClU8X0 zf+v~q(WM7+>Y3{~c)-!>*k^9{?Q$f;WS2S~Vj0W{*^%<- zVs8vX?5cHy_!VqFyZi~-l{Gm9$sbyewSTk<-@V#rtMG`Ml^QO&j}%{1(F8;%Kjy#Qn*EFP2srbS%b3qrUM zg!c$ptFA7PAt}asaFi#Y&IvjL4o$!+h(5jCVkBNq!U4)O#T+zRN=C%C1-v>Z4hd!z z$dleZG;5V%%xeHhznL9?cgQUFZuZWv?O6T7tM={OR#+Fp6;`dP1VaKT>h;g&ItuM* zVmB0vUBzzD2&B8!-cDZT?_?Yuu$9^ZL4>R$GvE9Zw;W0F#?H2m-u8S-M^uP*r7dMo zaPQ#G2xnjveszM{VVRZLkwAERWguhQk$D$qm9V+w{C6!50nP1C0);PWCwEWq;c z!7`-|+4f=h&sJZgmg8eLMh-$B8``ey+6=IS-?XeEyWk(Yp@@Cy!2Z(68xGI?sM#w3 z*Tq`y)2fQwA~Bkw5*XHYUyMucLg@;o@*c->=ZD_Ma@O_jxg9;mrlLB=DW{lI)sDBu zSs>Y7(i-CJvmSiQxXT+c$hyc_22 z*Ry12besik@NUiUpha&s%ZT9Dwx0<0+E+HAs%7OKvNv-NF>8jmRD@?%Wyz{CQ^>$U z1?PggAX)}c85l9dP!4oYpSdUS4S93wXBc?gavQKU!L?BTm zFC>aawZsh{&v~du8j#I&Ng0TURjIZt7LSVw1JgE=A#J5d6^9*uz9U2<_n( zB>?RrJaeF!(3WR<^TnO`ua>{+aDQyfy=?zpEMOENT@zmi2PaRzTk7wpgDm9$B}bI7 zW(Qp6g9vJ}EtcRkHE0HBRF2Z|D-Jh<%O~BuVGYBU?0wW&-MX%}T!*@^(7C3oxV^i| z&2_C^%=fac(A~3Wv3t0_WkX$4LuY@OGn+Ybl1w89{V zvsHnR9X?b22w6k8?_D%tF6?q}e`=YIAY!}IUe``u<;e1i##*<%GYp^9_i{l;RNE*A zGJ}T>mA5s_Xhw!M9m@5p+968LVd8ne^T`y%e2wJ6q(*OIhVBa|M(|b*?b}`Ml{4>2 zXmUk_{YPBAddnu~9;cex$}?aef~}?iEVnV;wtBa)fHpL*YEG@zLn3{6&Zi(4tR4(V z?}A|@jpz_Zu3Wp=EH9D7??DLQ>_gclch?ei7c|vD_O;A@*`=2bi|Xc5x-*%l^8@5Q z!$Cb*C$2+cL$t~M(yj9YMsAkO*I!yOvhb@qH`x2rloO|Up&U_%-NrKK*78?)8`}@J&0`cAwC(7G$d#g^(@s+fk8asSXuzD2OPRCa~}P4GWl8 z%#qCRZgr)QBAQY2IHrIW%+dx>o77ZxsL2DC{S9A8bBN$A5&$3(tZV}=6g4Jqs?G>` zMMx<@P^Vb~_{=i(3^e(FCU-y0K@gaW;zp>r{e=cAE4DdT z8zA2sOchnxvaE^j)BmBP+)&i=kHZ8e1@{^r526>`S)1SKnCb(w3Z94GiLsVW4AjyF zkT&>?D{r#XOd7K?1YyTaxfFI3(z3!bAM}$~`iMsTMC+5r+)&^Lcn!WNF2bWpgu#Vq zqLI5F(iX5hbot%!K>y`(Q8rge(+&oY2;Nv@les`7@w6bFE&y2H8aCJ22>x-jZP(a9 zKNMoiP_5V0_Jf?Kf*?vM*e5&%mSco#!vE{Ut3j(kPf>8TU}7!N7k|VPM~%wt&>>@^ z)0eTvdxf@jO;fJ=t$Q{zFm%{uO3bg%WZ=GluUNykJkMqQ>Si=|!_F&=+WP{PF~k&+ z3Nm%TKHK}MocU0qX#8Bz_&wAD&@evyxf;JMjaW@Db5$PaQnN(7Q7KFcp_Q)AI`r%! z&XTcr5U-bro>VNZz9gU~2ofmMgT@Gp4UB!{Q zItoB+*!gbkk(3=a`6{JTt$J%3a4=5$ucnS$oSg-(&VtQj^q*2hO%F+x-|Q$D7B_a* z#h_c|c3V^mU8FR7SPM%cNff@W^hrD(>F-8s!b3;WCSWC2t|&*F_ly)epfwozl2lO#Q~kYq$jH$IdMWy+X#+x& zO9Bm)JzO^TfT$7Siky89W;%6yf?`!j-^M}U-3h&4cBr5?7|jhibIO+QTi0!X^Weq8 z4w4;W?$Ro8ztO!^c#T((eHwS%%AIV6ZHA&uD+TvS^8MOLOp&1*Qz0&a0eiQjVt1aD zPU?j!yxrzxAE(sLwE$s9AHT$&ZXYfPjs4v7pT>&aIE~q+Rf|T+9&z6{Ev4ou%?uoY zsJMWHcx&848!n6_dYiGHJV$RO@rdMs>Nk43?U$9;OGpjuFGX@J^U8{(nG0(zClImk zFu=C`G&-ToTjh_IKA&ztw<``t8uCJbfX!}b-N!$WLl{BgtVAXf&5 zR~uyLH!(=EJ*ao^So?$Y#l49gJI9?eYO1RMArUFhB3;4S*le=hC0Jp zsauAxJmiYk*m1j94%T?fc4ysJ5ZRYlUbYwF`ITnbF@{-$R5#Ap*!oVPTXaP_L|ZkM zqq%wVn4}c|sKDMv9&~23AxG9G&Um(wAt%3ZZBnv$M0J&QW`!0*{CS?&$0VIw)?|=V zvM?3oLJvRi6i3(RuM)SJvnXt9$#Y@9gZrZh1tJz9FN`p9iXu>9F*xF$hJRln~ZUpXepEPBYn_-6kDG!Zp%0CplBPh z6UNV&>;Z$1)_3!_`t#Vfni(G`4Za&3Ng{H=twxrDf3ijtthP_DqzOR}Ck#o00zcX= z*N|KW4le;b+&E4tnDjx(;?#}85o;`NCaW0>`oQ*@i>vcnbG;oszqUC^&OXCJi4^8Z z7t&vH`@-}y9md+~@|BM^lK-~6gL5v>$2&A&X2ok{%Kx-NaYZ`n#W#FF_OV6h~LCw(bqmOhPMMqZh#BdkIam}q0icY zOp3<6NV-_;ZB?t%aLJJ$M`u>xqH@eseD6;x>-f)9`f7LorFiKDSzr?O}Uo}+Yof3%GI)i2#D)9c6Cr1cxxB_)8PhwR_)P^`3}l;dI6kl zE+j1E`6;yKjMIJ|3x?^eBFhyC-1%h5#wb z?~VtN#NQB@V_OYTd#Qc+X=3)R5;~SQAP5Vr)D0cI#asveDX#*SfCY2t7xHFkC?Rv2 z8rP@^I>6dJm#VFCM6>aLR`B@jB4>)#Rm7-^JXyxFxWNO-%Mp(KXeNlBPzUOOsT4eE z*=Np>i2)^YL$R>kh{c!kwwBNLvk)69)garKivl0I9NjKSlb5qaW3<&*RKES%LT5YI zgZ2}fIL%m`u+P`t9(#R_kz=LDQYAIm-pxFc{7k_#oQZShU0`6k3@e@r!PU|_-KlXO z&_O%QbgUEiA}e#<_7l|d3euEIb4@nF`a-Wmrl_Lk4YP|`4q~bz6-8Dhov@I4@r){T zr=49rKwMgAuY(8&LN(fe+B9v;b;57$`K_kA^hKlSrCaiCSfHuPTv8Mwc$?3x`NW1%j`;YW$u*AWroA9%ctNpYS$KYik4Y2btMB}kgHd}PcS)PoPg z*V7edUH%KYM^rkE+0317g&nyLdQM9!+3{u=OZnq|_QTFfo_jFtGs#>-)h#&rSog*t2x~nl(=|{ZmMscRt8}~-c#J1njdpS9tSXQiZ;caS+MneW{hMJTIK9i9N zyz^6x%+A>poP%;4(+ujnySv&7Ih*1x6|UP;QDxHR&ei#jJe5lRAw1_Pu&#_3D|}A% zjVe*@toyNKY>KW(iEUnBlkOqy&}ul|nE)Dd=3syEp0sVOZLj5k%*b~3e5KCd(75Y< zz|C!YIG*_5S_NNh!7!C@Ol&?8yCe{4miXUaMjB6Cq4*IUL`KOs>I)2SRYVn*RY29l z0XB*m&|dj;bwlzq1P}KKTvEmuS?QqsdeWmi)%v1N6mbXFdTmK5k;k>QwGxvh>oI36 z88ULrJ}nDgRCE3aBSRI<3VVaEcOdrEiVJ)GfRe2~77Wt8GbV5a-);YH5)ry+DbET< z6!13a@BdEJwl_*px7*C*%Ub4+z}RvF6)u8?encId)S;(lS@48|Z4&z|B^4mhkK)^D zFglihmQ~gJ9ljU2K1w5CSx9+Ocee}zUcE~fz;SE!t#O#KsgwFwK?U8pdCVw7cczXI zx?Uhb=0(_BkAN4iw2r{&|Mw*Ph}knaVEUskrwo_jV6o#`H_LkRkgWJXNz;AmPXkkh z{z6YD&SWOc2K`uLB$A(fnrkN-hk!%su`K&^n6 z5ogTf) zdFtLhU@h6pWVCWlCA9wcF8oMY=9XETOH-)w3gob)zoVrIghLE&T-jUbXb0!$Al1k| zhm{R(3(N4-ur8m#j@m5axa~%jS8zQNUxsZsxfy?#>Q3N)OfT@?C!31}{Z`VB04GpwcZnZ9H1ynw+J&h=L7zZhEXc_JBtUBii z?hYR<-RuWK#uEzPx{ep?nvUGIZkKa>=ho%fb423r!cI1#fixE`sH>>hm&ehW)gNkR zVyISJK~3 z%I^7(3`pu$Z&5^u0(Am+lLZ$}kG(^Qd@0?FLQ;wkl|MS;%Nh63iif1Sb*cLktW}zjvDMye;{qR0olvN<#!bBiJl8 z!s$s=&VwS5e&aM?0)0Tn4J8oS5jqsdI?a4_ufAK*+TDJ)2HFF&eXknp34mX=o&si0 z!bb>q>z)gspb}xCY{9j3Sx=Cz&M`l}h_(Dp?@40~dSrLs%ri7kwuT1748TaGQMxM( z8Hi3B$O@4X_XiUV*M19fZHxf8-iQCB9g?&LB`!eHqD2F=D3iy`hBE6J(Jk;Aw>6)I zY2eUhz*P64Y`2v#F#JeF8Zbo4aKhvqw>u%B5379ON{dvy8A;@Q?o16qVivxK03l|^ zr+@_S=tZeZ!rO6t0#IaBPMdhcum~wk*~C>KI<)0Vbqi)9XoRw@c`4eaU`S8u3QK8_ zxDzNNsm)Sl>SWZ}G)YOoPLPWHhBFh*hc}F|aA$JB^Ip97-kr()9%b+TB#{4#3LT_M z|5Xf<^+`=Z@eKl}6l#lPvD(a7_zctILs)}`JVl4tuTDs4{1w1j=1s;%%~@|0gwo)_ z@+1Z?|Ab9sJug&OX?FJkr+KW*-Zm^yDmiPNrpad-%9p;G-5+5v5Wb{3Pi>`|y`(5o zrIAmuDQQ_`d${{1HwGKkY!`ry*oBQVJx=avDG5XWfG>%RQ~`7Gb-LViEFhawB2rVt&edUdHHirxicUgE56D;MS|hY7_7Eusn7ZZ=F?z8!2x z|1joIjd!t59X-%kL4$_0?^6SdZrhMN#V(_OBcmW-DXrrU%8L+p`f%tQ*U4ot8FiL+ z3TXz!zsM>f-dwiHz#ir+?_68xUu7Y9{Guz)YSnPyfjjZ5naihPqftQto{x?KxLdt1 zMRuClTW6B2q$0LN$XZ9hc-iJS-L^%;7{)Y+l8|KredHRp>P7)$}1*cmPLC z)jjt{TAfSog1Q01KTta2bouh=^l{|Go-0KjVgQN`f8Lwrt)$}ePf53jY}IfdS+#^G zv2qjeyo#qv=mP{volW#^+zzfDD_d@yVRZXrwg?nDx%_fqkb;A!GqP;H535cW^7?j! zvWd>dYah&>dEN0qq0KMmQda+f-+uy4Q=Gy|Pv7_tlpIcqmc2&nB_chc@nu!!j;q1F z4a>qNu%K}rD8D4{wDpqJ-<;0NPs>p;zo(zCqIiRBlH7DF@OAmNnsoB7kzwoYbt(Sv zr;#6zUu5>gz3#q7Pi}aX+)hmZ&{mng#C<<~>J2unl>QD)?MdR$`IzCY@$^pCP)hj7 zFziED*bgLPv<+hXAS5`N)8t%-vFs$bvNl&;;ob<}8RjRjI^4IPmc0WTbU^Hv<|8+n_6Vuhnd=qBbxIM5c3y#8Vm*raj^L3rP&-I42|I5Txm`bTk_ZSvsoG`jV<@u`Z&Z z1VvR(5;X?HYSMxsG8=xv0$0?#{2HYv2raT>_}EfemvM2br~t;%nZpa!x|HPc!TsSu zh-0RAaTAEk&7lJfdP`5S(77%7JcYWG*OT827JH6lufqIC!Cb?ZUOblDsmADFXh-M& z#scE@K;e{IVfU|qCSZ?O8QUY(##W~;!Vc=29z9Qz2wENbkQWE~Zs7h`NTsPjjpFZK z*Attl7Qx}&5<1+us<1tMMAccU8YO{=AYP%m12u7E$jBWc=tYSJ$FQ8>_9TEX?#)p* z1`W~%txWvTNQ$_pkL$|1JQUA-{DpW&m^6BPf)a?~Y#n(QN{yoLnY5GJNWNYv2Zl*7 zFR?rC^2baPL)B8@cO<;LYRTBoI7+;N)J<=5_3;PdU3;~CQ-NzdVa)V{qRef1CB=M za3aCbP&ISzDx0XSRRj9o=Bs(|^|7<&3Y}G10tz9AmTwVyVcR%0)bxymlBM^78!(zW zp8cN4p>G)u&Eg_V7LlpHuQI>?jI+VqjOaC4<*T3*B-=090j>lJZmBHQN%rk21&hw( z0Me6p<`lkw6kuirQR5{;86q){xkbelCS@a0nav>%lBHY_>)HoENytfYW7BUTbZk6;``4);ZvZ1}y2(US@IIc>{991nmOBwe4| z;pnkEZmdtnti_Yt(b)MyzF6o%oy@}7TnKCLT@Jx7Q|sE4-A?4R977wQpcu8;?SeE1 z#gU`yHZASw{05_2a~qR5SI@p}?vbQi8FqHSwT|strUYjuP1^>K&1!#FlP(7d+pt4~ zT0fSbD65U{Cn{_+74{q@LV7lUt>6Q!D3<5s^7R-xhmjwM7Z3G7xzYuCAtGv!S#GTx zR;AgI;$&Zd`8EeG6_sESw^tmH<$dp!-`yv{qGTO}b|}k=4?p4I2yFmAqC(VmsSj%T zu{*qDk4bQdYdd+to{0V|zoVA~s;(cqN%cQ!?59FgtHdO((g32xcaZ4M= z7HplzGv9|yO{02?wF!w3{U5r8b;H6uk6!{6k}OW=)+b(Va1!eWNzs|_V5X0obN%gr z=)KZ-M8hVCW6-;ir5G+khNoR;sD!}mp`$b7$b+!f9X)77UHiZh%Lg`^+vXPG3Puwi zF^p<`#{o)mARMy$hDL$r?!fH9b8>WwA~1dGnqIKc*a+CXlLIps-qAt=-gP*U z@-O5=FOMB5A3mqoBwK8UE=~_#BRC7ZrHxRK>>&r~rzmZ=f*7 zZk^O$j2*vM4#3(UJW?LpgPWiav~7K}#6KR(w&C>m%dc^JXD{gXW{+KkM_(p$&RH@P zcceu>`6e0J@bRvFFmtsZP^>r(plcmJ42IU>D~n8zi|70t<~g(5Tokgu*3U8h@h&jS zQM`QyU*T_v_$hG9n>S8>0ckc;ar_s^283R7c?oy;T^Y#SE^35}`ziprt0Mm7s*Mfx ztyoS=GAcM6;h3v~geaYX_@}OZlDgk{f0{O}TZaNUd!HjR@pF(wlt zAF9^F%C4@Ce6CY9{R5Qnv^F)124kaz2$+T3TjMD%Q5Is*!t!i~I+;s&49zhJC}48E z)Q8M5O@GXYP(hS0gw;pxLsQvnS5rfh)=&)QwhnK_^KF35H{!6=9vH z`Yg}~xqIb5j^3NDTDLKs=S~0aJ}R5-B$GOE%+WC0_qLHXP}A;>56dU|q{_Ux(*^d_ zz9m-9aM!;zUK%-1S}15$Q|C$t_R2-Boq^_V*~?AST(=xXyZjnEa^@@(N1k4U#glB) zNpA=D3lj0uR8w7H{@=+?oCcVc8leU&vXqPLj4)#TS0gjK-UiB{OhKdMn>roA3ow7u zUm8LuVyWq{n0l~;(XbIJ8!`B9ZI`uj%6#SDYfoX{Px|LbhjqP49Wt_{07iV|xB~L@> zlQyEacYCLQ>~l3_7L==pMTcU_0wk}I8IvhIE=U_`$LlL2QQPrxqi zossJ@PwGx7&*N7A@rzF7kV8!aYH0P7qEF$OLl>pOqs9lBGq-$pvg{Yn0zo4Cp?FU^ zpI@KfC&QHejH6e{3*v@g)w7Cf+x?KVGx#1gK&C}fgwuR#IE|G1YwX-w%yst^d)s?m|@d$y2&c@@$R@KV4~pM5Fz*vwoQC>^_*1*K5<%gj~`mnp&kJ;BgG z+*=5Ze4bz6^Hl99`TWe-`O+JEldrJfb9{_h;W;wMLUnwCO1%Z&&y_`2+d}!L5ALr} zG96=>z=&@&V!yf+`oo-p?3r9oZEW7OVMG1K*2dPx<|dCvAz4kIjb88Z6b=BR4q*`& zUOsp*fa?YerW2P1ot&kUC)wNj1a^_Gd@e1Gjg$_YGb+tIOyd74vB5>mu0S28^yXmc zll?A;Xu&M}s}GwMFJAcTQWs+ug_9iP*$6$K#;nT^BcU9yY>@O4f)1x*Stts_C50{M zU(NkGfZM0*ls#x2<}~u#%*6zFa#G}YROA|%I*QWNEC=2qPv^Q{cs6IWOb5y!Iwh)V z1Q9Ldb<((z>}*CS5#HzFr|X|>Yvycl?qqcCva) zefQ4JHdph6DdiB%Tk$4zeoc;0q8vo@bmjExuTGD-G>Cgt6!OvUE?My?yi6&485l~C z7~~HdZ?&1AmEO&}DQxo};yqV7KVWwEA}zU#7!qb8OK83#-iH6Q#c-(SzA6Cvbj`-* z^}LkK9!vfJwqdZu;QAj^wqClid9&yKU?XX8)a;n#58>gKhII|ATGQ#hhf6o!Ckq!E zXpI1VI509Cv3+gKB*?_JCc~gHtuPwo0OAy0Afs|{G@=};67OyXzCGPxY2Uj#(;n~=BAstt z`fR>f*t(P1fO^swa`fbue7-Zyzd~Wqj-BS8So5Zxc!q%1XFIa}K;ou-)^wU9x?$5B zQ&>sAb;<3dLb-Fr>;@7W-#Q@B(@GCRYqEzn9p&v9>jsWFrgyJQZ@-5FVZ;tL9C%yg zOYn$@;T1ifaHd@yG#0k)Z+h$k=OJU++g1GKxS?(s_6&5S`vPw7%Hb zX;xycgLpNPhZ>uj8aAdsY;J5ygO~w#0qW9~H)qCi6TX*#u&=p9GRP+*?i)LM@3s4DLuqxNxmTS*1!04qL+gsyi?tlaUhd_A0Or^dPglFc) zd&H|!8aYqN@KWl;jDbm%zLU{_wMSX}5`iI_Jg}(=m1!L$Q`r!n_3*SMh)*$CDUEQT zMEK)VN0}5r_N?99_$gWnOz>6nZi-HBC^jU<)t|IJ-O%)K!@8D+G@~-81O6{KD-4ro zoYiKZn8h;cfXHVd0OgEOZ1foeK3!Gc((v$R=m>iA%WTreXfe06Mt*=YFM;VicqKUA z12ik)6`;`vu~GW^k?3PUZm}5e<`+4@fthOv4X0qQz448|UJ znBl)@H0HHJcRG)}WWdqkVVPlrs3AGsQ?@Vs#&AIg>;hS>hC!A_z@z;LP8G_{L8qvT zlAO7ZuiFWZWGBhoPaYz_g{IPfJYDt2kEaWJ((gT)_SCK4X-nEHOw(sq)-~mO%#YS< zw5VsXe~*lq%`eXPyDDUHx+1*psWbm_`tzTAjV*o9`*T_P%U@O+Lz8)WbD`&jTAF}K z8on<(JwZ@Dn8nY0+BnDLh7xjMh=Vc0;hx$(Z z=4BQcrd0eps@56ZDb!vtjBm&79ohJBI?JwKYtBToZ9-QNkSCn+t_!ufpI_h!)V)bI zv5Tjk&M6%dmd!bK)^o;?10PWVo(+Z32#W-~-M1@br?+~SJxTsjV%-&~Jp3D||JmKU z;Vh>9PhB??_jvk~C%W5S$Zya6tTVSg|76`ypXfrcGyMsDtyygpx7Nb;eDl_=-Jla9 z(WQ$JAV>(3*Mj@V^ERbMS1q8N6$?kKbd`*q?s0f>~Y03K7D-f z&eRQ^_EWLJVz8^T2B?&33J)(h;Ex#l!&?qG3hf$nMGcUV27UjtQ*X^&K5OO$kAHrp zm4(h+QI!LuX``>>z%)x=5LcO3feXovC-AjOoy>Qa>;Zlm@R7`3gAEG1HFN zJ25yD@0kHQo*P?Hl%zeyURr)za~<8d?w*b|bE>t=}3x?$9ooO`33B5!y)h0Hz0eHSh>h{piTg%YGSo-%4|SXKEj}i9Tt} z2ek=1(;r_pQl5hazl_e`Q=1xB$G<0>tV4$}A>o?&-1SW{Fm#7T3pR8Bf-#@+Y zy>!b?aQW}*E^O<}x7)wAn2looQ|Rnjx`O_@d>Q?B#UuEF-IxInqxmkN8#3nsm!N2D zX>Dv;)%tM#x^=ANI)St_@+*WLjF6dnU7JUwf50PctGn8IfdHP^*NstS7PPb&{D=-j zP1%&T^lsk{k_TR3U03I})%otWVqu569Xk1zkeMrb=+)~}uD8XkLEk4k!+Zm&!w8x` zftkf|&17`wu_2>V%He&33`Zy-Ha>vZET4qGPLnL_*C5b`d54FIXRmw|XrGctz$-y; z6s$uPlp_J(Mwv@WrcS$P$+F>c0#PL%1}=yp_%dM>CA=&RU4qgz@i^$A6R^*ER+#b- zTt+F^h7xyWu}ZeuR6qIzMkN{B^(^;WJIW>)%=BS7TYQe(OoCF7)P@#ahy|}kb0w>2 zc#&$hPeqEc!LO9-i3$`O5Lp^A&-2t+dwn;-PX@K!?DBrzTQxG`8cOu28G?h?LEr?2;?g4U;8c7Czx~;5r7lmjt)&qQf)H>JEgo?%Cl}`{N?+Ou#YY<}+GUFkQ>$UTg zT8Agg+J@&UdMSf;v&jXXpZXbqq8_@ap)7Rtquj7La9Y@uZH+yumb}PJ#$vAu+GC`D z85O~1=gIM@D+{MqO;e*;4%fYmdkPvv{9X0WBKaIZm2&#^161u!;$G0nxkLrlIVX}FjDb9-i?aL)twb!6 zu<4YvH!oS&*4^HL9|Pz`>$>SLD#=;5y}N^vWY`9sEpXF&Zv2t%#+xQfr(gcDxy~o--n;To7PB%7~h1uBL)be!W28F(<#j_=@ zsbCC~zloxgS(aXQ-?k2`78@o@JjZK$8vo+PSt?)jdRjJ+dfzN1UpSsj;ifO9%!x7^< z*OIS!6(TX7?tc7hhFM~Lr&&vyJG*PQ&a?B64yC)Q>yi!!0>f&rBqWI^S?+|l#O|Q~ zu8M&&-L^TUEDnHQm<~_GqH%4i*!|Nd&M{0wG`3=3*m(gQ#eC@!{#7PZK$a7D@++|k zB>yH6oblYfE6+_|o+?Zp)Hps)xm1qH>$dcVNK-GuxJ6K|7| zfrtb14nGLBhppM9ga9YtbYaoNy?1s%n@YLi_aJFMJ+ejvb#xiR2?R&GS-;w$ENW8fKKQaW(W35o`5 z(!d3;sGE?!nll6u+XAJI!0K|oLroj_j%5s866y!bM`AjJ;=vDy{m0ranSWOAZK>P^ zB295n*hS>JlVQGleMzvK+_$vcRbfDC{ig^+=r`bCL{o5WzHtQoIJCF0(*7U=+1c?A zWJ~ar{TwuvL#4GH4=)p3pDU~r0q#5_$Q<3UcX6&(38C+r{CVb4;!xRNBOJ-Qb1v_G z*m>$>SV4szdkezzGMj(wFbAmC$}jdAGrHuD11Kz_Wr+GxIbq8e4mu6Ky05`KwJYI7 zjA!fDZEEmfv!uj?3=c+vS=AgIBRAf(s?5gK4I9B7O*#1SR;i*BCwdFg_j}&W)MtlP+Qt%VtnIe^M&VwNO*3c~gX+5iUJlHZ;)v)IhzcS{o=X(w*YlK8((g7e4o6-a4`MjT|`YM(K7myi$!p^F%oiU1gC8kNsO zJAB0GCyhp8>7K5Q%N@u@F_IKCmHaQ9bz7R6EWf+Y1O8X=h-6a%viC@YR=Ykb&kZ}3 z`>sP^gIrm}vPsG~)>7e@o3c4jn$U&_!GJL0sw3Y&U{3ir!q;7biIK&w-W@A znVvmDE;bNj_1m@;^V`glXhtRNeqg6M3z-$^v$^8x{MP0j$sdH*))l&Y%=K^C!*++K z8kP=>k`N(v;fIYa=}(%PTYpMEk|6pB4kG5!*kvgscaeb*DUkA*Y+wl#O7Z|JxOnL4 zFEe`@vCvOs9}RWm%%e`VUgcLyap_JjhzX}J=4@+0>qR-A(eQ7#z!c1y4iRCTE+6{{ z%6XAXr|&vzT6U2`lS4_3yg-Pr_~0|=1!@BCU@Sj{)5s8dCInV zPByV`Y@uCX@gF#@X6AJeYOHDq}h~q52U(YZ>FQjJ$KVpX1vhR518ZJ zAy>}dxrr6DYCS4XdB zVcXDclgvj2G=_U`FoX8Cd=G#b5tNJn6qT9JFqb%U&dbc;TuZl5o@jm2;q6;fVMGgA zgJG&8)9aMa%99M$i}YuzJm=ZjX2C%9XPWiY2D1*Jib?;OR%c z6@ACAh*d3TCelpSU*vo?3m#Zt4y*;>7UKNVrI>m8Gv^}_eJglNeszV^r|lMhjEQIw zvX5?bqtWVYfoS7K-pUhh%>E;~Vet2>@jyQ>!LqN^HWq`|Pryf)4(E84st+fHYW-Fi ztm<(-ued3yqoyl&QZULKuU^~gx^6yg?B3Y*GMCo5jbPqrvn>{Q&(=Ox=Y>mY(AuWX zLR(im`U2alHHFKr(qL`VMz~ZMH(B}6%k$o5sT!XIUFq@_qRgA^+aofbQy8X>f(LbQ z!1SOiH6?$#u5oQch?oqZQgGjQ*gK8dEyz@~RI(Ujg7wQ|4+jn|VP}p#4i9{uBy94z z(%@+Fc{&u$e^LA;UtlJ5q_|1GV3kr(3C%rd3mbJAebnUd=4-ztDdy&%*Up=ln7uJV zU3{ZD49aw=emA2#YBY>DOlPQNng61IHmx4`(6(wU-Q;sd#Z5j>ZJ8#FqG*+i9Kc&41l!1nOnQc7p5MM-T@@(doKoee4d_5zQGC8`(K^; z_!=S$Tyt>Wg35jU#4Np^!aZN-d(I9S#VYe_>irrUi+4x#eZEF_kjEfx$>-Zu?WsQu z<_=;3_Q5A)hb#hmGAbkaI3bVsYZjKr!C3>>PMn*b9C;i9e~XjHRB9Ij``G@t&I|zv zW`M0{v!7-@I!U#`lkeC1sL%!DZLWc}*?ZF;tzUPWs>T3#<3WstK-u&QTwbR9(JA_z zkQjL4ByE25Nrd!kYjQ{|4rLjnVk4h~QiymY5rVsNhC_ngJyH*r>Wl<;S`QylU}~KR zyrUC?#1z09mi0F3pUkXz3Q;*}$kMM=N_gRSW;5PpUfAnist@HU?Ac9)6DdQ*{Yva? zh~Fc1GTK`9W`sWvKn}t6w}~jh6@SW%vuv5~$RVWIyCN^=G;$*VlS>CP*V|K;@8a`CQ<8o7DP+ikfrhtVk(({3RE>y zeBC;FkNT+p(_AgZ`_~N)sbwC+3uFsoM1okd{9`DB06^fiAh-remN=1AnKSdO`|@O~ zpfMAS+_d9Q(<2!rVL3P9J^UShI2$N*s;%TnpP zQjhxkug|@hCsOY2)rIb!LT6h~3LccZIzP|5|v>eC~~f$yGOJa3eT!5JKJYisO{oCOQR(3m~&Ho}@7of4t1NBE^4!tAdn5R$rBcCGBR_L}K_XU%2wP zOe(S-cK3GlfK+%~D>g}wcui;r26^`(sW@~0qf(6VVhfI~NCZC=wu>P;U8MwO%?JPD zi8TQ`23dOHiAO6Eq7MlTb4YGXD(RnAst*wA`r#6gTAd1mr8N6-ab`=&JuZy?_6UTK zq~TUBZ$Qlx@W#jf630HQZ?$^-N+1&Pv>50AFII;{Jsxxct4Qq!c6ZsW5^f<;{E#a- zvkHjxLhYm~yIi1bEY1kX?C(y|aHzlNn^<7F-MfDoykK_r*h^qWM1jYp-c*M#6?s55 z$xD^`l81tCq2m@za1-50*>Hhp@V)7B`_fn}cJvGffwGOs%TAnRziDS?o?=P=70&xj3EO5W$0O+W(Vfap#8Y5%i4(mn&aqR7um8Aot09bqz z_YnZTrEAl8*8h}1QAb8HG+G^=vUPA^n903x#QdN9jI*pqj2 z9)p}5nAaeyG#==$R8ba2^&{^juByC5PSk1&%<&{U0LG(CDH>LiFve_q?=+F@>Wa9Y zn~Tk;VW@O=97>p!&ra$G*&%guqbc4zo%>$^y$ zd|V}!hO`AtkfnGAm!agdjV zJ3f9-)^DsnOXT*P=j3dz+Gd4(oLU-wLNGJh4@9N*SQpmyXbytMz&TjvembS{H{cv@ z>~2EegH)y6DJ5p5(NGWfbD)8@h@uG?4J9T)uDH`Knoc8N@eAk-#$|4v(BFcK(^;d_s>gT|X>75e=ANxC zAe_XT=U(0(M=UAZjC_W&oH^ElLzU}X-ocE*0RgRbB;!OENDU%&?wEINueNEfDa!@} zYH4=PFOfO%YiswFd+0cspLe98(jm--(t%gY{TE7?_k-=$cY*Sl1TW%tPoa7sa!{@+ERmoq_)jy+Y$Mg*U$WFf1*xkI9Tqf-K9b*LJfe)wm zy;nMLZSHkgEB2zc5Bp5@1=9+3$mZGPw`R}0K7ITo8D@NdqOkPNgI-`hIesyVRk`!Y z-mugv%@{Fxp|%8)9P#ATUe*nR=Q9>QgTSZ~*5Bg;4l`5B1Y1hY%YxtB7ENa+8C2b= z-kCtQR>dCY`;pYMmPUT!Hd7T16ShiLxfS#=?X-+XgF{3r?tRBrUZ-UUTkO_xcY_I#{Vvh4t*CepA=%1l z%es>9?7C}QOpS0D53nFEk~UIgVpXzi%^4jAc3L|@J!!!my@<%XHvrItwFx9cn#e|< zpGV~T?t18$M-N`K+L^y8xj|+=-gjqm&<}TMW=rU8Dk+_R75v#)-&2>{@+pGh67iCU zc(uW!F-~I%CsIlvLvDd~2Iw4&Is+AYIo$!mC;?=SX9l&N+2egP=XdEFWZS-#gqDMn z#Kcv~nP6(;IOqCP9bH>;9e^eAw%zyvD8PMsA}l+aZJvu@qw0m}eJ%~S%c;BA9(#Gn ziHI>?O3sykyW>ysRSSO`m%PoUxgf7Obhw7)It8Pq-T=j27_-Q$g`HEtk>a)NwZTX1 zoc>5#$Mngyaw(cB#X+c}+ZF=GUKz_Dfo>XE+0DXZ^K0f?WgfYoQ|UO}v1gBwbTPUN z6;#9}gi<@A_|S-H&19#mQjNW!cWC@d5-xwDkXOzZuSi#5qQs3C)L{tB zB^ezwe4^kd0m*19oCi0{W@7&`<(#M+WWzjDMP^$2V~DM8Y|#tX+w}siiIDq$)T>P% ztA3z5oEAC<#FB7Nx%^yA{-ZI$v8Z0!3C#H&#o?k$gCjW*h;k&8Y}LQYd_KVO19PUB z?MkA6<_hPwY+;&k@82icgT_n(l<^Fv3D2st^fAmGRCGcDE$#$5&H`Dt%e1@72|=)% zXdjk1?>6x`!M^FX$shE2{ihzcG{}=lre0$jSz5F$=sKOD640;^CDV??ZsL23n4Z)t zrVl-YsC`Qy1MW!<3V?jNb$RyO6(IDp44OgL$)>8CU`UPyPfd{cJX`e#ujq&yGA^|!2OG8NCX~>uyi|v`)PG2o0pEk1q1Hk$!JqhK*iDQ{mLR^ zKFfP#k-1o_vdCO`w7NyMP*c;uZ1`CvZmle>vQ*&sKY1=(f5|FH($)e*b1WgtY+G-! znD6ZQwat8Bgg790SYjlr=WL{_SlCwR%ym?2<#8PwkxD-#{rCgZS9ORE!Qy0ZC z!c+~WV(yYtQy+5y=n8BXsddYeso@@dG#hF)jnUTdI>Tghn<0d*eJJq2bO@HiPQ|j} zmLGU#EYHfAvmVGCvYH;VIf;7+T3Ac)#cVrpcELzcsldWswi$;YPZ#@*eg7^R^BPzW zpH1qHR5q#=#MQ^M`^{~VxKu@3Uq>W0*#ba1WpnsubFw959aNRM%Yl6knrSb&dDNTARIXQ2ilN*8!}yzG!M zCSoF0+_r!=*^zmT!cs=l{Ku2OO_;GO&&Ci>w0;i|X4S8_;kpx2Fb=%=Gm;af>6g zZ-B}A(5uo^GjV%as;a*a(xzIDytpP2}^PrfD8J~YRa%r5t`LGVB}3R3aj zzfJ1RAM~NS=}YI;rlsYxy|=q3eIfT!KJD!+{8ev0-BB!H!ArA}y6e)XyI#(}lrKIA zOQ_IkR!OJP1Kk3Iq8mA51H^w_W`5n$WtJzlFKblwkiG<}_^wIecg`Qqh zl89vfSX~Mzh!3t_W!3Ml2m9li8RGA!>xQ(AHD3 z?4-J+l1i%NC^p%nuE9l%G0u68ahJlxU=|^cQh==lgQAZgZQYVZ0~Pq zct12xOke((lwyHj^ z1juRSkXf=NjLx#5#SGfW@F4|8&;qw^ixlZSz~HJ|h5tcAz+G&?|G)_LevbV%BV(nh zNu#zB(E%}zlrhU^`d1D=7LbbowHD_ktVtiKTMosCja^tqkY0N}T~jC;(ZE^In1))$ zY%8fINuQf~D-92n4ty|k`AX@=VWS=0w#322=>Z_Fv9pfWgeZgYK~HU^@+Pdd4u?cC zXuLxO&^;GsPVcA3Q%Yz~1v9+}l+$Mm-MzVvw56xFz0j3%D$J`SeuwEyHiIu;K3yIe zFbiOM_<|Aqr302|mfCy>rhH4T+sr>!nW)_DV)z(e18xlTotITHFj@}DR~0c3kiCea zm$ZsP!i2rpeiRi)lcaBB`ZO#A#sh0y4XutPI1MY2pmz531m@YmEbw!R^T(Mid{7O+ z4nH*!-orZt=9rVwu_{*x-h8HCu(I&{gYlk7G`w3A=Qy4xG|co* zrL(U?D#^`$n7_SOr~7sRSI-jU>H%Y+e~`F-_zs^DNJ;Cy5AJ7KR#kKwtLsxV%+yzC$jLl8P1oXLki+^7dr3yP)Qmq3H>VvqC%g`i>DEp-{HOOGXHG@W6-{^f~yJPvYiVW z^@V-qsX?w|Z>I)&`U?zvt>|4ZjRZ>lsWQvB`nx}jEW{>xY zT_pIkq@((`CRCZ!nHQys6X)&qTEF|T#6hwu1T=lxkAU__2bXj;RFAC4RfZyek@7HD zV3I`Rgn0^$iEJ*h=EEgI_L=dIAZ?mi&$G2^Y)I`J49K%}BQ5OA8XFICtuAqWHCY&x zW#1r6g;vhlkPDPII95V-C6?`q*LBkbk)Zi*?)XJ70HkR5gt#)~qR~HQkB;cNDMk(M zc3gg2cJ}0df;4E)W})^xN+Za|j?MPD65OKH)Y9(%n&=o^);>b4i!ie24ZTYKu-y0$;O_2rI2=Zg=2f1UZ?#`foh9?NCFfCm`F{4=%Vc#y293;*Z?)`TN946QYF)*D~d5LU7b3-LTMOHIivrqIrXNYj;GR^Opjb=L=+Kt5kOm4%i0Ei7V$&sc#Tz46 z6RVH*W%&D{&FQ>2Aa*9L`fZLdoBccl?@;UO1lXH#8zF!d!}%2_y~C z(lk#odH6Q~nq=NgIYYg$<0|ZaFW6}(PN$n%8k?SibzrOu`HV0VnfjHU;rUIVwI)`J zm>y37DjVI^QzwA?kUd$6aVR&m`_jzhyTr2$jSXeEo0VM~aeTx`-wE$5=TpG`u6f@h z1r~x51ID-^R+FaOONDK?&~=JSK)Mt`N|z7454uG5@sui~m4oV3wuxn~<#y+V5(;ZX zhy(;{Fy5a>KNF0@D2G!g^{-%+9D1K%nT!cXJ`-_tv;UQ}hVh9=rBR$pN7uiCt4|!i zNEHpOAA)#m*)93;{?fTo`#XiU8ja?b-@c_|XQ;D<8KCqq*>NrlOI=J}0U2hg(;{(v zB8bi2K&kFn{5YsIf-3%iz4Lsfx*}vn-%!SvX zD8l|D_qb_MG<3{c!e5L8II?^C^gG~6n;e+A@Qwr(?_9rL+Itdounc`b@_`%iKfbXZ z7>^J7`*2VlKI%>le~W-Cz;vrp(Wg%jnC)_B>YehbT?p?8HyZ)%s9>LsR+5!@&(_8_ zNzrg@UzA6!bq%zPz-CeN=EjHz8$Fe-FKnYDyydStID@mRc-xZwX&(?XjhmUZCkVu5 z^<%aS%hWk4bV2o1)0St}r96j6QB*t;Mo5oeVnH5*sPpS7GJIb>2vU#T!Z7-yqVgtq zmiqK;@%gAN9Ri?@2gcSwKd>YcGDp&CmsDz?baRwmM^jp0^oq!7r0i1abWDnxJBK#- zMFrmJqAv0%+)zi&VLB`{UkpwkeMU(xB6&-p=F|aON64D7I=s*FdTfMaOE)i-hsS3w z-ooAtXBqoGUUg~SUOr@F=uIkB-uA(DBHX}-_<@MI;JG;86ge9?5q85j{np% zp&3$kXL7$$&`N_>-F=TBk^9?aTjxa^vO?eJ4599K_dTW& zGZZjTA_&jWMfDwpT=(~kTv+U3?CR!z)VseZ7&NI_9WCw6^k!JynIIk!)86LaK}ov%Y0RoAu_x?TQrb=BSF#CJ$l(C?X_hxnRq>Md~-N531ak ziRo3Vg3cIVnhG0A45S}4_oJ*~Y5iW68Vxm10=MwXxz}1D0jjd4(Lw;2oii)2_$RT2 zA0T%XuNPHeFEaY3JJ(Om_8l}UAd~~@IXMi;Uum}d%&pxBqP<$WaRxptDj(z(geZ^% zpZ4^XcH!zg_7S)lu6+Q4XYWZk87I#Qs|`gO2puR@kfukkmUd5?d zCZ&R611=kwzgqg_lj*C2HqkP9iq+&Rg8%)CE@k=t2NQ=+R?fP^%9tQ|OGo>CyA_SZU}(o)}!k(AR4CGK1I5s)d}4!O`e<6JVVFSjMgqVByvK z$YDn?l*d!u3kfMz{{%CU%rQYO5lTd}zzH95avL*$r~znw_arwtG7MYp`rA2x+ALKQaW&+5uXaIL0&9=inhh*DIThP z>i@~}A!l+<#580LT*n;vN9w>>;T0aHa}}oR<~}n6Ml1&R!MdrFR^cxS;gv?t%Y?v8 z#@68+i!eEr_)oDt!s0{e=c1F{7?4*ryMUd#`hJC+f@N+@bt;g83j-s@M=8aH>3{9` z#rh74i2t0cY@tMn${VQ&6No)x1mJE+y@BMy*D=6$i3UW19QbwiAVJLTA+xHeFN(KF zl34ufc}LuEbT%oR&cndoN$S`mgsMJg?=nrxFn?`x*=5dQlI_?LPK#7mYN{y=em4V} zb10NzuZJRoqm2{{j)Vq_2J6bl-F2UE#My%a_6==DG4t>|@M2PAqlauB+TbR$gX)#Q zrdO>8)r5uGpw1EKiWOz7V0PnH5qW+Aq zP-5Uf(OV;sKQeaBVNM!*T@0WQeEW7%ap1TqX%J9Z(6_Ft4WF$$f-YKe2KI#!p_#f^ z?ah9a=|W|?M7YZ}>2QQ3SOvHqcWgDQy0&l6b+&_>psTkB=EZRtYZ~3LcX(85MN^>! zu53M7PR|euWAolNE=;UB;3vHL;cdj#`HeYD=%;D*Iibrz!jRxDCskw?2s~4ZGV)YN zniYz1aV$rZBgjK?87SUJoafpjn|WK7XJ;B3%Sm1@Pkmmi2{&~qeZCF^tO(_;01g^G6+BO7tFks@|C~{ zoRul_AWCksStnZrLF)(+Em0FF8V1^l==^s6D|Ad*t;<;FRp&T7Zk-H)dhS*hsKmT* z+jmo%^`xC20b3u$%#eB{xpXQk- zxZx)kEoQw*;$Im2zZbI;%NMpW<$q%H@mEq(q55=ilB$;yMz5fQ=bFEeH8i6>nqle^ z;eQrtSzZWU&aLc;gitO}x6vQv+>SQ9Mfy!vp~1)#Tbh(N=KQC46*#obmOBmMx4KcT0QcyeM4mY4;hBofXW~TM>YPok$ll`CXXQaBCldiMg^y!m z3C2gkJwU(8(GUMHkD#k@=JM(C&*Nc5=o{xIH8wx`3{6 z_P>A9FCDp9dvCyRqTzbZ;*rUxWj+N4$@KUTJvOTHfqE>xKtQsIe8YbBbzlaCtdvUZ+=B`GkrRLvim@La^OfR!i1HX5`WFFM06ca!o=ZuJ9qq{=UZW=hHQ-ovFE@3Zkt=pn3O6vTrB zHZnbRdgkhfY_=h-yFAE&37g#vrye%`cuGyCjqb}m(fXv>ZH?;+-97wI)SsVZog73n zK4VrudH723WD4kiQcOlqv5zf476c{JTjeC+xnf3wF`={2iC_AVGRu3W@3onuZ;*Da z58z~jQpL=|C<5R6I7c53T{adid;u>d42$v{O589*%| zBnUcw5q?*)9daAcwsgRE4(u>T(cMVy3f(Ff@@LZR9`+iLJ|(ea4q5HKWF~I*#2LgQ zkhlftyyNM$V0wCxl`^Bs(=MTJLAv`Y@FiJdTWfD1J81Ab>2b0RXz@TuRF%6jeFb&p z=-nxKaC+~#(i?jv!c*f^q{*%%%0t250Fz!Q2q(dSkj{W+M|t>R!_h@@O{!wuOi1J3 zoNNnhPTnPiini-mwy|t)+UmUT1B;(MZ~pU1-+dsS&0*R<_?!H?q;$f^z(xShlWB+F zr&2TIkh}-qyQiY$bkfppzW5znwt&9s_(bHxk-lwpR+#v$yx|C!M4w+Il~0tSe-)Rj zJ);|5>46O8b|634m~ZPUwmW`4jK|%P0^pU?{(QKQQl@=JnJqtF)|uG0AWsIll;o=| zVkNgd&sA+pSWEr=Nwgnw#Mn~9SoTvRHEnEJX3FUDlueWgldG|-oP=0wFr21%-Gk^< z?CEpaNLJEu&Ziti&HM_q+kTD=vJOf>t8(J1M6T2AIwa9+o%hNy|34<)(yP2GvT4dl zobDE*!jvhK=dJPC^GA$iNaZ6uuNX+7vsVMIT|W|<-uOSWh^2Pj{3+Q>e1*mTs& zGHMoM1+Kgg*u(>G7;ARs*3t5XA$ks8;T7ggoE(7^SImpCCu_!k%~aif&`Fd5nihDi zh~$8EgN{D8?td{y&%TaaYv0kMH`4plyi;sD=qT?izl&Aw%><%E(4A`VsMpfI&kTr=mqx{Q_8UDyVGYjU8c!t;ZSM-M{|PY1IfQOo@Jf~Rxc z_Fk!~*SrHZ--0l2ctPey0r@Ym{VJ9v=_fgxxOkh@BPt&^+HVpAgVW}BQ5s{B+jAc0 zVsoMA1>J17JM61=nly5z3PE>`=_D2BDV8j7U=l656^b7_h}M6dcng%Ija{8E2ME?D zSU)B2f+)E%5CETbR(AkbhI7$~Qe(-fIvB z7XPlu#*AhKqj~SML=skl{lVDg0vVR07{Tv&Xb=}{AIcO#^H4}>h11?;XARxQPCbg0 z!W*k{b2jP;c$5s5neb>daG()(H#>N%KphiqDmD>sO zAAnxmI^lX?*rXB>8X65Ar-OjuB?`!2YP@?0b|;sq1|(IOs}QpU-_p#GKR3w_!ssl1 zoyvJYWE$aQlM5{QY4lFZ+(^P;d?N50>!s%K!m&;A`hP<65YZM`HS(1T#X*f{2P7u* zon~)VRw@8MOfZlI=3F)6Zvh`D9Nq&NW8qyWhun#h?EZ_{b>jSKcTUVeC(kGL!%WoZ((~ASiSb;@w+YCLRfEFE2!{??C zUCpX9dIDq>8X<_89y}lI?fzuoC3roa5}FTG3_ud%t2#EkD+9A9eg!dbfBtAa)-sD2 zoDyyz4a;&d2J7Eo9iee$p|icvxeWpdb!M!3B+^3E97NtKtX4QvV!1GJQ znpCF&wApv8DaHB^-C({Ag^H{`E@y(AG1P{Hd3C6!%J$$AE*iL$d>^E{uWghat^Ba= zNL^Q;+9!lO(|<8bwsCS&Kq{a~95`6&Kj%C{OC;6+s^a)mwk38aVXh@Sv8j1Y>vJ0# zQZEsm!jW_sp$zczegr)zR=Y=MO>X*HnguYx#2$(I)X?rqZnwE<-E$TWM)4#+mg@np z)VjndP>3s6ECoSL=T!K!v`P|!Vv;59``}ihC^%L8;p+^~w$bq?NVOIC6Nn4^V(h>; z2I*A1*s~76$K2DWC+7F)isp^08#bmZpG%2WO*r8kWahy5^!TBfo39ah8R^l<-z77r zHGA&fC{YA0OaV)k21gxt4%HJx0I)=DJybIafAfftraAKvEC49FL_dN4gJzYn2F(4k z8%iUuBPqvTiU+snU-9aa7x)cq(FQWaIB^bhHA((Ug$hZc7gD1v5|8P*%(RW1cf^Cw zSSAYe!4TZXqC$jIA~1&G6eLFC473D4oGVHY^(A4xMI^WToA7GXZlznkLq?6Q0O~4) zDwbmb#*oK|^hfV8;sKccc$d>34>|+aRNkNo58YiB}=tXGAmyw0~*>9D6`^`w2FN4WYZ&F!|ofa zX~#q9Bc{wDaO1cAr>YaBo=lk1iAW>}#gY+z5Fqv)@79$Kv=U~YnKo&QJJSw19{^8- zbpOJNZvFwuJO}r)E~wZiqOB#%OV`fdxp^Tw4FuEyg+0qXvAlHP!+AgSef! z3pJUDUa#ggLJxz*ljt4sqn1CoS(-c_IKMo!eSt93%d~3SX zLdNzn1ZJr^YbfS4v5$z?lc%lVR6^MXDgy|klg0K1PhkG52zl##`SFASCT-l-X(X7_ zxH){#%mw2Uy`Q4!u1tnOi;3m zB)H85Tbz zhoy|6Bu=3-?I^sMPxG(rDCWDn!S|dNx>G1`)7`rR^!R*xx@9L;CE3C2r!IMlq2E^q zYy~S`Lo+wt0|pBUN1dE3pYGGc%A6xcH4a!?EmP>2tCoRY4ey)M0wCBc6(pol9Gisy z^}({iv$v(FF9|WL$_BTA%2uhz0I|K06@+24c8)~q@qN;7q&wVrcn;oXZ`EHrR~mjb zyeMhQD)yr%FKt6sTO!VaEde?ca@oP0*RO8IItRgYBqMW-OL8XC)my9xS(9t)=_>AY z`rW-9(sr=BV(ZyqxhY5b6fm!{N!d|A!uZKU5Vl4eXZq9xNPZ)S?cJ;?lUgaO^W+zL8s(G7 zj8#uVr*o5lSZL+hJC>U}9&vfpE@->VGeeSBWPT$F`YwUM53D(ZFO_5_V7XU>B80_eGOCuK0`+ytEfQb4W0jkqMBm%rf}M?#{l5JZ3E*mYrVLig;#M33;4i)OfRz{qnOV;3IYARDkVUaz3kc0m|S}6a2d+z~O#qouW z-vvZPMGaPL7kdNmr6^(-L{UHkh#E}{!c|d6iUpLSs8JDXL=lP6#2QO9 zYGR2|X?Bf?u|)qfb7p5}_g)b5Yya3J_ji4Hg#V@@5=DFhN(F@IbsK1U=eba0}Q+j?ZVb0 zgQ(z}_DHB2>JZX%VO2Dr?r^Lfc7(!caZoPPDbE+nQnhD<{H_4u&RV9>o`^m&bz zh{`1DZ#p2bWuVZ>^g--orZW5YzZpqbVi?@6rb5U-GlWRU#Y<_!z%NXEH#neyq&35_ zRt#cCXwWH#j2H(h8N|7(6;z8K+e&Zn2t^__^P>`&DtHPBMNec>flh$b!yq1T3@ zvql(d0e*G8Y{jQ0bHEXFB<;$7M1Zoo(=ZqN)#jJNn4b^sDp zUDi)_(!mTfa>&nSB^9&OwN%Pu1Iv7d;dR08(P!XkAtEwIMlS{|KuGc_M2l#2k|Y6JYw~$m;j9z(3UWL!pYX|W zmMtk~r+mujm(~+R#BQQg3V;rXE??g6uAdJHT*oNT>9r*js4IK&uRlNU13%c zuq)&ChpTy9HN1_2?gYOqH@o3>yll8UxsuhHs{uD{GKnftXfs4JbEP@PZ4ZE3<;~iU)R0 z5f~x$rJ#jnIB{w5io;?TDYL5@s#ik6|9g|M(x4JF)u_{#WnLA@>B`CB`tL$xbk#Tl z8e=0)AV(5F#v23|Nc>tU2e97__bi1-*hma|As|RaUpJG|25{{n5az=I;N}~ZL;7hi zi35WRMxHKQ|)5{xRICnC_rTDi-V+X@?B zmn24338R4)%jH0?5Pa+g~tiP zfJxde_C3>oWx!U5Wf8%~{NwJB_!2%omBY|72n%YmJ}3=fQKIz&Kx`ykVWIf4FH|*4C-QdA#grv$uefZD{bBr7A;yoCF$9{g}p{}B@yL{kpm-P z3$u%6Uz6iE{vRA{l>l@vvN#5`;e)C*JY44;5f&OUfkNu=q6t?QqqFE9^3KlQF78x# zwucwPF7Jb>@D+ZCj00+K|B1R_KM~&m6_57|3MZV?9i(*ETqgmJfYH8joiQMV=*u5mQmy6p<)YL1y@RIje|p z(})JlfxSXZe<@k72)ylmH2rumH=(}R$4gd2+ngxL;duU!AF4;!&Nj5W`Ph*KP(Qs2 z-~n`RAkWs%z(TEQyKp!vDy}DZfQ!#WojN=MZ$lCIjMWZR)DEd} zkwF0j3p!4x9v>QsPIZAH1PY1)^CBEn9Zcb3!V$p$j9c$Ku12yC!`5^m6Cx&ZswHDJ zO^YhpxVda)A%my`@EzhfBwQ$XYo(;KelwuT_8lIR+{X~bj@~MaQey$_Atr^U$y)Gp zz*`1SBO_GAW!1znp3v7o01e(tl2aasf?}fpgS0{56Q5ZVKNE>GTCm4B&-~B}frt zHj@uYs!pl@knkcQ#&j+6pY?kO~Dl;jH_u7?XMybf43B4OOK^LJgqsRebk}XrOFi8nX2)fur zOB5gm9Iw}WDfM_s{^sKNLVd>u=o3Jj#`hk-4;AlQT$+m`q)QKOX2+GkThb@?qyjxL7A52}(woQ`N{(GDE!bY1n1$=<0GcDLJ&}uFtc`@ewMUKb zfQt^`4qgz|CUzx%f#-gf>|5Mi%QE7z75dqDQJMA>jDr?7I`Q}hhDZ7ZAvqoy5EzO> z8R=x^PC}4$ot^~IR3>~DIKh4F9^8qU#IPM6;TIM$dkX zGDI?go5$tktN3wjv!{)>_J+%7`eLg;mr@wj+yU*7Lx+*&?C$2_=A$mkSyGgoP30vq zN8yI2NoQQp-#CjgiTnIiti^kX+pvFF32iU5<8J;2G~?8$T3o#i9M(h*8pslS_uyir zPh+$gQ7zF@a>DyJn)O069H|6_@s2K*kA+*5mm#%+bh$GIPWXiRg@pSNL&+e&kboep znTaMa-dCt>8`=ws^Ve3sZDM)x;mYckSf%=36Dwe(s?VvZ{FKM$rd1fDhM~k))#rmB3fn_-6;s)f zVgSs>`ZGb%ONY+ZvS>f@icBy|sjsc{OYsfHMFPpRWXk#w@8XY|CLm>R5A-toPzQKoP<;W8O}SwLk8e3QHiI z4=UEJ84N%wY^PV)R#BLPk2Ill6I}jt7)yNdW5t|)U&MwXP73X8-g_xH8w@5_#*fUS zG_=J1gOxp5h=<_y-gfb18CcDIf5V2bb7+Ye@XCU~*Z}Ltys|Pf$E810;0$uE)59d$ zeKE`c)tyEN{7Dm74hIk|aQeW-IQ5&jXv%ZQ(isj*Qco|!-6=Qk>Q52e7LtL9cvSxR zbM!N>8GeMP3?soA@cGp56rHzu15Pi{&wCgNB;yN9sSZ*qig1(pW4KTfz$xC%%f}GO zZMp0;O#vR@`IOTc@{z_gqy;E02N;q?R3zXyFe470gS)PQsDsX@oR+{5}jRl9`X&@tUM$ z!4ZKhaK{}Ik0d!D3w9MPPXtA;C@Homd3WiKokayJ;e?7Kyil(d&>&5SQ-Z?n?~>Fk zBEA?e7Et`Ka!jLDKBR7jCt(yB0OLVAR!PP@ri_xUil2Q3HD=+mz<`%P5vU&E>Y&zd z3Tgy(5~58VdM|Nd$-&LiJ|)Jef=-Bg05CjUC2V0p;OHI5P)_RM9?p!Lyb%jyr%Cmd ztXOaz?&U^wE?}PqGE{T{eI2f50=y(2@4&cM(YoL*ZOq`gK;T6ftud!WOdCekC8FzO z9H9G>nDmkzUKm`Eo|g!A9D+VjyUW%Q96VqZxQC(VIANUuHzWAJ`#2}O7HQatmV}+~ z2~cRFEXqouA$%p$L9G>?b-A%caoboUKsj>~(S(KzK_#q^nq}ltj|>j-#OF46C@WE1 z1?@Kq_ZFa4aJC>4X~toLk_cSf#bYEjXfqg%LGDDZg5RHAU z()}I^PY~NiV`H!~QBGYIzKaV=N4AhL1 zL`0*lnw==wL6Q-k8@w0j^(YRCv>$hf$Q(v*(Swkybs>?#)Hi`m_j<_|890b6!Tynf zK>@ljUtL%@aVw@}e3$=K))uPfb`0@`+on0bRS7gA0P!Z`>1hWmspckGbe z6-~@g@<9;uN|217goc=~H^YOZ-VSA>MAsGI?Ez9R@`(er4GaPg0j0Fx+?>SFLph_Z zGV8)8SS>P;;7i2fW5Q@I6W)ihr^AFPUY7}W@qbv&C~8Z=I25#bhew3@1%`-_GTMQh zw;G>j%2@>HUne=O2bDwOe1--?-|4fB>dOLRK^8;kb!GDw(&v~TwPgzvnS29p53_G_@ZNOMk8ij_A;*B9SMnW`cZIc&rvyX*>vy%-tI(zR z<+(C<7#+#ZSi1O0HV>L-TJi)-{3J1P1|M~Y;HkNmF^4Mz2@s4eMJJSqkpq;xlPwJo zX8jQJ?1|_`P+`bHOK)YdY{;2goMhI@1kRe0dw{WhmT-ZEii{7u85wJY1QEq@4zdL6 zl9QIS2%msS%}z4>C~b~Cvv;yYD2gZP<*Onw=W?Gc<4V$(GqP}?p8AzRO|T(wG!XE$ zTsDoUI7|~2Q6lYOUkCBeLHhw20x}C%JdKC*moTyxl0QLmS%^Xk&i>L$VbSO?a$*mo z`Ai&0_OsPwkvkAa5??}?^bej(+$NQHrt(?q1+cDBMV)+4T*~k&_Tt|qA~Kqn28?rt zc(~S5hb=exaR(a`6ufY!Hj{(I!P~7f_$*yGr4>CyXS;^WWv#!Pq{85hRD)j6mIn2Zs5v`Dt zD1eJ{T{eVuL*4vFR=PR1DD^O9?-7rOcOa{b+)F4ya{?4iX^)!O0g}672VmM3gAbsa zxL%tTr&xw?n5%e-B&SIcmbFCx?X{p21NK2|4UYOdScvxsqVGy#Kb)8xrI5OK92-9ECyO4QGgAuQzW6rqE+#$YQGTy9X1H*9x>UWa}J12Ty1l(FoKy{VG<{%QqcNg zjk4f%ro$_&20#r2S!C*Cnix1*e1*ZBrMcwb-UwSyQVx`@%c4h7 zhIQ)Cu1Hi7BtDY93)|{E$p%Sa?+Q*@p%1o?W*%V9YBj!hcsNokD_H?)9_b-v^ZK$Y z;3oGE^23U!0CSviyIU^0{{{bzFBh^~^ev~hr+{7_~TTT7>1)B+-AhbrfzNI(9#Tjf!{$QtvSbQ`;3nx#l3|G5DZPydkH91( z@rj^&ka}~un^||@mLpj!mcp3@^$If0eY;RG_KxzDiO2;OgTPAC$PY3#FwT_kTb!UY zflhz=0CXBb$6dA&iEKeIBc#I15@7J)TmbiyBfWv4Pgf>A#Q1+evGbQ~l_-5Ak+Yf1ASX3Jzhg-|E_3B1l#G=%O#8>01U;H#y8~&sGHp) zbir~iJ9-e1JN(4lbL6~WFy99Yeq5DNx`QN5P*hD7d9GfJInIwlf(7W6^(iLG<`>X| zGK?dO@At&>4-yneQHz9kRzCGBEW(Xlm|p)a(ia1YxNQ9u&ZIcC?sIl)Y)U0m>(ZF@ z;g^accG^G!PW}0^NMJL8@p>4-u_(h=43yL(OJVt*`5t7ig3-U+_s|&WjKVK_TXEUH zcSj(~Js%6ApIjG{!mV3RSNCFk%u-L#MPRiOZw%q&BNz~1B1!b6+)jr#K2F|pQ3T>Z zp);^vD4`@<#H*}4S9!RycB1Motn3!^Pqq%loAFz^cvuxPd0-dV2XA)eY|$0(bzG`t z++d6w3=WJ4oTd}oi6hD-m%e-|_4Lw>2f7FO>s3;3;;DuWE3A!Je=0Sq=E^GyRGKrd zCv)7c0l^>8!kz|^X41*0e3^ysZc0z#ONiTZXTN5{VKq{bJd|L?nYDgL`S4x+ z-ZR)~xczg$tjr(6fmnnn&46bo(-JB8G_K&_3MNv}kx@j$o%1$u01d zC5KpMzsAoW#)xTTaWB+HMnV|z17t**ER!yoPGAU@d;?tpnU2P_9DpUU-0vtpw1Q0< zY-$v`SK>ar1Pt8TlA@@n7YrgKfI})Tt7s!R%{!95s<<3U7rKMzmBM#wnI>KO^&TgR zn4)z6h=73tL>Q4RJzk++#l@x0lqk^D%6_wxMgm`^k71oo#f{=7qt0sKV~I`yn~3nk zN<>^Kx=XA{MuIKol*ITTlF3e*Z$!o9s$=coi>pVYlAo%X+=N6(L|x(fnIMixo+Jz< zj>4JRFn^G^f0DIGb=YmW&^1ni1?e2NY4$`7=q;FnEr$KSx71nkrdD#2T0s*DgpJK5 z&K;7MBNjpXdD@n8ikO1kMbI#8MalN<an{F$#XI(4RRpz)K((Cy!5yaH z#1Oh;ssy_1+oQ4WAc_Gy{I~t=4rGN(^O(tPCt<&U13{O>F*gY`Uy{za8gAX=Em)oNUubp>W^fzPKH=Tn#dq#A8HJ=||AxsCi^n$i*LqF0NT3Vehs0NmJFtgeG6|)Q^Yu z2-30A3?_aCX$C{SbH;B?^0+G7Dno=5wa)>3xu^r7VkdZ6QG$qrt(?N)kbzLzD2bVy z&%Dl`;?U8KVd`X?4Mwd1v#=R$ZX^#D|X>V+E6F-Aiwa5Jc$FuYU35lfL(l5?0gHg$$%JSVqc6#;Oa z2UkEzh@M8W#9*CNr4Z+LMNgMwXk^r%Trq6+{}=g0?6i&=2LhmRlulEGpaJ9}-peHI z2(#cZdJVP?L;DeoVasbE}&gpEckn2^phIbQiu?W7E+IK|h!q;nOxU?Rs2EVZ?$Ta1u&BPBNlRU7z(9D4pK$-Sx+h#eIT)7O}!Mtnr|m;7wN zl%cbcFq9uGxfX-E7`!SNM@gOn;TJghrkL+n^2&QslksSB8B{p ze@UqY$bu8`KY|+sHM1o_TM6%l)hyy=;v}n>QcSLI;i{^64)qy}Ne2Zd*?bkz8DL58 zMQC=g0YprCDd+PwAvJVkiW#>_R7N8+Mw43b=l5NFaskCUJ+&nDF!5`W1nQtt61W-G zk%(Rkyhr?y0n0ncWC$oG0?G-!BzZCQ5Zz30r%IcQnz%9-<6TKio{sgCLu-o;V6Db`Q$K|ctektcv`6&F1em%J%BUHyEFCKgpA2_Dv&uNo9K(kh%r zYhxm-i#q1#i1U#mtvo{`$i!1aDKS$#J_&OwjuN;cj=FX>eTAs`rE8X=%|^=nn7kTW z5oCAb=dTgy%%<6olms$p#?V6pnXCX8kcdmg{6`{(F--hKa&%V$7HOs=m;?C>xMi@B z`l-ocz@!}c3;qjj!vm6>@ekX!O{n+<|Nqt69DyFM|66TlEn$EjZUcFLdzT12u<5-m z{m{NFuUft@SX?RY9wg{!^_opvabp^t&?4 zigZ8^FS1moDF(5MCx-T>s3T*5ed!_$J6Zw=_Cp0fEWw>d6S3)B!NIh7&mN!gHZ2lkFiwv~w`-<8|?bQaep0H*E47Z#%{EIJQa0&45 zBE86ULCJh7Q_iFVOFBN%K*p!i+-z(LOOE4IkWGfFDQ}H^&`VZwg&Tf7AANW`Pgl#Y zFkbD$5mSIw=FHHNxp}(*R5Z1cpZhhWJNNcCF$JG4Ezrq>h1` z^;|OX{Oe=gP*ia#-)=d)0FrME*wMI3h-?w_1>x{d#YHLFnovpbSDCoNJ|L)=VAc3C zw9fb_>}>%?7H0ez$sN%2PEu;=$i|N$(eLyN0?Ln_hQvf?fUM(>&{RF=oLM-KYR7uo zW^fybZUKt4-ImLYX9i*5V2EX^z3fEc1H(ym_?^2*c7a3|=YyrS7{@_#dTl&Np};}P zNL{@bpf+YP`iqY-D^UdeFv(8$hAj#uP59l&Wt>|G2ciU^DK;sHL}B<;o|gns`7#z% zQh;&PP*wwRW)d;9r)-sI65zsKyAq#9%Fd!J%&u4bb$n6sBDJC!_(c|_qYi`34Cc`L zQw+;r<-pfmR$-DEXh|-ZMWJqNLIe6xZawM0BJqV_XDG|cEQO?s_+g1+h4dehTU)_b zV<6zx7QGKPL2lo~kQCq(#?WOFsUam`ruK!Wd3);haG%v>;MI{w4}BV+vuT&l=4;1n z3!3;_I{cmc!Z~fr!ei;{Zk;{W)nTg1-sQJlX6)u7Cifyip2ZfGP!4LYXP8IZj0YCCp8#`44 z6?wY&YfMT#q%Bg>Z}Go^$|OpqGNs?vCEuB;TC*~p@rPRQc`Ewd*Bn0Yfg5^yga$+g z>3XYR;<9;bgXUFeWSGA$T=m67>p^}Y;VSQ$;SsuE8ypO71Ep;!j3Q7MZsR4Ew;2{X zT^Hs(Q5O_sLvQ6Ot8676ffKMt`(LO*|ITt>(Iy}W52&%4bjg!pU1~1=y55kezk4ow z-0kFgGI-?2g!TS6ucgm7@n^Nl;Lmxk9Q=%R4h?e&3i9v^3{eG#`-g_J-RX_A?IJ)kqia_N;(O;y_YCBEvgcneoB2cM7^!)?_HC;EtWi%>B^lMLk z$KgIu^+l^oP&uPA!RS97Dj%W3i*f+@6o`IjqT2A&@zv?5T$pOI%0?A{>c`{YjuxMI z{}j^3nW#sgH2(2Gb@-!uLQ$=us4Wp_@SRC5Q^>#k+YCY@Ca|`JzT>J- zaGub?%SeNtf!jZn))`3KFZM&ozvVrARZY+{hLIKqpc4M5miLV}|2(z95ksPtjG4S% z<;aQSrcqgQW5@kGF(LcUlO6`d!TV7qx_{Mj6qT zyU|xWj08bjLsQ+fN+)w;Bg-l(jk~E?CsV;hi0)=2m}KyLb;!5AgPM>ejEngSD-TtF5(5KRZ`#8%-;Cp{533$XgdSEzn=5i56P& z9V}E)8Al7X(R>ihjG~dYSQ?k@HOFnZs<}z`b8~WU2CSOB=|K1(kA)V&8-w%K%+c07 zme#Ae_c))i%{I02OzIl(YyIHAb;jRaPQCO=zau#|o1R7Qe&CkpG&a&@{owSP`+WcG z>ao4!!lJ21&ewG{UfEs$ONr(O|2xP9JyrE#y}0cOjEYqEjv`-hMl|+l#>2Bl@%%SLw$5ADX~5Sx7j{~O9-ruc`lu0_(87jjp*rf3Dw<}fOPiUS zG%%@G|Lx#k?BXvrj`=BI)UoT{{pt+e??9$dvsNaJG!3HawX*-~XD`<&W)J(mp7wfA zr=3R~_SDw+-~ug7JTyZzZW#kJ2E;m3EP#JlkOB-aWpW_?w#$?-q(J*egm+=Xh)0nO zBAS#osEB5yX*IM2t5m5f2qx~D!J0wh-x{OXp7a6Jr%yNZ0HoEHUvq@U0=Kt~37&$q zO53y$GO?Jp0xa{f0iSEz+#@l*?k8GWm{m01r zmgztE=~h?`G`+aC&DzEBV`nA)-rr{F-d_EGzZR7;xLBlGPQPEwOzezPQoAtfwkEYg(ms#GNUfpA~S83w6 z559@nk{3Oq(W#twk2bVjU1RjRooiy6hYg-@`=DvFGdG`4+x;-`Nqqn5EmV;|^;rAL zZBD&+lxSZ1O zl}l?vnt2c3wr=;%kHZ|8$ZT|bNX`vSu z`usZo@R?t1`|W;LPu(nYLF@fx>k95>f7LR4mwkxlctnU#|H!jp5FcR$?2@8{JWs(m}Z*Ws=m=BC^mS>REpUfkoQ5AW=@ zT%tZ-GXM427oECpsnz`Ws{^rKr~271e{sb%g(?+YGx802PEz6o{KB};OFHtUij(TK_p>=A^39F>i;M!B2AN}0N<*SLUhd(bm z^|?(q&Byq1T@xfOHo9tD6vJb$vBiH?vFK!L+uc!P*GcO)ZhUv0!+2|dU4X{g-d5Mu z+OMlafOSB3I|og7hwkHb8l6o3ovvGY>c_neMhYjp+1NE`aKL@7SqqIX$iJZ)Bmpy! z1dJW4dj+>t`#PodMz4Jx;4_iy?^I%^2=9A$6|W-ymca@MazT^eYe##J9NOkSI)hZ zJp=dOelpX}=F#ZyYdr6JOwUzF@L!7gGt0XO7u-E10v2`K8C#?K( z-mh<)Oc?DM)AFZp=FZkcS2={l-9`|1W`1^UEs3tCRZ6+BM0l80U)DB$`LoUeLgNO; zsN=PbvDV0aS)GlG)>_jEJ%~Ga(|Z$+XwG%e%s%()lXrnYYrpK;!o{RyFGt0al6Nm#O#8ZL#CzHUaetpaIo4G>>_9t< zyL~n1!aCGx-|~1j&t4g}y_Wot>1Y}=#?v>tea9-c`-fZ^>R!Xgx2sU9|GI z)t~p+q7B{D^UzgmO=DK5o{>q-=4L8ybdDaUa#r<|$ujfp(VzGAZMUkZjm4XeznOWj z9Cdf2W*EpaH_brJfDGr1ezAQjFU#2FFf_HX2qIFeKDLy0{GS2qBmA7cfh-WMNr#=1s@uNGjE$n;d`L2E9-72Qz#^|QYZ?CA@?AdM4zY;P} zm0Dyk^*qt!$KK&cE=R zZ|V6NDUHUQbZ9X4#`0!vN!EvR>|L5Zs#D)m_2~_V(N#ynwYu(^e2uP-|c zN(;O2d(f#P52kDwv24Wb6^R*51{r_y;@pM_W)az4A6j>5c%nG0+egnsclDeQ{nBf9 zqFn=BbMr+v>f8)?9(vaG(#3{lGmn|-){EWqFvvdyDxwHYOZU3)z1g& zKJV+fv;PCnhkK^YylQ4&J-BI-FbCPxbw8^SwDLKy?%=)vz{MHBJ&Q01fP}^ng^*d90 zT~W;$H}JyQxRZH}UYUm_9@)?<*QoELcY&!Xx9e=Fv$xx@YL}1p(nOn9Me_TxD8Cy_ zv?ubr>Hk80Yr1LdHArGR*lD_B`K={?+G+5g|GUHf`=obzX3(x*uMJw(@yp3Jjeje+ zedoJ1AGaEobM{6f&(^gcUD$lVJtsn=u6w`gPd+Q_yRB%_f7y=JV>E4lQB5wLRq!Cb zYV8;1Caa&spJ{R0uJyuo&z?_c+WF0_lDKB~N<24Y9%^F{4lZQ5;*9Xi~r=3V2?uO}^8q6t~}`zX!2S930}+EZ$^YR+Fj zTKryZzjv_L-T_O}2dM@R9ACFxhw)oh-Mwf!Z*bPj1)J**tXDlceZj-wGu{eon+>ZL zqpG8EeYpQ-E7$yE);{UE&1dw}PCt|SYmfQMGyRPAHLJDj&5P9C!r7KXeBQmRa`anu z4N-b;Lp`#&BI#}L94wRGb$IEGzENrBtp?#cZ;57JqG9oy>A%tMKR!L9>&(n)kU2Ob zJI6hIww*mZ zD>={R(nnbd!Q=8q7@hW1TMS!sKCR7&D7szcuqq zdU7SN;eF4=bH8)w^x1~O`-f)N=s)X{cbL^9&8hqux-p}LhGzB5fBdE1>OXoO7(a54 zb(fNtF|lVp_AOmEWkt~T?(UcVoLRWF(HG-7JkCn(U~f9za@@&Y&4XJ+KdEuNbN)H! zJw-1c%-(lrH9V5~hCQ>Rj*8o;^D~CY(s`|1N5#Rn+?Wn(?Lm zKl;q_#QK(2=bg(smE}Jlbf)vAtF}?@Z95KXJ@%7(zK=KET(je>Zx}RgWf_S6_8m-^XTngUKf? zHvFxPHaVe*HaTV_2pY89{&)JaVXKK`Le7}?8&=oo{H<=Rt;w6BQ3IsEYG}dyUpc|=a~%a|)RLp1ZExO-}9!!%PeyrPD^*A=5y`Jhjs zsvuQ3`aGU|t5*46Vf9{RK-^~~4H9o@G#v3A!P)xI*r)@;+_S1wBjZ?&tHcINf->-Qc^eRXoprcaGm z1}twn{AHgT*B_;wtCjZW{-Sf+>Nv&qyVkB&>1=b0h|}%HxZOYKS}Q+v*Qe(8P4>5q za2{xVDYxI52?2Qg!% z_-*1R2|mH*4u9=3H=bI1SL05Wzqgy*^HS-Ooa4!+^Q!tjD|~I%A_R>Aqpk)$hj*3VzUTc;hcG_$B^!>%uqE(K`M;i@$veiGl zL7f4GQM+Gm{&Gn@Cx^36eFFNOn{@fs+f|V{4}YAs$*S|k#;q*kPZ=%WGCKX&C%aP2 z<~aGibUWJ0@p4jc$M1Db_Q%p& zxBh@r;a$#*{cW-iQE^=jaZ*_8G zWpgfMY-}K+7yu}s6aWAK00000000000000000000007jzbwE^G_ddRlqN0@8?WiaQ zAfTYAsHC70k_sXc1EMs8h>1ZcD4>9eh>Bu>7=(h|iQO$j*ocYsea<;EOfY!8_x=3w z`+47aVdm_;_TDR=^{jmkd#qfNNMk~X9A3YF6H-Ljf1}Ai|BJ#)x%(kya-jL;9!1pn z%RL;X`Gs+ULxX%nJpwph9)W>DJdP)q6B-`K@eAab+Sqdfg1os}N=hx%1Tt*R2pLZ` zCZ<+zCkf>~C5?J0Pzr=R#H^aKpS}H#-#PSeP1xDdzc*s%O^E0x8Qp~W{ON)wSl8%i zLRvEa6aB3F!TehTx%PyW`?ayyg)%vEwG)1Fnh?dm&_%s}n4i4ZTY0><5PPr1H;-TlIr>|o$XfRiMs6ns#gM|n3`~tYb5A3-- zS}#Heur)HJ|F`@0ngomWch_B?Rk^YIo;DdvPlazS)NNU;(xUWo-%%y^T70$r;Zh#? z`)uF*VLb|W8jfq+cx2>;QnOj+kGy8R?HF1MQHhW{8$T5UK9mCm48`xq@VNor^YDHY zUcK;s7v8_c@6+(RFWP*72?iUHP~uC%NdV!JK*A%IB#c<&y+8i5!8Kfd3(f>vmp%IS+p`!$!#jE;KjxYT+S^Ns zTL3ML{%3K27IFwewEtO%J(lOis4Wctoq_HLkHH(B%;qMHLIW6GcnfC0Lz^J-5gkYT zeMf7&w_vnS+bEPol76tbwyds3n0zRse{VDsUywJMh)$zrb)t<&ck-%}Z;R`6n*hdz z?C@z2<2K%;1VVbsvMN1EbEZ43o=I>=4Oz`-d-}>)H4Rg^=4#np*#8~tz-{$=hm~G6Fv*Y)gb1oC8KZJ3Btve7Dh^%5kd{+CoU>a&3hiT zVUG5^=TYfpMawG}A1*68#0d=d_kR(!uwuud^0>6J;%I(CG(Tw<{dQByi>O7EbNQld ze&U|8!$&JpvN=ZH-kMf^NS{0aA%~xQxU6_9KQE>{VNqp%Va2*7<=L71jq&B{50s}I zV#fLCl`No1e zneR#xD)$stMXjqm8e4fZsWLMGmmGt=J$PJAQxBepr$-odWPc)-^|m?pt|u z4Sz)jKX);NR4ggrC#~SeZK_(kl@_i`H{c&E;KwX4->WZ^$m+ z5>=j&#Vj(uJS`Rr7OZN`9)8j`=%QjpUipTlb&J%}(xR3&qI>1XLj|l2>aOzR()rut z`B5d6xkvc9>#8yj^5fP+1+*E&)l|5TRZUsZ3Mu*gJqKz13auh;309BjUKyVS6~mku zx-xbre_1x$nAI$+5l-Ej!#G%1S#be>>p^ITH4Lkr@`PASvg}X{N7F3O!_%K@6wV6@ zKqoJ;&a9VWcn;e}q|7i{jT%@Bw1kyHZ?t+j{G>g!Tbh8iam@Wf!+0E#gAJ-vdc}dw zb*=@4YVs&y^Emm%esaT)J z8iBo36}`OTa4xG$L5OLZ2Z0F)R6&oij)Gv3B24{4xn8`W&`8jzYG`cFYxULJw$uBJ2!=Gc%3-|U5;;?He-*k|6(u^bo zBR?mJ?Z`N6QJs8xa#0j8Lp%Us;riZ$u_|*j`D?RT9FTG@@$TiR2kOGV&JF*pA5GTI zSc%lY^>Kl2{5UPgK%{_z~ zFHg^;wNqHkU$zM$$v?b`zjQgPGTLpmyn+IK{CovbAZ`GJNmcsB@}=>JAPoJlMv)Q= zpr+T$s1mNmMpos~jpZw{_&KX9b^}TFL1lmxe%xBxnHj~gP^&e0vi*edW)p4g%HxTtDPG(RS~YH>Ed zWD&oph*q(BLl%*?#pXukIa}E_?9ycT3X_jmJ&VUVn`vklIl8MNdOHnt^oa4uA3$Vw zAVK^x!8*6ve~OH!O-r$O*oAW*>w|!=Iat(<~Lbk(>XAO)#ny5fLgTlD9CO5_MkFG8&&O$<|*bx5*Y~#S* zoXR~p{KPCs+pGHjgZihpWc`zW(mQ6-uTinrHx5Yc-T30D>eR5+}YEk3Sr zANTG2G}}YX`+6@4sSc2Tq7zY*krnZb*L_}NaMe^0w)Zq4#P9v^`%Ng-AJe`lC~N27 z+IV_901WIH+IXT(I({z48tw2pj%(ZSx`N*qp^plFT0q7(v{{R8uK4*8pI^f7+W0vO z?~g!6bF|UJXHW3EB|cw{_o|T79!0UX5eT9uLq)@xiizg!Jcbtf;q!2YSUNFvN;pHI z>3_QQJISKS_5v|9S*6GCYs8c)T&A->n6ouQ>$ya_R$PF_S`9Te6)<^Pa&X;POVMSh zI13M#pw{LBMlQSaadaNmaAyaM9*m9+P4@@A7xDMqWzRtcMlqJ9MO&s!o5>WlG=KlI zm^Bci|4+t{-SslMj{K*te;&PGqq@;)znO*q|67~ypzF}T>neNfLlB@XEP?8mk+M5! zB1AZ*m_{&0@MG#UUcJgG9*wl>Hxd=5T;_c!Q&M>|lg~nz4rcf$lo{SiP^Eid$y{=m z9#mAH%AOe?jk;Ojl0QC_-GoE$v(RJCWa5){5Xp&;XN*=~*Tc|J_is8%emW1`+DLXA zhena)Q2mMgNjV}od5w;y(j94)1v6cE66OD&1hoL1sfkzA4XJeq8g`Iu=)mm7(CFZU zi~3f~?naov-(~Bi{-jo-YybLPr9(-$QFRf``_z|W!vL-gn$TNhY`nJwYPYjxyg7_P z=RjzM)q4QDVIW%LpJ8qZnh&;T0GstZSsQDzIw~U}4R&B=>)XIik?fAq=&0q$Y%9>w z6U_KLyLlsRXCX?yL>D#5oeJ5q<>d+KBH2(f%v|UOl3ON{4Sdl+-aCp$P@-~F*GYKURy_7`73G0#_kHRw2$4TpxK!P+ll39oPl0-KEv1jmm-p z!e0LhM_Q7+M_3p)z|%jH(r2ZyoKw6|tk_%3a@2}!P`<>f^)WO7PFh~EJ&)aHVEZv- zkZnQ}KxeLJT>*ia7zGDQ))RDBRrZr`mXA6_26L$xN?2LQm_Xg2EJ?1|u&^RE3#7MR zB@V{T&r7e|lS*@EMqb_A>DnbDt9T$ly6KD^qfm?snzXI%;l7?KU%(gv-rxTbb+EwTvO~W11-G+N+JH%<+QGtJ;u6F zq;zaUgMzuCyvVwUq#eQ5gD&BD@C3_1Z|*FPD_Xm8SRs@`Rm$4RJ$r`HRTdK?6 zM)=VSD|3rbpV2YDr=&9W09!Vd6>a8k-AhkaY`cq@RQZ}C=t`H4MY;TCJIV{k@iJxf^jsR1>e>RGu0~4VNjRerHK_2s&$v zK3KDd{j4f#X;mg&hB6y|aaAd~g1uHoXH*xqm4xnC)$yZBr~&-F8_T1%i*Mn`XeJn3 zlimPc8byyI+y<7~IFr~i>n{coVq1SEK>-0Cf!>_)et}$$BhSy@j~7V|k*$=HL;SpC zdKYU04H~SP*%Df~JQH@03l0t!YY3Y;z;*FYZ3SpzEr1YLsZDbltq;>7#rhK+u(^w| zNPLJz%Ca_^lpT(N!K>Crv#mH-1$~8TTb{7Athl&*Ng_;BQM|pPIEUWujiu~^xn6!g ze%vq)ZyJ{q6wV6{=W%@e{JETnY1~jQhZn?&2=(J}nagx-ALbS67fj#BrkCW)4dg<@EdaxiyptoRCT#E{qoCuAp zoFE^L2PfDgl;`Ia?(Y%G38>q^K=*KFTU|m5$0sx>K#ODP!wCxT<6%}B%w@0e&`>V0 zn!efY&rZmb%Lxy|tSPTL0HxhZ=s5JIN?IO$8vrP=^k7|9`b#inw~yGp8rrg50Dk2u zd&(2&TN13VvslMKgsli7Fa>rKdFggIp>Q_^e#7qdRPI?;o|eOIh*ch0#g9FNDVDF; z&W|hLC+1b`T+L71LXW4w?wqj*q)?f&ji0=XeWNBbW%CQO$_{U+gTuE6<^I3FY4fnD z#HP*Lw^Wp4v2S=Mv$ z!M4vAPt5+jIPFr$CELO#FLB)KwxomZx+U|PXDxZP;K~x8E;UP9WDJa+{Ap;GpN!!#xu`9#_(-iOwFgXn0vuRj|$G5S*pW4LnP7H~Q?q?dOelj$!xMxWm_rR~X$kt1i z9-fxJw4o!7G*>n2@^crAo%KX4#7I zJKk{OL*$*~xvjYI$}U0it^;PqPv}`3Z;((OKdJf0_$6_Q2`iMkCsbZ^N^lxIEkSE$ zbb__cnS^(5&L(W)d`M6o!&&~l&7kFXY&R_5qH|*Tsl#QjO^BvZ@HNdtW!CCxnXDT!O8p4@qfPjW!^+~n`?afBYf2UAJG!{I<#~!=9+D)u4kw8ouLEMo44~yx7d3zUFpiz^a%lP({GIU zoL)1sHa*_EHhsOW+(xrSx*OvU4Bxo2Q}o8ln{PI*lk1#e*0+B~lj>m^Rk_9)Rp~Yv z-50xO3^MV_D1Q)`aXL9V<7u0<84DaPX1I>6&fsu92UY`E}yj%wG!YGgb53Zr*>k=jJUw{WiBgsJXdY z>cGv4DNdWimHak8TM)Ln&#l7E-HR@6PCt2ZbLPW~n_ZPIZI0`AX>+6E7n?U-c)3~Q zWXmmAYjn5pY=&)VHF?VxC-=QuEQZu>xpT{TYq3w@R{Eirk*AMt&FlGWtK*#Ntw(mX z&C;A{l~v}Qob{m1m#nJKU$UmWaM`vaAbQ*A#GGwSZ#~@>w&3M93vRRR8K#QcwTs7W zce$Lq{n*3(+o$$Fy8WY)eD*F%Df_gMc6Ms4RrczILD?T%W@cYbUy`ln9G`9R_cC?oTV0@9uSW`)*!qm7FVTeR6^Z56wvk9+7jz zeM`>1!o4}%7yWa`zZsNktv@CAQ*u(SM`m(v=@`8|FZA5^^jYb>XZ-aUdkWUh-V>zz zaF1_rx4avtH1k4L%|d?;{6(JwJ6|_4{`R zUaThh(}%Xm?=h!c{7&G8u;jQ(R zg%j1j7w$IiQdIUPvFLaI^rF1eEe}?yYaTQ(7^I5Ve{{Us;~PW zDvUNiBxh-NC~WM;LzBGjAKHIerMT-Ijbi0|z2ZhKmKJwYSY2$r`dabrTQ`cWYwr~Q zc5Ga-TXkrOZPDzK_Ax6~3fBz#pe>fa*dmVq|@VhlfQqG<~vRg~%=!7oAj|T3Yee~Y6{G&?ghmN+0IdZgM z>BXa+qhB4JANK2LxnbvH1rCPC`UYAbE8gXLtkgL2SZvpXV?{qQk3CJ?a%`LR)?;6T zZXY|m`0=q8F)xnIiE4U$ZtcY5bIKPSzd!oa@pWETkI#Pd^myT`&&PL`G(9nIyY7iQ zdZSM$439c7>D2ZU=bUz*7~1v5iS{LTPdKDLIia@V^@*HU-A?L$9e#3?hSkZ*LxWFt zj$3;2t>3|ukp^u~x$WScy45b_)PS=`PW6j8aVoOo<5TK0zMpFPLjH7@PVG+r{H}dk ze~r=U+qWj1-ZwG!^zlOlr>ierJUuz;`RN(v!_SPGWqc+h$^FcxDO1lhZ~W*?YMT#d zsPVOD##k&lYZef5wy0J1*`;6iouz!voLwe=@vO_T_h(1nY;kV(BIR>BzMao)t{!$S zaIB((I&)OWeobFMYV*?efi@`j^{X9(mbD$?3B4t1eesKQ6iQf_i)9 zKy;hZ`_$l4%P-SPPfhYKRqGT|Iyq@=sbc@brBO8xORGXZmPWK`di88V|Eqfxw66AS z?0oe~pNOk@J(pgc@V)$MhntJ9S-CE|*8b4JYsTFVU7OnadG>RcNDoohRtrbFj6)*VicY-l#nh z_ZAiJz4!cc>AfzezTSI0wDJ93Ynt6Jf7;>xjBZ`-4_iCp{uu?6`{`dM+#mP8Tsro_gVt6LuFbQ3aG<%}gBmOQ2hQmZ4@@ouKG^ef_k&x0 z2OsqMdH6xr(B}`rb<7^-?YDloGGO&X%_g@WPVBMZ(W$i9M-}SFAN}lA^GG}Eh`wBZZEe#?tJO?gw9~T@eWIVGDa1b0oPOe&y8W4Fw{Dg`Yc%5Ov)$L7p65`m&vg{spC|gc zKllHb^}N-!g6DTqEee{czyWAJw`fYu&wroP#W4G`!b^G~cZyzU>?eCUc z_LRT7Y_COS*^#0TWi{3v`L0B#T|LTR1@+NZo%00i_D}NvDTCwTE zvWf>@XDj+?zNomK^RB|{GO4_reoUUs)te5EqA z_p5V@$G+PCYsRZy3EN(^E7bY;n_&89D2>2p87x~|vn^~5!&U*9o!_IjoLyVuWF zDZMeJI=l(KuJvY7<h!x%=JTCB*u^n>V%K9cSFF zcenIEy<5}2{rk=<+P_y)H+ye4bJqI^y^ZgmZ`<_#%9Eq-eT#3t-@LSOwLwy=>f~I* z>b2WFt8YACQ9WSws_Jvc(yJ!~$AWRSb@)9u&%PrjC_pT|Dc{jAnz z;pgwU7d{U+;(wmr|Mh2!;5VQ9yx05E#ckA=fQz%fOz1H7>yqr8uaWNOzpmYJ;4`u&yDTJD>9e#dVw#=ZEqW9XM})=zY6KOP%VoBwcR?MZ|2wN%OU+Vxx4)Sln4 zxAun8&DuF3H*4pgzf(K%<8a98!uQ!vv{JQ=2_pgI3U49?Qnf|+neDLp2E(d-`m)`q* z+~of6^_RPoJ2!@rW8ve-kt1G2_3j*Ut>sR#alv=8dsGuDXG393#bkY&rx<$FHxO~?oxLrJ*IZMpYzw>Uqqanjhh z#yzL4YaF?*sBy%OipG0ex09PU*HDg3_mGR?N_bbq$^rY z4pmNRqShp_NiX|vO?2Yyn}$wIYO1ZirRm@WH=2&I|J1bYB&BA@Z>lyky{*&C{}kmkCIr}vFjoZV`i;zF}T#khl; z6*ceVDSpArw8I0%1zs-|`%RHkYNRwy>1@z=CHc8_N><~%lujRxS4x#jRkF4%P%7(F zs3d>+nbHjJUrH}?TPoig+DTd7cDS;0%|zu{H~o~)crH}d<1JSH*<_`%k?mgPPQ441 zy$w$*uUmUlS#=wwV$#7vCB!a5CH~oVmBPi@Dg~)$RCETMSDDlJhRT`9S1MhoY8AQP zA5_jn+*^hAXwx){AMU$lKlS=f|7v z+9sB_%Y5FbecPDM?a!`vYrly%r~MYZE-grG|NLia`^BZ#+vhxL-9fXncZalT-W__p zitmtXlG(v%s8UDm-TgZ1z47iiD?F^@=kehkt*< zyV1#I{=-hB`}(TQ)y6Ht)c5{wc*X?A> zOWm$)@7;Z>`LOPsBA4!O{1UonY|rRkb1bKO>(<5H1GG+e_sS^kuJz+l_x584aEfCW za17Ldj&yaCFzb_8# z`Krl+o?~Y$>v^kidCxgBGkWe%Zr^LC%fMdF$%efy1oL`@Y0l|&d}(5@5eg@J?M*K4 zmE!)cmvQ2|UYldz_o9y1^lI~=rq_kXYHDLvYN{0uHdITQ;HtK8;7+y0mv*aN?{`*h z&$tS;v}>(;w>~kjcXz*_-c!HM?``)fulGIQv%Rm$b?dX`oI@Y^vgkhkX-E6~(0SEo zLF?}7>j&zqk8>HNZhX^B-DRGey3OM$>YavdS3j_#QvJBYSM{LkrhUui>-SCQKdi4& z#H_w#<(aipG1?i6N*J1yXezSAV_e<~kvR`WH`+kpJ8}#pP z;?v)`#f<(wiSzq^>5$q#b(HFWElc_i7#T8fz%#|614iEB4oF>bX~0~U>H)il)eLav zcG5UJxv$39YgQVrp$-}k8c)<1(AZt0b<22-p+6HeNN~Ew=3Ye_EeG7xurGS7k?^~V z=8Pe0G(*oG(j0Slx>n0o3$)^ftkmk#B2`P_i#8x8uRA2R68fyhC9uB;pM;Nh-8187<@jhgW(UvugCt&sEdkP-Lv%wrHOISjA}lRHtS7i4`05 z%N`!r-?{pR{*ZIG^c7!y)}PZ`ambj3-G;P#VKwAgcbg%t_uCHXIDhdF`H+i4%woNV z=3h$~x};YdgVC*w4c?EjH!wWsZs5FPngM0-$iRP1xq-#fh++Km>BF`?*gb5e>fT|x zrU!@3KcF$ZT~D3i&D#$iUUNZzcJSmV_5Us(6BPd*)aUtbi=d9{0;q$BMr9) z9XD)kebZ2RW)>K!pT1?Zf8-;hMw)MoD&h@{uYbE_ytZqtvGO|ylWB5J zCd1e5FiBr?!emQKwaK$`Ra3itJxo3B`{R(hv(3ZqnfWaFZKk=qjrpEy1I;~N6`30icw`>ayVIDf zp9%B8>y={ zo)bEHe5+lt-+!^1dS{8X z!O`{BCgB&YO~=2m)_wTSI+|$MjBFQZvukOvP2=0iHtO3`ZB(b0*{H92Wh3YL$>!OD zpEj)yS=gqponaf@+uwG!FVD7r^&Z=H3VF6|=Nz<+H92p)L37@OmEo%=R7c&L!1w$# zLH$ApJC(voc8^qp?G(&1?D}51XSZizgCdY98>fy91kXYI}TO# zaeUU%*YWzMM~+YX8#t+|ah*c;_&Kfh_jelBIl_tedY{vTRcg*ZQU^M}`!K}$$L&eZ zs*U`eH?IqH-ZU=Wxw3qP^8$-h=h$h*&dtdgXO~-TCcZB>o0z)Ra$>+*&xvW@y(TJ| zB}{xc|JlT47yTx^>Unfh<{Sf;7C&QL#&yYb*|hbX%Z=FUE;C|Zy7YAW<}%|+BUf!o z#dVHKTUVD#PuH}kb6hWvNOQGz+u^!SF2~i#yV~{ciyBw!yl<|Kq0J{7@>)+`rr2h3 ztitKZF1s&IcD27h`RuGOlT#Gs-1bC|ahuqe>(`q@opiBNp6m|JKQd4e06g> zt31WH_w*@;E25?t=ci0*`Ec!&WdGtR)}7tmvuZozNy_i_oULE6lo!AiV75FaEOLuyf*P_e2ynbotcwL&k z-|N@Wn_d&;o_o0~wf2rN?&R&#Q`g(|GS@p-ZJzf-mF3<}&31dM`#trxxlrky693X$ zEBC#3qIx&($^qTEc{h4-2Q<>+zEL&jKAvaA_15*}j^CcftCn?~K&m8A&zR{mFeHZ)~;XCA{p>OXhBj1Y)7y4$r$oAbkwdJ(3-yNr2Ox!Z< zM(L|*`(}NdwmVwY?{$KiUvUd-zYZRWezW&&@+-WY?RW8Gj-O-RGe3udHq(Powwr#^ zBzC&0X15uglZVY1`@v;KzTVauM~mOj$UmXvzk5?l|4v3a{!eno_&5K^^`BIm;ICr- z(x11C3Q&+A5a8PJc)(e!2LV+rUk8j{QWH?NvUT9PFKU4kdg=r|>}nP`yS-gttA{fJ zolgb@jthwhY_U2zaQD}wz>3!?fr*Oy1M^$n4{UV2bI|8uV}n-ccm{pf^a`@LaWLrC zw~Im9rmcc~E;|SBJ2x>{Z(l(0-LIj+HxJJWez|USu%G6SV70qVL-Lyhg}gHh4l#bT zI3!LdCFItR4Iwe>wuE#Vn-kJ)NI}S=y`w@~eRl{|Y3~-=SKlpkdZuESiB;dQ_$gDv zJijatJF_n{?BLvPzj&ihtA|%_ zHw+*D$u2xBcSm?`|Dy1chnK=bf;?uvUl2dDYX91q5B9B_89Z?3%&|=_&vgEv5Ya=g zZ$$GvzleO5XAxs^UPP3KRz)o0>dcC1J9*aEyJ@qYarVzrKU6qt>s9T@Z%BUM=Pv=&V2I@~`1@mUpzA(_?Pb9Od@$b7n42oHH?L^_=v;`*ZXf{hG7oW}CV0 z&AZKQI>maf^5*$-V>#RB_PV@lu50MIxiLdO&%Jv!U|vi>!Mw^LFXnmsrpzBaAY=ae zTf65w%qyBt?Rz!fc7DqRm7(ejPVE@H;90flg2r7oEm-TFy})47=LOnEgxs>DNI?ii z-0{k(q)2%oA#NUolwGEXDTgAfyHP}85+NZIDKhF6MSSxJ;ox<)4Ml8EQ)CaH5T%_I zS=fmpeLN|0yNDt~b`!GLkC2HA(Z`n}a!V+p3f6q(eVA``PQr(qN+nnTDiYlI*5HmoeB$iWeW99}@knspS}IEIkT=%eaJNG@!sszJzg z=;1fouW3fewY?OX_YCub%uQz~64DsDD5OXQ`gMn`?XOW}B6ziT2d(+o{6O!akk=7q5vS=3}Yw@zKrbsW?zC%m+o;LK}iXti{ zgw$eQonf;iM_h-TA9{q0{zQ=-dkATF6FOdj_Lxuiazbv)QN#t;C#mA+H9}@Lp~(8# zuu}vfX}jS!v<;6?BpE)e2Ys%DE>oIP|0`&JiX!bXp8QWjl&=$VPKS^uaMO|+LbBl>C1;^a=c^m%&}A?e=;35GttK+Y+w-5oNA&Bf~}MP_Oe(p8QS9r(`n z0q`T}DAE^W!e{4U-3lEEdA5Nf&u$aqxQ&oiJ1`IEH19YeFYdyhFT-{eMb5(C^6+_5 zJBqx6uP8Pmq+b{zBL-5$RUSUvnvmzph*!je-yqB>iI8saWiI?n8TPe7tah}4Zy=s( zC&IQLVAq!vnGXN#H-nJ978JSGnIdxr0W%(B?#>k1I~D$_K*$QLXIT^IZwMiw?J3e} z7ez7sX8>P22Tzd>#kVs#`TOYpO@8AV>HQv~9PVm?LoL07yuis%9x(_rtZ z7~?x^+8es-3p@0E58VM*(qWI5mKYE7sof8sfzC}1051`b@x_G1!JgDOj0YVahtGPz z@7!`Ia-|B`2-#;tDWc;+kz2ssjFW^|0-L_Tt~XjzWCY|T562v#liA-1Nq9}jzH^94 z#M>^|SJf4<16wU0MUgn@-4*z@@;&0j6xal;%0R3X&ck{TQ%is&laV9Fz!#Jv3F&}1 zKb=ZQtUq!BaA_+r&Juo86^QtSpBKUpyn!{T@Vmloz{nuj4L&{)_w1A#2rxMbdeJnd$V22YH^g`$@L9it5S0}a@djos&_&$tqX^H2BCWLH zlU*q?doyAjb6D3Kv4)PHvHl%*6{(kxfHp^ z=?L0E=e>a?lMzc@Qh+MP|`w zjKCj*fPj+CU$@W&q#eUvH34bsr+8fzzkqSI;r$L0b470iit` z`3mv47XI}VIZA5)d=oyX2t1B>MMwqgoP@l2Y$G8?z>P78mt0rGDdK3YCn0=g;O|+A zjL(4W(kN152A}H#|3nUZ%!6*x)&O|Bs~Q-DxN?7l7(>pqe1zPKmmhFQJ_fpi&s_mm zc!qdxf!trcha!jI1L|Gy@X@beMoz~4v_Pxy%6Op0V52PPt3MuiYkjhyC&@qfea zMYXVl5+Pm~=WIM7ACSZ2;nz2T`}@GZ)Fx0Q-w!^AoEZU}YJG=)lkr`3ihsHt;$MewEFoi1Q_i^nmUCfVsX(z;EOr|5NxKImQ4ZIM97?tQa5QJZz(R6!{Xrr<=h4ED?X;5zivwFAt#~ z8Y2;#Cor$s;9FjZp+$&2WB6k(c)BWh^sh6>5gm|sbm60!gcO6YIOh;@1v#)gaA|rF zAtPbC8PKl*u%r^Xcpv6*d@muo;2eEs60$I#5IgvWN(4m~BW4=I&pvd<+_9e1z`!Ca zLVO$$WAIUji{K*gO$TrkUGR}*;EJQ)g7X1yuD5|tA$}`?qbk7QAaKBHVDMPv@E@3$ zFL>k>_``L??o#9?7wDoK_U-~cu@X3c3-*0pio6EAnF1bE(~ppG;Ils9kH2BV6NugH z0IU~SG#UA5Ixx8TG;l%qQ#a(vPZux`@Px4Qz@e?+KCty!*m4Un$R6CFg9ct<6xokl z-4Xihi1~d$U2+LAa~WJs6|wLdcpQa1*c#Z{3fNg|4;~Dkx`}+Z7_T7Yn>DfE7K`Bj z@WHc)0Xgu`A;@>9f$<$N=e^_c9-f>DuGcFG>&${b^#B$jPt6C1E{2}{OTaY|S2K~H zTrpNY@U8=Vbt=|#AG$4puH<0bjx8wC8M^9+8f8mUVPq0;oIGTnTSz4chs8j2Qy&r>1gN?*Vn-pjsRO?;KPp! zz!%{UMN7pc(0*i6JV>cB0CjX2a6p0MXO`2IrZ^D$z`6g*_k zCFF@Uzye_09n^5z{uDU|T|5To>JmZM2UsWYsuZ#4r2;Mkyy%J-51ew}EZ7y8T!@@K z3|#UJ`b~h%Mk7DG?*TrDxVeD5*#dEO2!2us-U*schJYvEPDkvnMjl5FIRhTv6Z$%X z_bq|fKJbM?*!3jpzcz@Q-iN@O&w&qsKb$lGUcndM;nf+nWi&XaJ9v*9_=`63J{PrS zAl4?2xSff9w}5+Fpa&<^VI8n;xkSV+@PFP(=nVNL2cI>23v2@S*@Cr~qTcI`xSkI# zsswyoN9Po9@`2EyaT@#vFAvOp2{_^idgSF77&{p2{DFM^9l7-`u=^2k>-ufrF7oUt)J+S)s|ydp z&$59D$W5R@F|fxJK5Y(O!h=1Pf&UKRoHGzt9$2>;_=y?n zY$f6txU>J9xu&=&S?ubp`XZ1=rgKzNriU4nzE8gJ%Z7W;MW~XDQ(0 z$SL!TfUV%xD_>9~6x{L%a-A8tL_X|XfV%7*ZUaiA-aZH4bF~y@)9-(N37l(1O5h^$RVDV0n3{gVf|JV z8GyL$1biKt3>m2Dbm0q@c)f)UA7C6!)Kjgn&beq;gF0yju;c)IZYXNA)~E^JfQKGI z+l|o4Ibd5yU}7M6-a^Rivk6=bd36wUSAv}V7Ir)eelR8#H5j<&Xz#hm=AWx;D*8hsQs>b}*j0PqG7k|LFGQeL(VO@J+kB9L6 ze2klj{52Im))YA^4O~BO888`sb^-P1Y~V;g#MmQng-+1Jbgcgha`7_6z$P_}X^VUg z-nj-GAqch6P565r_@ol_n*`m-gLgg#=PM6JZa`csBmetAA3G7twIh(vkSm5FzVBiV z---xn1Q{9Nrk(tNZ{W{-VB4CnunRDACj58|czp!0svTl61+jb?KEJmK@DY4&1ai|9 z)D4?}r`^GQEit!MCs4}(`)9!a=fmIKFs=!BY9+`~3-D(?Y7h-@d7n^lHU;m^f#0f4R^uS{d!{o5Gy&rxr@NBjCYs^;&%gTm!9A*38-Ht zc_KF8%YZoY1pl`L7<3c7F&n(62lR3Z_2+i@nE`mlYVfux$W4aGB|lNi90Wg0KwWee z@irWKOhE0Thxk~FX)d z{@}Sy?<4-b;lIGa`M}Ev)X0g*Kkm>+DSUb*c)V^fY=*e#34Fc8Vh{TAeg z1Yo2#>f#7s`YqVf3mow0Ghh<%YmXjs6LQ5jn~?YK0OR$+xl6z?F2g@&A|Gp@ z{yK)5VGwkZfV%Pabm#^+HXZpPi4WXB4*CUu2mwDKeULlBk2a&Gn+@J+jGBp$*v;vL z`NRJ`!B_GEfvsC$U*sMR=5Pu1X$*X9IL2CvnsGPseh@fnJoIS*`|r*N4uTWv!)~sy z&vZrj9=P6JaLT9f_qpIP!I5+w54$4|JRSfpfbs4F_eX=1a=^7XSmPSx{_VhdZP=p| z>X9xMsEbWeV}c7G0nTsU2z;W80u>)T3F*Uk32`p>!<^tjGXH4!s91gY|Hm1BW^R zhrvDEmS7IZL9>A+{efqJ$S?*~qh|$khlp;)wCA;ZL(F;q%CGZBYN`0^@wD z={*48HpZ0)KPZEqoMHC?x{c^_b4-aXaVI9kUvOlBcipLtc7mfa=>rW!Cx_7gEJWRc znDbL5kB5;yM8b?|A?w^#`Vbzc|0`iO%+&zqP=rYIXU=>TiT=|eGWO^Y$Sism+0Gse z#CDXW3vpe&r%&1uHf9ekrH{Xu#!S(JIMkgm%1$(hxh{S3gbu7{E)-(Ptbje%g*^r& z@?TiTks>0aS_+P?31v?3^sjetkEk1;K1^4*w`1pPa|1qKJm}Z#T7yyJHlm-HZ@^R7YSsJA_-!a;KlT$ z-AZ`E$65L~tG^ds|4v#O>!K<^aE^>{?(}Kc)Bn3*E5S)N^z7MwwA)w<;;z00T#&Q+{CPNG(-Jf_ zZm21jIY3sZEjG@@9a!YFPa#HMwixZc)9g$4~td|*y9Y4K5d^E|4G&I@;bZH~%5>)4U@?bg|;uj_`1Jf`@J31|emF&d8 zP6RP*CT1g{*Vmt~34o2prWq15pNY=H{-(1C2E@B7%ZquZG~%1$9k+o@Bzdru17k_L z?RI%FO*%5u4Mfuj=8PrD*rY|!169Z~$EJJZKMR38e`b6d8)$EItUC@`_6c?Un==vN z&#W~}?1(n;1H2st8PTc*lk=n-Th=@An~p&r0nmAq>F74qh+z&!i~{^{kv&E`tj^iQ z&zQ0o2$oi=C=6M+3lt0clmB;vSTUmgn3!gJ1;G@wOXw>I6yPt#jzmKk6ZU*6x*~%d|J+IPY`8F@ zrX=%(N9m42q@uYJZSWW+nd`G+^z0!xq}+pfPqz_2%J7X66Y=%CN}n<&?66gtiTFS! zG6Rli?ZRbrzl8lF_ZC zNa4i77-wT6!;68xV1f2oDwBxLos1Zk?7^G}M<4ZX&sdGt>;-nZl4nAS`$&)=a7CoR z|BtX2M!Kppobmrsq%&jrX?3m|uga7x|1<=hA{rK}(271M<$n|+J+p#V4d_!ui_IDT z50E;E(~q&GL)~Cub+GxR6;rL!jf0qiN;0^3m?Mj5;;1Kd4|ZraMrqj8ZOvpQ_Gm^A z#^G!jShUA~rl?n}nUv|xyjHYk7Q39?zy46gtQVWD64Hp-3{hBUZq6WC^cu0&E9aQ>;dpK5Q3Z zV-aNAFr9=%ht~sZHX z=&EIB6x#o05O$9AVa^_Px-w>FJ&g%FRza~4Yx?(M9R=l(hzbe^I?=h#FY0eRiSJ>~?ANo1&V>$QvN|h-%ZLqLHfD~@20FOWHpmMwAX z8_ki4oJfI4Aw3Br1G+QjYey0StCfzs)Y7;qoI=b44cNH&6h1)4Ks}Q<@FgRI9 zFcmChrXVbZ9(}SWb6B}ZtR;*T$oK(QB9evTq(Sj(Pk}dx1cI%m|Yh9xUMGhaR6$7}_L3$|K?z~s+x zm%8v{AS0A%K^q~G96;wJO1P6_&PWLp#3gGc?|LP)@W^V>n%wKmXC;v2FT)k2H#r)< zMIzrvaE`y^q+}f#FTKQqK8$hMt}HmYi@~Ds+s1^DSwEAr6eNtSS4YhwEl4_!Oc}ee zDi@|-b{=%L5J76)y$5v$f&MI%?kd{ErS(yUZrXp-&AyIZdXZm$(}~srdn1coeTTk( z*~wn4)8M{>Z*KTgC)vla3l(Dv5#40Pya<-(qKS*FCSi<)MN!C}LhsLPYDUWNLo4QY zUj`jSh01k^cW6kw^bUlqc4O)wNi-N89Gm(HJW`h6`u8G)WvS4V+&XaG(jOJT{~}2I zj=`Hh38M|%5UXbm&))J8BE;SSe-KvxZjn&^vU_|TAaDio?>z`Y2O2pe8Ko}L0L7Bk z#H0?JS!~Q~xSR}4E?_q?I@s6q5|L@2C@G4gETzrFyb;0%w017*g%!j1)l6Km77eMa*QR? z!h2_20Y&g;=%4sqQfc5kIIzx{{$?=oYmzra*zGA%UU#U=e=IJ})+S`~p9T`L524%0 z&cF?)b^2L42icuygV`~frU5EY>~kRx7S->P;70fP4#89Yi(qRpJ4p7g_x&I`f-hOB zKSaY@p3+;24pcz_2H-UeSaL~MG(ZtNvl8-d7$F9A-y|m8ynbSp+N!^FPD?eDvZ6R|L|a#(}L`jZf8 zuRoyz4f`4W*9;AeEuL_sqwEN}Y00`LA$kN*^wb_pHA6?%AyPwKgsgP)$U2vo zY|5fguvGKoBkR^6*_;jLz+iivKV)%gRK0Hzly(|+M@906t^@HC>=Jz*Rc8dD0LgEA zmwijhXLOw-2``D*zV!F3vkc(==(@O?NraCYi82+vs~pb6x`~m1q)Rsp`$Iqo_go}< zNZx7{XGU2@0`B?m2C2Uz)X>{Mwo#w zV?tj+MJ+u8>D-WK!hnmgJFQN4!rmKT?<&iB07m-px~q~xf*GfYWFA+R{!U0IB77`~ zHL_^?v6U%9k%dCojm&9+>V_5|y%e@8@?$oZ#dm7h+YM|{A1b(GAIPvnuBpU4Wep*@ zJ1?v_#qG4ol!+i#h%xc28%OpN!)O)USz!4(4Uf5D#%-!2(|l69WY4du7tPUv4hurP4sm{@p@o-5o2T-X$M%6cHl! zu?y+em(8VgCpm;HL=j!Dd)RvnlU@E!h_F+}n13;{h`CBWW`1o9lWs*qf(1w=e6&Rx zzKI31{n${4hM)bD7UX3i;oc1iV(S&@&O0oaq%W&;{k<*8u5T>F0$Q>wd;ee7_O!Tw zewGc6{ZCyJESbD2tE=Sgb5WNnONr@*67~Ta;RDw03~wG!gpU+CFpovkwhv}lbQtMA zRw6Fz3-~v%Z#S0VfUGc6LB#psclM`r{E=~DlV@on%VWJ72o7m59XgKLtYQU7KAtMw zT{`iJ5=#VOZ<*T*aNA!-i4rqT3~=f{c2s{$TsFe#j%RLNh{OaF;Wyn1OMH3`GsFxo zy{Y3kp1D!I)8H=0Yo8_Hq|mGq;I^-6gR_ zc%z8^-A}ORTEC5~M}dXbF0p2Ilm8d-(umQ*M#9$hMatUVw`3Mv-`VUSY<$DQM30F` z?+7*|FvCU+66yG4p?4uB5{_g|{=O8Ug$?gyOk$sm$md6;{Ng13cK@fx)NcuDJnfTc;)ta~nwj2A* zOhf5wvz>%4LYWW?{!dlF13RW5tuHE4W+5oPb4BZfMf@;kZ$Z>sywyN^v8b;X0uEd2(BAs-%Uyfp6CEm?i zpfaJg*+lzj&U6lM&y~Emc(?88oTI`?Z z_})p3jr>`d(04>nys&{Qu8uG%f3tCB?wb7@@xo>Pv+z~UVrW`lc>UXj4XfeFpXVtp zs=hn_Nw~p8u}Jx6;o>(fWo>A%>RCJSk6s|urs&Ul|1`t0iDF*Ba%1raF4;%u{`=#Y zBPWUNn*4Y1;=Uk!3Qjmg^dvD_+3*nc;j|%GFNMHa|0M9A3mxg_0o)}Xa+0iJM1KJD z?r&DZvNm?pJX}D78d}W)7csnNNBgIJUTG1##6{RJTMYkpqqxjPED)p%X7_qal>KMi z(yh9bhP;3P${G*xrPYyQpOdNeMugm{3r1%s5H21S2L1N4=`F|BJ2196e|WCmk~|BV}Um?E~PD-!u9ZtYi{( zlFf@m+dI-?5~hd|EPFwHB{~m4R6YtJR^)?{IeWL{B7}ne{1+?Vrig9jIKuDEWu#5f zGgzW16|WJ6pNT&@IMiJ%?f)CWvI+y~eYfQQ$K0F1S6y6-<8#y2_SxMo+G_RITBKAF zkXl8g0%3`UMH0kXD`vTYz)fz4Re`d~{@2ubN{oW+>|NFf6so{QS&Y9)R+2_nuP3jc_oUW(XIrDDn?%Pu}o*af^ zEUS>g2OqME8#J%EikihULZ83Ez~3Ymb}Cc%1<1AN8Wv<)uv4fncb45*q3vmWWJ>39!(6uR_GX1hXN`+uf*=(>O844>4f?7| zEzsZteYHks*14_Jd`kJchMkCxO5uFRj8F1P_(SIef*e+1w;5coe;3%;Bmd>L$A+Tw?L*zSsy&}O0l znK$XEXf-yGr%%8lh*JKkDh?>fq{`tsk7m*!!rP2p7T+pHx50wPG}1g3o8r zXUfGGDMW}!f?$)O!AG%yd6l$^Kc|BqC_7*l{Pc12CytH(chNL)4MP7!nFN$Iu*nA4 z#GaTY#0~zWR0T|$B^_XdHDbDR_utdRvDQ2LOgW#Jdt;hNU!blkUg2{PpEO-uH^9a= zm7F>~*xO<$9ctKl@Z%};V{PDCzifK2)aE8#soE=#XO>+*Js9OEhMB8)Ptr${86Ad- zFSeLJlcV=8`1x%0b65;;ryB8Sxi?J$^ApoWIu?GQsuw=;dTx3^p43qP{4+HU-)GwD z&gf<|+_&6jTjD7Y>o0LqukMlvT8=K z9_DrL2h}um*Op#B?ZAv+$@Dn*cV`4VNTs*Esqo+}*JcsR$+E=EVCrUK=Un!|nc5J{ zi{c}tB>vRQ;NV9Ks=+fw5F&p=I=o}mxXeNsDONc%*gmA6Su+EQz#mM}wL%AF#*yxy z8LZX#z`1yEX0TTHBkk$)GlTO@^l5I|t22WgnV{(me^lesf2II&Q93wWT+DqU9Z+1j z)a#!Pgh77M_@#8P0IKj9mmXPGmJSv`-KLtB4#;_;B$IjRV53z8GIT4OPyZ-uRNbV4Y-cT3s-&GQn3c3ERiCzgia%5;=EV22@`c zEM>WHxw=gj*9A0E9!RbAbpcJOt7N!ryWLN8=D$%VQqp{%$gx4clQR8cU2u4OdAt9p z3#5(uOjP^6`e5Xf#bybiULOok{fHsc{`J8DpCS!sb2~=Xi@n3z3Mp9uBCI^YRnYis zvgt?412BzIHV}PT0nPe^H=7L5tL3k2q3Jc$v{EY8B>@>y?LGbeRg<*mI7kYCV~qpb z0N)J2i*4X!B9=1r23AQIi;0k`EjEcUmt+_l>H@NVG4FTk>S(_k8N1vC5H(RZiLMfW zjE(~&r74lhq}DxwPXee(g@Mx7D-7(^MzC01uzERH`qg&UoYc(Ncz;(+kg^M6m_Dsq zrcx-#mG*G6m}I5bdQzKf#^TDPHsGs zNprL*+E;7vI#(v}!-rR3x52(^E@NXASh~Z46)|VATB)#2b;@R^M1fV*tcZC|0$`Oc zF#o8`1VcSGte36w&h{oSwd0~eC$Zujx85W;MZC^YEBBL|y(>4>`Zrb2F1jj{7?W$b!iL%JS_cdSUD`b#qEY}sW#Rks?HW}?tDZW_g5%F2DTi?7*h zx%f85CUzIBDsX86{WSm`>;pOuCRPT(!jfnQ-Okt$Uq?HIkVL#m|1GzNOvdhB2wlGd zKxg=X`q#vkLG@w<=~8_Oqw>#*z-_ z_HQjhJ%|e;ENRqV9(v_GIaS@Ksmldb0#J|K`)q{M=S%((2C7(4oLp9S8$fdw=OLPC1SYVvm*gSjXkY~9YfC&UYDW0N^lv*7=myvaECplG z22Om$Opm1q!M3GRu8tCX7H=PhU7EoFE4KuzSt>aGK8BQAD%9!9kT()kJvsYEhaLf- zso_28CCj89mk*@6VsC4{Q$4M04eCdLrn;wSeAfo;OWNC(GqxnrQ%v^VaXTKUN`O<= zkAF0MS4h&)eWTH&vvP%GWQ7G&ZC#Xrzr8}9)&F4PA=Rm#GQV4(c`~dyz31{YG#U`zNF`+H7XTOet4yYoc^QN zO4A`eP$CE%m1@@vpr&^Rl-+)U(7(u#^q==v)=FctH<3*cB5@kS;t=}WMz3S6JPx|B zB6oHbb3%Dwoz$A50qgbTqFNHzG3!IPs|nUEJF8bbP=4P(u9pgSVc^tP66}+_ zeIUay&Ng^M2>Uh>xTlhyKtTD+Yl=`9Ysvi zN)T<^B&}2GXzPYJQ!~%HHsCL){{Cu{+)@Iz)3tz3V^ z<=oBIgcLparl!X7#Vt}NbvvSa#;vG4e~Z-n+%EdVKof$yqdKKd6pF2U+jEPQf|G?Q zXV&|TYp<19Eh)p=U@==6tLZ5sUpv=Ycy_CxWlF8W`x$1^h#4uqe4DU&O|N>GB2Lsj zLbONGiMz0Dn+V(KV0_mqk8T%xXWz2W3u>9VZHW}bwin<}+l3nypQ#If6eo;p%-tcv zhjt3JuVUN59pbRtO?^eabX{I07_{#Y_JR$7YPaBl8g-vo7+)hgJnsEP-^*q<+$RoH z6dJq`@D-mWps2bWA67h^$jF@ztEZEG^IiW=$o+Fmv83ZykC&H4LrPB(NjBx zGzwVnpCS)x?-6=$w4L0f`S@`K1wMzu)Y+!DUu?#aG!ppL!cL}-Rb}eD( zov&xU3a}=a>mFdNuMI>mp{Eb_NoaiWD1dp9r^>&3^USow+oL=CeC$eO9NG;>CAxDH zQyPn2l);QGKKmdnS~wv4H!}yHrgH5=a3b{D(!&{61Hr3u%}m{>T>mieNWCc)a76w= z&2~bwNoF&pdMLJ{zvO~jL-)!3Ebq~Wt%0hH40a{ z4{6`A*TU;syi^A^jKrP*5a;P2D1(aVAj9yTA)?_|_gWiBdF~?|lV`M40=Qf^llSUc zEg)RWstnkL?}d4nO1{}@9Xg+?W?BSs!cZUCXOT7si;1w+(xGn~K8RusbQ}`h(Kik1 zerTUX0lYhsOh(vZ=%uVS#BmNfjrVn;2xwR-aa<4Ic&hg^HoE&D_0fI3=b-2mo&6|d zmAwNhs&LdiKy!8Pps^zueI5hlDh}xI2PMKc?EnCu*c-t0?HlsA=YYA@g}7mf35HeD z=tYJ*Trz@s>+3U*dkEbHYaX(*o?xtB{!SDGxdWOHjo%!77pOhrOR|XrpxDI$;1?)~F*&&s+{S$6K> zShRo!jhTDPDFgCT=~mOYwkZ$710oj~HK8ybU!C z{(9$A9;M3d?5flH4vly!7UM*Rl#lz}6c<27)}FKh{0sn$jSD~*S3Y2$KOT!OnztT& zfQAB~5%~e>NuavFnl6Wq129+Q2U9M9)M=S>^b5M62;3vbV@XAt*n6L5tTcafbQw;N z8?2;*=N+e~WAW*$L6{dC{vNyhq`F;)zwHLV*L4rD|BY1}!8@K2+E|6G7@|Jod3N)3 zeYxOasnu5l@EhDRX<6ewjcz({yNP_SSeH-T6R}g`sm}w?2vR~M6l|C(qX~2)ic;m3 zhD!;`_T99To@H!V!iDE6b5O=o^6GFC!;AT7PV4uECV>4!Q50 ztgL6zCj7VXP;`Hg=4zYIiL1QjUjdrx-auoXS5+U09=yKhn?0a^H`CIN23{%6dzJ2P zx7Y{+X!uVJ;A%DydJSY z+uUtlX=C^ENJ{G?O$nbUb>HZycb15svK9Z2k8lth`M-><|9@hH?&|#=#t`j^mzDjXNMUwv1@AO1J?)`D$YVH3{Pn0`5ENSZ}c8VG5 zKv{Y7*muqI%I`9^sF%j$i$aFgrqJEl^sMJn7|Zo1W+=oie+Ve1pI8)A1D#^v_j*n8 zL?OG7ZT(*F5tWZ26}pk^`5sK1)L=bxV*>M+n%nk#Ph^Un1z@Kn`Ys;S7Pu5`&-Z|) z<2~s;>IKGb>n@5gjV2f|XfB8ZWh!0E7)G}3b z*0<5psQrEqOolRHYoW8wb;^xmSUMH!5mO3L$%{R(%)(M%3L)mhFZMu-w>8$nD6I7* z#rfc$BK6zS}ewKC=BVvIRXJnd|B(oQ7WdK>^|-Y#@41m6AI#U}bI(X)XBH@Pv^}lD5-+uXx0%1nC!lGg$M3kyoo<}~4u`i2kH4b8q$X=#` zm9$E#Ie9p`E5h`c<51sb_{1 zs4+hm$vcI2v`28u&qYpB_al&pe=gib|CvDIhkhYa@^xgGgdc`#`!7T$h#p@~3s`6z z=p(`FEA>oI1hy~D{P-7w7smltEC$>xsJB?l4H)=KNs#$LP+<$-sa?`jFqld6@-Ib_ zd>k+nq!~3rtjSD9MFs3kpL2dC!e?w#pI=xisNj_MGpXkiG#ghIUZUG3Uy zN91aomVfld{kg6YZ#zR$X4w7UF4|qGe%6sM080F@Z`sdram;NtO*;h-T zYnQsL9RG*Nvw$&x(JUn$lvGbA%bxv1BwH`MczD0pBFPwEMxpDd8R5Re$D+eU>fNu2 zn+m-N(#`Mx-fNL(g(I0M_IEb(y?0N#;~9U9WC$Eg9jlNDXwhSQEI+8Q>(1(o;Hcj5 zdL(^?T}4*zqG_*-%hq84^vZY0^_7Kn@O8(ah&IWlIyUl;TG3Vq&i zwBkZRo!Rb$4RmSn@`MD=Dh&NK@znE1NA2Hgcz zBG#b{rd!Ic`;)Z>2-Nl$D?x+b-};lKrBOGk{ldSf9CiF^=k4|Vvqe+{Bz$qnhptx! zyzkG}@$-Q}S!!0MQRDmJpS??~j3o7Hb-qf46UC9>#_A=1u?}1~P`6g%!M}KkEX8# z2VWf{0#frgYmLk*_0jd+)w#xAC8Dm7X=^G||GR$^_x-wq%2z`W5!TD+=4x4!2Px*M zwfx;uj(d){Ar#p={$Y7|PYklTY|TF`A3%IWw)w7#`AlaOflxc|pWU8GIgEB>;A1Nh zxiy?;qm5K56a!WIto@&sv(Z&peI5b##y^%OoAWO#>eC%?;VztS{>$Lv!tO*hw9I7i{xg7 zz|E>M*BdJ?jFWtn9!;JgHd}|ot;cA%PqKs=RnCW6SI^>S#@k!};Y7lW@Z>{_6s9~e z6@hfivUe3FOq1US%$0gdEZT|bUj~5J!Wf!X}WwCO(ft_17r)9|Rk`AGO>qCD`G(D*#JF`Y;E zZuvdXVVHR~@>SZk$>M(jL_Z&hthbuVXHH6(jC!iYA@Pa=Ss8AQlR9YVwW<>FYp(cZ z0CYL2n!1vyXnF#}BAPYQCZ?(*+{8>Xvlh&x0MS7JJXrZRbq6ZB2K`RUcfUKq1+<-A z;69S84E?C!;+yXlCon%ae65(LW8zXMv)Dd9Ts4^!v|R8WK@Ry5jAyAJI>ooCSRRDA z?0fGKJS;y5^w{!+FJ<&xJ=JcfQ2l@XSAxsJ{J`*+l#ut)Ig9fF*c9zO_jClo;~*k1Y|VJPZmejExi}^rpC8V7DO0bq}Rt*-#l3` zpXiQgQ=>sp6&!)jy*H#QHPAuuTef&#j89-PbR8PEtB-vwc(1nB`2pN0?P|Sd7-2_czYUh4c0h5*4`O9?P; zkg7tk@ERrqr2wRKwA4rNO&Ap7?)IbXp2bN0MAK3wLtwup0B~YY0QyRCv;oli-UAvZ z5n}s?K%wXf$_b1rVw)!nY}pSBvUNfGN?7P6hTn5af>q}WOxe5vi}j*(@MYfkj`5~A zi0rHsD#MPXHcA$vtqPP6AEMJfl3>?I=i1nk57D^4(;I|3m*XfN2Nc)FMM391%$@9_ z9r)2a;Qe(-;_k#=0H2NmuSckDOJRf{P;)MNe0{EGK4*O_!ET5`XeYF1JwOmKJ&ffp z?+qUl3^W{x88CGbd<_6hiUL5suJH1v_LB#^n!^V_E)IQfgXKjc7JvK%jCc@Boaz~| zN~X(*)uWqRqz|KVO<+P_r#Mw`@+i=S1HIrhP)Y1m5&LB&?w(Xvc1l>iZ0)wZAHbb$ zf>RxpY1IbJhMD#iAI#L?)mL?GeX1NZ-qKR#rQQM%L!&^r@Agv8qm0{q0+e180LCzA zkY!S2H%dxZU-m=SA%%1`kI$h(yH63!i84~3f$ry+k1MOYgL5=6--3qy&4&5N;n&b* z@EC?gjvIm!TeZOkE6dsp8xQ@Yz(pOe79DMQSt8X=l&Q<0%Lvs)k5Od{(E48hFoV(M zF`eNvA5|U)OV%092Tu2N47+Tl1NsGY95hzyEbgnhS*9k1^x7=K@_Wumu)eb+v!@R zz91hwE5Sa=Kl<0}bMW~TtU-dctMQl&ho8?wN>X*$aZM;nfTYU(4V;8(pu^c=Ik?J; zHUBKJJ$ArYPp}%vs5Horq46NMaX#&SU=qwR6^Y5GUtX0IL{KjsmeFNV+-EitpH8sy zxZREXGnVnlc%^l96asjRltkIcJAl}B``MBrkm2BwR}?nqGlCRJ{9FOpcz-)(fsz4J z!tFy5lf}@ve~DySje*?KueRFjf8aB6{quG4w@IBNXQM>WaE(6y1fP@k=d_r1Hi)K; z_-ulWw;P$yEtxU+{C4UJ06EkK8C3y-Qc>&W?_UQ1gG~T*fzIqg`O5U`YoC?-m#?Fq zHcVeG=>z6ONJi~Jqv5oCIhiA)OW{72~eabH*9 z6X#0y;eLv8KJ9{TXZpKQlb6o*jCVRy!BEq4qAL#n_H}jbS9-Tb2XjMTXJd7~X}&pc z)9=&Jx!CO-_O3M9IPNl?{5gk0q5#eH0=b|cXjf4{Xr(XzyyPc(!)R&vKfW$fs)Zct zKYdUN&X=ASP`t^J{d;S;^}!dQ9gd}mVXJyv^@KG204dl6o4IPRcg8TLT3r7(2NR+mN4^;(d#dCc2qfxOBhu%BVSS@+jgO6 zFw{X=C&!`LFuR%GFQ{DjW`OxM08#1#LFEb26o_9n@3Vs)#u1%Y9ro64mfbYiVOTmS z94B>uXt1LmMQ1G0iu`)8L*HiRLPk)K3J6&u;|r04G*d>u_Jv4X`Ra{(Y=qfv1z6?9T8QD=ZaO}NBiAEV`Y z#D?~|Zh;P0+a1so(9>eK&t2lM9OXywEul-r>xMWQ`dEh75B@R4*`yMw1X3ZGu))#< zkt=-hQfHIm0-^*qVCt7T#7|7BAy6K(Y{#Vz=OG)pR7}1}OY7D#etM`Qw<)-0?q}&x zXVD9N7huCs$Lw|U#eX~0p-OrLz%7&f*~=WNjD9iT+RL1EG8J`oqcd%+(?gdz!!k8v z?1)0`UBjHlu1dbAmSGM{i~>eu`1UZz z2C=(QWN^Tj9RCPrG+`L`$6xZy2FtJEGLy0&&NY-X@uQbZN2Cc1?UC!?W3~P9M7+gt z&wmEdAU1h;f?eO6h}^lnZ$yG!*F6+5OZEeTYvUo%-vcOR7^@8fey#YHVSPq+3w+#X z5N-wV*YrMkT$)ph9l=HCZ-234M!I#bm7npyiyfDQ+nj%&%;*}?E5#10a=T1mjT#oW z=vw6{=Wxf#0`a?IUK-_@M20m5bc^~!HB)h{F{3@pgpG%@M#)%EMdusUcT8w=Jtjr3 zS5}R2Y#D0qlNbJTtaI0`V;o|2tLD2I3~^n;e+BT9Oz^$&$VKs3XVvUlnA`zbC!V5D zvrS_iIqptMm$0p49rHWfx{A9NFOPLJzlma3I9X2@1En;gXnSl}iQ{MY0}2DMp~P_~ zxnT{Jc$yJ=KnmX(S2(6gcy>VWHrEx7Qz@?VwdD#&U5Mju-F2nolYZu7neg=f^u7)|Zl_mu8869Q3X6&c4zC_Y0kKCO9?|bugbd zZh?kpxD8cN_Z0YVWni?PJJ~UN6xAZma2>>coh9qZUT&J~7!LUsR(~=gT84b!YKO4D%u=HJ zNcdEPpHO*pU$BjvYMn2y3l8`d_|2 z!EWf;K-}ANHj-Zel0_lYjqBu!T6|v~YnZ_AKQ+N_IdMbD@7!#L0o3~k;QAv9L2u{M z(2k_o(W#*{-cyu%1`gKnB&46ZA;IQ{Y;9(iqoX6PV!@m>8u19F)CYVD=U@I^vtlPn9e!_nk4;Al-iN;!_lS8Y-my(-Na2&@+o4s z`={rtk+Bk*p6xcZyAY|8RJAI_EL0+6%`$b?@;vbbUo1f`(`K8q$eA4H}&0Yrr|; zXR5u!Ef*;2Sl_VEcy`W*&jZ}g%DLfN$}d2t^LVFeY??gf+zF^|d2l;kcTbFj4*l#7 z4dT?y^}ILLKr5#==l+0<(KyBKs+Px1HN^2MUF30Sa*^2tFS?k`e2-oorL|FACo)V9 z#DDoZ{Tw=7Txh3ahIa&6%E8FVWtQZ-{zW)5}l(T*M z?%K_7PdQ5-)m)G5ZQ@(_%Bh(n351z_0BNa2*)MlU=iY{EP&SI-HU7SRI$WPE-gW{YT$ zZvx1PK9Kqy3VLvq!b=q*fI$^#T@H|{^RA}tjOKeD=P_@c^&r&u)O#t~MPQpY*k@{R z;jctUXv&8sPaM!1s&A#-Zxqy0AffS_w%gqE(wOPXp z?CVF!h45li!6!8=Xg~}kJYk`4bAsK_JIGull+E9F)(J#HGg&*U8&st8b`^H5XZ|W$ z>JbF<#J_KL!6)7y*w)X>eY3frzc8qJdZJsb9`)(4N^5#w)%rto3SQOlLAWbUE6e|~ zi!!(TXHbvwp#JBag1K#c)MZLa&rPspy|%?u4e}uzQQK{E!|%*3nERt+lBYST>VxPb zb)S^3iZxxBVxP((=A~Q^AZ~k3zdTuo9`9RZ{e#95koVZ0OAe^V}$8 zeg*7X-9bX8r`;}$KnCBEU^5Cs5~ZWs$t-r>@RVB$CXKl0!XKFZ+bxCbA<(Oj=U_g- zQSKnuYOHDT&_Z`m(4(Qxw0PWX-2+I=@TqwohgHu&>b{Me=6S*b(csbbX1XZ8HBUxa z3IU_l(wm=PqYLk@0_T5tl;nf>+oeR+Y;EbCo-`S0;9 zS>Q2HdO8R<@v#HYT-_Zsy8j;w{8n1kM^9c@FzE1@fk}du3kzNxKWKZwEdIFAt|MYBA+$@mprDd%qyyV-3GCv zD`O1U7pJB@J9Aau1Fi!wp9(N{0ylT0$O+3btjoA!l~?n}>u_|XieKF3n@h>0`qS>D z%JW&oWo&B&biedyB|H8c+(Tg41g?XB*}7gFzfYk4Vx7mv?=Au}Q}L(k6KqaTK>JHwaRb9o z*7|umX+sa^Wg=G!PL{p6p+{S8zhi2*Sba~AczizaE{(O{)1!0l0#sG=%0aQK724FA zjXfe{-&6M{BWc~(qg}~Y#o$*Pdqhuu@Tlqh*S!hW)O(=A({Jq1aM`^*67G}4LBr+2 zaw_=~_qy)&7{&2Xns0d7-%r`(aqGkfZgMX(2Hh;fvtpKjrusynnIL@1cu9vJ-({P6 zMA9m|!7qwm*yPD@x9L8g2l0KIJ(lJKkjC^5lx_V5bO9ZQ*&Xe-oAeAARY)a>DR1_e z>h8;2<~rDQHVD|Wn>|ht*V1)UB&8Xkfg-yzx7p(s^%>7T*R~$)J$H-8@7oxI`I9Yt z*G<*EBF`NO06i%lXq#W*<9}%{*ugtukC^YTdbo^Vpw<0_F6hHMVvpF~-Kd2qyU)W- z{9uuQ>Wy3>AINXt=Q%IB_e@1R)B~I9thmo~mfkP@-KZs~6-!BUquS4g6~XEh>!3C}G1@J=bG{D5tjI=;namrVHLP8sPc1c-Y%eEm+z_55H6 ztJ{%4zPeM&1U~?`J|NlU_JnTU6}jB;0jcMjkd5rvCE2JS@FXEU=dvo6X0BQM-RRC} zftri05(VZy5ZO68AMDKsq_Skz_UBh>3x5pVh4aPTGF2uY`23*$x?7S!eo)Gc)18%+ z)3*LWAr(~g!1UyBl`<_gA9}_jT#^>Qoep#GU-PgS zlzoZcR+}3i7S|2j+5&EY3+$?HicyftZTZ~8Lf3YInk5a~7oq1oBCg!=&lu-G>eFqH ziNYtOvRO{sBb)+u7j;Bi;-qq* zg`QNq&$zwfq{aaieNvYLpuPx5pHit*tjc9I0-XNKdxd>z-PvY#rFpj`I0s)yG1=l) zxl+o5=W8}00xWUgT`nl|GPYfxHGKbm)G9)rVUAZ{H6HQE**;0*s+)pYEY=6#wNuC9 zRp|0@vrAAud%rUX-wO^l9ZcLWv`M_ckhb33oXUI!GjZ$8qiCm=-L_vi&%(gkvL4@# zvVA{M2tNC$F>W6-pDN4vQd)N=DDX--9w|9L?#95O-TJ7|FylEa^1Jxz9}^07fPV7AxXD!!NKLbYgcBy2LL4f094199v39&dkP(E zh3T(8pbo%I`!{iLW;bOht4z6U$cq(c91v1FE&!~UTN_ZuRR@G?!R+oQd9_6N`Y~Ni zUUWd{>I4Fx=AKtr}KKurl&t;`kupWQp{LBaA(x(#a>i8(| ziWru6LH`&&tX1t%KIT6q_(ELJW3vmVG8zdS9i|u<>_1BUwpP?6vyfvtYd20dhVgyoy85 zOI!-grjwh@O$?$Zz3c--Os+583BRUOMPa((%kE~a23#4LN^ zS;6%2pJ8u#Va=&9g~8=D|9)0*O6BeJb)(I%=@yD{Ur(^KZT9+hBkcOT-8Y&iW!dhp z3whn_Wh5h|WZ`~P-E2<j!-tLdR~@ioW;&!Yso2m9lE^h0*|I`W`sPv?%9jd3X_rssc3`Pgr1arX!CT(} z%(BzISpZ4`??yVZni=3a22Ggr0Oi$jQBvBd?pAWWLBw=k{$^hKOA7&HC$3Bq1f7wO zkx<5{3I&h&A24mA0rL*%ULgX;HgrT$0uuXN0sv>^187dt6{0R<)E|z&QFx5-!Ifv8 zOR(`#=oBb4)W2hH6~;%D2xm1hR=B8YL%#>oFouxsL?^HGRtPm`}2m+NT&er;Uf zx>s$o*kHwV(ZQs#JPKpdI^eUu)2m>KL*4e> zJg3$LTh6ec!OUO*&}bsTgi_=C-vc!(E@1NjO<-o`zk16^KUNPspNB2@5JVB;1urC6 zV>G}y;)@Dv)(O3VgCf4eojY@6xUABn^rdIkE%2O(03QY=af(nwvZKQABHUZ)601@kiwDa4+6L-Px)~k?tm{q z_)eQH7ik&K{s~yt`M~+^7y7c(*X0L>(E&aFhwDq(af&Wp{7D`z;0KoVJ^T361RL5N zP$c*s0sz++3ZO6(^-Vx=aTE&u8@jO3BQ4a@pB2#AR+PT;vpfq;_ECQ8i2Xdls-r;Z zPa`80xhb)_p00bM$t}ZM9{PD6zOER9tK&|T2o?S5*6Z6p&ttNbi?@Hmg0K{_;O<09 zvO%|^tP=GL%Uu-Dq3_E^_XXwgU%R@C#HZ7S8JO?>rFAH}kA%i;ljgO*v<#T;qsTIR z2?!0FyMAeLDz}4MqbO|DgMZZvz=(%F48Vry!1U|=`8B_ber<7r@b2nMkn{d)i}dx* z>Tf$^CJe0o)b-DQZS7`v!0TRrTCM=`x);SW>s?8d#$hL!hbbRV72{t%CQa%sNU?8USjaMv+^mnAcC{)995>VTiqov#R zdo{sEgaNbDn2-hfHmUwq%T&w<#?4#i1XU^43w`4_-5JK31vhG5jaY*C==dR>%eJ&x z;zmhv+(QIwI^mVHLIXmz)I9`mwpk9u{GfHu(S*Q0QLRVitaFwhr1E^tb-=0KO9Al2 zo&vVh1ilGCE8_w+0ovYp(^p5mQ8u64UclH*G`0<+de*gDwsrS`>NIhn-8ym6VAX>o zrc><$9hMdl21fZoIXUseQKxA#=6y$d`>ySXxdhQjY_Q+&u#C9;V9|PV{pzYGneeI? zS~O!jE%_0KOkW7SJ!M;kKlxDJ74uB$cVl&$2&*gcV*q?xe!!+9Tq)J&0-6!R{C#lw zhX2-5S^Pt=FAGwe;@??DL!9oW8^C`h*QTk%zq4ex9}yXSc1Ek6bRF+C*|UEiOLT-I z3*Y)Jzvm@|^1}|#65u+v$?j_djEIfGRbenpBR0$4`G1xQ=^qkRg0$l;^^TrwuIAkU zzPP*KRog6kwUBYzn-j$maRCSa!E$O90-iF;^#p)ZUbCWfet@=O6tSDcugE9 zg_#>+W<|L2N8OTB`9ZG%s#)<+>1u?ID!)t743Ls*>CrzX*iHXQ)TTOe-s_>6R ze>1_h#vV-}%Nu4fQVLt#!fRRfxjz+f4%84`T}IKj9j#M`(B!F2g`hSwyy;q#e(ot5 z%(rrMsilh6>CXvvZ_J&scRHH+DY@m7lyRM~EC0;jSBpD7#6{*Fr4#eB!q)>grn`v- zIz7MeXDg-?J}5U=!5co0%PXB9cF6WCNn2V~i51W`Ts6oB{_phM} zsEyP-3b+u7w_=MwzX_{Gt&dqTNEJl<44|6xpFu@$!l_)q3;!0XirUCk5UJ7d`ns_n zM7Hg3p;lmA(3A+QL-`GWZHfmrR;m-zqiL9OTI*F^F8{lgE}{yk;JL<|Fm8px@fJ5A zwbp(v#4HY4D%W7lKP|OUp|vYMGzf-^7c!?aQ}N)-h_5$2{!hyb77j2g6ho}NZv({R z_S!$K+y(^<{hscvG1~<^`Ck^Dm>{?yn-i4BL4!UkXEA-z?m)VQp1|OWB2MJNP8~|Ps1yH}iHQc%0 zi<)z-h@|j+sRMB3y$6mH=S(5Pw!J6Vq5Oc$0%nOfx_H}JtX4)^fASt7v20MfPrwv0 z`kGS7q)MrMo^rBx!rcSLX_v~STzYbWqqKqPHq(s4fhjkG4fyUtr#y;f#qprjK&~3k zWUdBz^kffltIny=j{4qX1qJkNvG*3S5jH?#*vMh2dqc1()iT#hDM2Og6~ZJgsoIDA zeeWw`eeLdHxlCVpU%)=}#%81MLZi!lbzAi`5>o@#Gtv2Pz#iW(6q4}bulh<-08POpJI{c)o z-!)##>s=p&abOpvnW%a*=&)-Hq!ryM#hCtZR__Hm0e}v0@Ah%R8ZS*bx6@|mRIVJW zG?{ov>}w|=_~eZaclZGb zJuQ^De7}+-S8b18(L>{_p8$QYP_Rln+Y8+<_II}pZxnm_L46fE*A&t@j8~F_C_G@e z@snU;$3vwH5FNx%KWVI#IRcV22$b)e`M6e=tv|hpHN}hTM`r{eiuker?*QUOiTIeg zPF*F4t|CG_snDq@3dj)k75dDwC1(_|8{!Ye6<&6gJi8b>Uxc>-$()`b@qsM~qH$R3 z)6@nOo^w7`#2R~oJYHY>V6O+Xx5Y(Ep{aV|C&GevWE;lYNne83>1P_eIR6m3yTtdN zX|Rp_i1OdPG3WLXau&LK{Z!h@CYIi z0QCB}KwZT!&XMgX6h+}DVXIOt_7}qnqRQSSA7s7vi(ulHoDC@NQ zXLRn_MXb1xq1euC(nfxNwxNx5ACReyG=IiW&;8}Ts6<@6!=dc0w*dIi@Eugg)h>%t zD|}5U)_P76yC@t$CPMnZc#iaUL{X3Z!t*;mTg3XBuC8jW=(Jfr`ci1z53?40kFDCA zViq(XtvAPJzNn9?DrN?~X$w0(D`_FRWTROJFaMRrPxlcjH^rmqN{2f>bYz(|u6+P! z^$|=a!|ZpJ3auRHCJ+*|$NC6o0?(Wn$>=_>X+rwfaM-!R9LQ+3WX+ogHgPvWhtYJK zmL{bt%7p6??sOgmP~&Y-iq9a~QPItKyk}%zP`5EURU=%RX@-v>H3|h49X|NTT3DQW zAAmSh1-N{Xtk?UBHBk4bi$RoT%U9M*lhRj|;2{7w zgdW5+a}4Zk8yt0&G&yj&-`}r@jn%uGIUUFZkib+O4jmCyf~=*eCO~zMn#)0cJGJ zA6vkBoj8WyLZ>UtPIT_5D0LH~=iSV9G&rn&m=>)+J)nrC&1U#gNQU8?8a($zzwJnY z%@0+IfZ0KEe5vgJLOG z`B_Q_&f2DcJZ23P$MD90%|#tU?h2|FrBVGH?Rfy!uS_bXGlTFA&tc;8C-9Or=s$;cBI@_)8RlI$#t-e@C;lG*HAo1Rckg!w^P$%aNlphNb@8 zf!kDg`WK5>jY=Fu-JnbwpZrwdqY~r9z)=lJ%Uo|Pj=-lnOJj_BkeRQYx~o4OP<>LN zvMH+a;v!b=b3XLcd};;21Iig@02B*+`Upw_9z(h=U*rXs6tRnaowAN9tZ17U=0}GV zu`|jUnufm2z&Gg{o|uaVO=g63Wov167@n|QD;mq|Eh8`ONEMY z&rpFWUpHJ{?DE`Dv4*}bc1FquLK{lH|UXQexV( z9ekPCjHs?0!wA_OJ5`5wLfPEtS=T$DQ@?zj)Dk@g&HIMsj?=Swvl%|v_2Ok>tHTn_ ziEY^e_8*stee-vtC)!ei>QN$$85YsO7oTnz7BMjMnK8Yp{6Xk8Lfu|UG4<>NK3n06 zH9QrjrTpqJLCWSOD4%Mj93lh0q|Gp@3#lYmLx&`FpyyWYg`NwIio@z;hS^a*qqq$K zo#Qi)>_z&?71Is}!S-3FcehIO_Ze_~V-yWGw3Mz_XTDcI0dQtAuoJHrJl$gmLrq`%Jzt}bKQ zGCDE3h>f?q@RdW8yV}97?usJlCW2I#`w2WcAN~bR`uRND^uDIa&PI)q zixaOo6|gcD+3$>zWEYlmPT8Ec&2s5j;EcYG*8qmJha=A(D>vTX!5r-7u^~%=jrm-v zHP-XYSh-)d@0oQ%@ye@lSe&Gwx?8XlU_K;zKli~J4z-0b00Y# z3r#8+CX(861EYARWw>ITq$d{?y3O$Az6%4~TgD5@RorZ<6(VV76#O--1q_-X1|8jz z{6_qL@v$ynhU$_Df)nbX;%7U2c%tA-X6KAp995sFN|`U>h&73WzI&K3kWJ*1b$PcLU0CB`E^gPiP%MR`ZYyt z&WT5(*Z)?Fc=t69aTkW%MfCPHjWN!uj{T);^Y{q&3pWYM@bH zUn2@Us8`yW*nQCW3bS!WxYwvE1g#AcrTtVTMfS;@*bm@}ec*hCgYth967|~QZvfEM zaRI4lsqXZo7>YfUk6aJhmJhVb+qNaem!Qi4Ul-*cQj?*zxEeYQitc3I#zsco0Nuv> zy3zKz1{L8(0PbQw9yStvJKYKV8M=*)+YNE+-XV`ejW|i>rqNgRU%MH*^=JeeT1G=KKwiT-#ena98xp zCZnr*0N&Jo^&W(9F@Ue>9q_ikZd2T|fNDnfQQ5V6iD#>H4O5o<70{)-i*9^i?VzB= z8BUf4W22xrlR;(Kqt!)hde0D2El~_b&C=#+FJ@5+l<4jv3(sP;sc%-Q2XiXZ+W2VC z)@BX@vfH|kEGiEJ=@g5$;-!@)sf18{6a05^O^5;#ZwM-T;rjq+Qhq@8B{{vEh%fSg z!?X~+#snL+80u9OlhS@WEoAD*SxrUG_d;}#5jQ5lu}fF|HSO6y6D+xY(aGS`@v^L6ojA*d zfKmMA`Z{r9?9LQ*86g-X4|3dH=N+uig^rbO8zs-goA?y**ia{o;do$7&QI;CwcYwH zfE!|ibDi$It1pT0v-L%+wENws$`{(z;jF0_-UAb$T`%G0dJie}IAa*4* zJHu_JTwAw7gFbcxGo(c&Y!_xc{J`Ioyea6lR`n0nElwnPt`9v8U?;`}%jY#)fEp2q zr>RCJ2qw1P)FAA;ctA~h30H#c083j#0SjUyQNA}D?35cl;v@|0c**O=2;SQ$d2C8@ zAdIXl{cjb3zAi3kloI3tRij0ews1xf{*J~1Hghtgnsm{dxw_G_&ZuKe7fsCd<7_u0 zRH;U7yi*;U?Qf03_hy3i6%)}}?~P5uR5d%PK#eU!r!v!V>pJhFHHC+pJapVMbS~$5 ze{&HVRtORoY^vGA+-;I4K51^(NwYl6-QP9qbRHe2vnl{%cHTD2GiZ}lk7Rgl!&YLx zJ!T zKXg_oz&h{J-OjcO_l~&*0e7`U7oDQvy8!sC_`pqy@y){&JyC(}r{`+QTYl6o;ggXw zL-f0mU4D}$;d%;qIY6 zbbF7f6t_wd)qs{BZxw;$Yy6!SO%3fiI3lR&^LkAB1Quyv;QWG^iP|K48{H@G%h-qR z5V1NFxZQ9x!#j|axskPMIig_Y4nN%#RhP)j`|ve@vY(BT%LvM{K$*|2%+c`o#};Vj zlWJ~@2t$ix;aO6;A-iIMrfm}Ft3c4RjbzN4=Q?CQluEOB9O-kl{PuPG+E?!FY(0`&y*{_`!Q8<|a|<8q+OP*cB?fhET9jL} zB)6KkdZlIa%>!#2BWJ_-M^4yB`xjh>?9(kbc$w&E+w;#nOU{fsm5g2+Krv9t$gWtmm4~c-kn?YXl}*f+`QEtyN`4&UdK zSYb^3r=$k3^VlP8hnD7+Eb6*$x#J7Fb{xS21OPksEDZ?!g7(8}3Yx^Vz#`hW?doj34|!4Nfn}Y?7q@R) z!;b*+4e`}tda%uH#}=sp3aaeb^dwSc*V?^&Fy{bl9frS^;*^5LKL$U;*&7nT=50!F z$}k5G^3G#zM|Q#y=-j^pi7`1cQ&(3}Up*oc-|&eN$~kdU#b;Dw|Cz zY8V=zvqlFWCp4rQE1GIE^#d9q zKnN$x=QgCo$?iP9Hn(XjXUUr%>e#kRd>EOjPDw%d+R<(J|B3BIoTcK_4;}#-2xBkJ zR8*&``F-ge}G1pnZ2KDnhU`Hc5&Z3Bg4$D;PF2e=BgSPe9nfjXA zY0XHCN#6V^&OL*M1^@vv4_aK}W1Hbf@zV$kCVqzr0!~l@fN|mQxsC?{XW?U=tq*h@ zS=4rXNBg{1fZy4A5ZG1MJqwf5o0=MiTyVj(O#iyts>VzzDe4Cj+q$hcP>!ppudPXCo60jYQ}u=6 zA7-qj7z^sq!6>8x1Y8DH)FkQHV#$7z0BV;kc6c_Msj3z9SEg|aXqg;UU#+VS@b9MD zrn%56PzFF1QCiVxf)FFj zEj-BATH)wedI)$vpZPscfu75UDW}KhHWAeqMK^b?5CcoZ( zkmV>1|ITB)r9chq$A2GW{|*GgscrAQpbfPhUSter`L50f=CvPK(zS7C`<~s<0Qm~B zG<(7M!U;GAUUB^Su)i9J+0NthK*x!g1R!Z&dx)zONIK#afN2Nt+Lt_ryWPI-afFjB zDdym32DXM$dp1ARwRka%wd+2R3)`ff3H18ZaV|XgzT{S~m>IiIc)PdeB(y1vN-q>=@Oi@jVX~lv~qB7UFvFe{Scx zcH(@bmVi5HlA~kwB(6dR%X=J=W+q>V1CMb*cYg~g zV#$ie#)`Qm_0_34NdSXwxRwW;cJ(ssDCFdFAWjZ4&8=9$zXSaaIb-|Mr+_Qtp+;JQ zgWPd!Z?FWM4h03m1OvUrZOJDoh*<~~8{5EG*eos(7p-{+IsOL|q0wn2#|bjRw_9#6fI#`#!O?Xq$yQ5GLufHs)TOXx%jc%zB}>E zNcB-uKX~uuiH;*1JC589XExv}XuXP6L@$Iqf}k|+?|gh0KO5+r5Dbee)MX77RiOP2 zx)pZN0wyJ~*6Kp8Bj@(s(RSn!WCluVHoJ~A+!T~G9Y@#a7HtHp7EU6b+_po@xuk>T zS-H65@b1n9_qK0-1V+lGEb27eXS1TS1$Y?f76*`YPzMMgCvNuo?+}BIzw53g9G+0J zq@oN*W${C~We;LA#H^%N98vN@5fC6k(?JD#g8pOM(R*{PM>`ikj#g#cllQ@v@UcBG zzkTaw*krB^tZwDJ-)Y8mpF0-j7CiyHDz|W6=iVp1NVzHxXS29coh#Gc;BLHqi;}~e zn=*CqOI6U0Z*gfRn;o7`XJ)6Wlbw5?f`i0G%Gphg&8f4wqvp^yRN^><$qis^rq1Wx zDl4)n0K6)B_W7eTja8|$lU*%Kg&W5Uw!>W1EZyC?V}-q+ z8;Yc~+_y-Y--qu8OR;_ZKB0H5${o8KcCh`y9h^SJK?+uzj`MuL%U29~tv!T#YsUlg zgfX#5UopP;fF)=zV9H*LHs%)Yf^iDP{Qi#Z^8&`om6tWG*5V_m@RjfHE_oJtpuX08 zsguH<@W4-;;=)MmO^|M3lY{Qzk;}994j}6G<&U%--^-`CY#XOF!GHpHcVLIQCj;~n zZgy;zKXM7BZ3VPxUn=eK2>8HFL79K-K})4mQ3&lTavx4vBR|9Cw{YI_Q{B1<)Hh^2 z+!X^dZOH+&(iW`F?OZQ*YHRzdT^-8~w71MNtm_pEJMUkp8*0I+m)i7Z5&00!xCJB( z_Ik;Y`RUoawPV#j;MYL?Bd1r?PlNpuHaW+CS3(*BM>g7)et&Mln`e=8DN|4ZFX3(+ z(X}ZxrzzR~_){Hgw<(=aP#ArbqFtECu47^KoiI*5sFs9OG|}xM)>lcio$I-m4irtz z@K#Pr(CI~cbR$C>^4_hIVtiah!) zF}`9}?KCk1Fq#`ujZJgiQEB!o_ucRY7m@)xx-nBXDU(hGO0%)ZXzI`ua`*28GXnI_ zq>I(uoWY`>P@pu??dcVak;`0+Ye>mGDV4@UKfSg==p#|RX%>R$%QNCnC1e{*c zuFj>8qRa=$1j0baER+LSCp5k|uvw_`bMY@e2z?*zP}0YfIGH`l@xK00Zq1!s7f^V) z@goGU-UJA5NV23J43Y`WO=2=7_3)Rl!Fmhto}J1_7QQ4L378k0p>pK&6Xg>dQ&qKD zaV}sGWmOe?L63kcz9aw?G!fM3cg%~9ePNJ-S~nHtk8|9$LbbWjX(K2UY-;otb0v0% zFv-85LN@{VN$2!Et*ZOLTl?!#9@Kp~VFxWPgcgI`7Rrd?VTdIgq_PJVl4yXTvS3ij z@`+=UFfy)fqmd0g0xy)nWvPNUUvz8Y=>!N*+mw^$qXdkbu8SuQR7BRf!UwVEMomwbKSB0g8Gu?Qz0k~;aJZ7zz$38JfD2$Q(Q|C z#^N$AaPC@xR%2j#gH!N}O3|A-B%P_BrVF7&bNgePu&;2U zZb10OXVhDQ$V>C1?R2~88tt=h*PuxW2g?ueFdlLY+2F1Wfyv8(P7HF z3+0)!)>U^2=cxoDjk(rC!TjW)#%G#9>1s$-4{vH}tgUQrO7X-QbF4y3unwa1+rs#l z9qZh`17QYdF<2X5!kx!Afmw!;DfD$Frg5Llv142qSWXH(B4Ncvbk8aKt|-!_4jATLEy7#!)I%Ms zT5-2H;PJX^q2sY59Y?n53M?1N7&(B0bZm2Sc)GSCYn<_g2ilIT4}MQvWch9NYyh4u zB|HvNVH7D*lDkdf?#w5abK!&|1jA%xrmi8Knj^xRx>&pi1-zzop_y~!r#laqcsn3E6Q_#`6=-o9x)ZL zak>^SLstZzMA(wR;o0>N9L9OUFNh{MQ1ByC0{=b8VG#^moigEsfHvH|lRGh?at0it zq$0O|(A-MI01A=1@74uCql)HF4@7vdjVd$ZG?j=U(&Kzzy0&Zt+gN@1B>tJ4mTGFk z*t$x4pl?~vw|+vc;-A$%bE`*Xf~YV-Ik&D`59yqj#L%9gH>M3*IwSf*^#h{ff8S1U zi(N1%;IEwK7d{4u)xaXGB5!&W+DEDCQT5eatvq&jz-P-FE2?JJ)=x|FEXG3z(5WR| zA^Y}oZywm#YqxbC-w0HV-Z_MT!j?0>g^$VP7IHFRI)Tm|bl}2VFACDA)I0{M)Jc6R z!4xs4K^jaCAx;&)RqWb`8w&d60!N?`&8zElYf&8%WaY5aI(EL(d+rBdhKV_@Io(v- zkglx)#INSdIM9fn-cuL_-S6d1uua7fQ2 z{GckTs}&&N3)QKn3efXR*fRSK)XXJY_!e#18ciA~H-Qtup+gAzkhq`0-VPzT@yAK2 znp9(|zAD8Pp7z6Qf=s5wC`AUOsmov;sSdc4+%^$OOW3}PTP2zgW^n@j%pI%tso=Uc z6gpcgxwg1|pW6V*59Z02X30jm&`vWE$voP*>s3UmN~;?+Os(6vx;s{14C* z&QEw35f*_im=3FVIn^1c9O4Lc9m$B5P;&$2S*qN^Xpzl;SI&P>YScmSub)h-6smUw zJP~C`aP#Nz&Oq$89bOKilbc1$cIEC|hC>fL1bV_Iw&Z*2h-?tnyfLUf%Ycd9!=)F6 zh|~cUdBm_kV7qbGNz4qP3kO~}_@aw3(#n1AyYJUI0H0EgV$Xp-fX;;w6)8v)ZQs5a ztVnFu7icnhU1#WSY4wpuu8YIzpX(e<6JcjAdcDo&P`jK3<` zltJ>XO=VRsnY31sLz`m(W)G|74qR$!Dr>Lv(~^S6DAEV?77pUhd(Jr2r405rAmK-c1x!1;sr);cHpsWXDUGHo?c8X#=mc7*Fy zfK}6bNE=ZwJ{*}$%nb0AN@ooQnT*`JJ^G~(nCa(*4z#9Y?*=|b(UhBfJ6dqOuZmPC z`#cKsU2SAU$N>Ecxy6SA``vbIQc@JGAD{4{1E3r7=*j;1{9LqX^pXs0QQmOR8kH0v z=oQXv+u=>vl@Gg%=V%DCN^BkqN)b#$S;vFfLaM>x3al?4rxN+JFrtn}9%(zgf+wp{ z2re*BVfYoZD{8re365A0|FR$Hil=Ha)nP%9L}w2%`JP7 z-;NTl6YgmtP*#3%vPujl$?4?C0q(sXC=E50@Orws-)ebmQZ_jRPLdJc_Y2`Ik(Ub@6pZg)?-+M$rg1csT$W<6=xkZn5 zJjBgzJQ$o;9ofhe#CQN_87E?KBLsg$ILd*CXG!|yTRIm%K7Lje)o^$@6~CsD(Wi*qJtP?yQb>M9Y?yiCL> z%%T;EAnRn*sKnv#{NWL>Ip z8d&a?sj7b)H~a=~^&W!F;z6_fM3` z6Co1Lt>rU_JzqPW-fznvCzhEmJ2_+0mpV{L1R{I9Xz@ia@P)S~jwbYt>sl%@t-0HE z1HaU^aHWink=oN&S9F6xd`^!_8rk~7Z)_PuG9euOsiK*VHbAB4+aUu z)*=~S?Oi%|XgfambK@P*d$}TwD*1T#Hl$=U=8(^oW+!Nn4hu)dgUn`s!eXxSa$&%O zk)s8v2KZGYMxpW_7BZkE5DYSF7IsDaqTG9!j3sZmETlkgOZy``f`mSC?NnP26hgx7 zB<V%3cHRrSDf`*EW$uaM+K;%&6<7$UI1xNf8XRAvlU~51BQg%U_#uTU z$Zg}3aX%+9;{s91=!;M?75;;}a;t=?G)-m|(-$i!j>(b$ zKdhvonq z_(7;so%%!EYT(yB;Ey${g1dewO|Ux!WcRlnemDroq9NKBW;%;Y+D!fDl6W&WNa++e0NFy@POG}}TA7f_( zSsG{hnB@@kHhf%aMmgn zBEa0Dgw-OXJzc;^RUeiSk8 zb?gzzo)ZH%lT5u|+QMV!`{(m5JbE~{A@Jiw%>+wG1#N9C<~R1LzmD5_F76+0B^f zjxcy95!08#XX#2TgTg&tBAqRW!*j`k1b~rj&%IOOm%$4^Lc(O5D(aimv^nwtYVCLi ztKx`=O}ow|9U6)A-5z1MdGiX`4g2OH27n)KmA%*QM@gC-mujluH3g<*8fRw3CJPNu zv<|V|If`PQi4y@KkcB~zp}wi2wqCoFjV|QEpp=oy(_fM2khn11`?cPM(#(NaYvsC< zjfMJ(2Su*|9~{wlrMwsF-jf>$gxQ$MX0OQ9x(5=oFi^2TzKEGb0R<-gy`?xo3l$mY z;+46bD+95io4SgD9l2BL0FOL^nk8^at|{Hq%D2@h{KP}P!qFYlYM^K(aZSg6@w80YM`s!v32d+?^GOro+N<~DaRdSD6|5aHImS&m)S*~3-oh15R9DD z!~nHSOE$pYQbnO+V<-#x!3tEXOZ1DK76(MHhR*APEDPTCNP;I#VlaW!A{iSKKVtrY zCsj?%L0*>uHEQQJ3@Rse1te+Zu?9YF)OE23UCng+si^LX<6QK*BI9Ol;(TqiykMc+ zQ7H*r1SDX*;VV;MNznm$s_$8#%V4wtRWqFcy{nFbb+dFHOWjVomZT#Bb_UO&6=By_ zIVh9`%RQ>PPP-W)QcOKH7)A$ohYg%s?4GOUnm5h_8)Ro(SzI}~xn3L@Z7=kcHW~L^ zcn4kSl&jpn{1H9pg9AI5C=?no1+LZwiQjsrw~B=aIRM_2Z`}2e92A-LjHvN4n#k8g zMN*m(-C72u<5`*7>ZBb39;z!;I?V?4nv{zf(=TCUtw-b;9WAYJ(1VTOF=f4ST@iMa zETh0eK;l)SD2@k5ByWU685IvoSyQ9PD+>cts>~b3?=(AyyQa0$Apsoj=V_Uz9~gAa z1#X5Qmz1XgiMHYwQ(x~F;4~sr0Y_iGK?U5u2&{=x+d_n`)Z8$QA&|7t5xQKNnp>!d zo>W{prZLmp;F@wqcfSQEV$7zk$6=Q1BMzH@L8J6^Ww>rXSC3Y1xfN6o>m|ydy5wYJ|SZ%E=%ks4VKh z@7dgoXFl)%V|-LV7(Q)UV`^GOlh7507FU+kJEp3&u3|!p5Y^4b^Hh*R${bFPbSqHW zK}sV7T-ou>>9jcm*G<85fXt2dXgMWO&?Ju)goozft1a`Cfv6EA2Q{v^(o%pqpo0%6 zf6D5|3UH=effuua>r!6ZQFywFD<@X)VxLW^#vq^6G%x$;u*i+VD-Brs>6vajqioAH z0cm1#2dKTWI0h`PYjJSbDqgsfm4sGVsw4)nMZ`oI6DnuMqI^#9mg$&OS`Xg*q@=H} zdf~+!E~VIp4|jwO9u*;Xyui;ei!Pfa;-*@+S9AkL*mTv#NWtD~8*{w{S>8+NwUsQf zNAAuav*`jFkFf~kwdt)vjw-GkpPF4FPM?0ZDD;iR4zwFqekaV>SYS5D3NBHQ&NMk$ zl8bLRw3}r~y~Ii_l7M;eA_a&ik#hrPpUlwG!XUb3#;sZLDZnWWBn?!D$X5pq{r_X{ z-Gl48&U>-ha_deeb{s2l>Ki-0+l&*EvIOxV(~=^~21!tYNdgoBik2P6Is^`>6M+D8 z07&Asoq&=6f)9WYMG~S&nh)_6N+75gDFA$AI@3RLr+0d%(@v+;&Yh{rg9FTTdZ(SX z)7xohy1vKy*0%oaEk{$ymfbd#|5- z7RelVmP9rjyHNz1x_T<<4pltb#>Q_hW}chd6W&DEe50z2KnMC#yy6&`Nd7#$0*NQ% zAB8WFM@=Sk9I|bxlC~I?tR{^K9VL59k>Pna;u>)1Q*=-NB>gUl-7Q#E$rsCVRJL6=Fa@DEyM1Q^Tn>_ zB3+3MfW8GJA(1?aeuzh^zkoMxr;dyz;bXXD>7$4?6UwQ}uT77hflWl;j!t!LgWq@) z{23D`~f!RyU9gGTcuVH!4lSc>k=*DD_EBKLscL4_9^dcJ`$AM$6D` zRns!E_jy{z+Ueng#z>mE@H!-%z-Ju>)bCV3D!uqB76%+Cc=RCX%&0U%W8Yi7rKPLb zv#JAOLh*_5bKGS=+$Qk&KlD6o10W0JKt8zNzeeuj(#Y!q%MoaU3!zyrc3E@!EisA|`yXS1$&2XFB7fcmcx6r6 zZxJS-SZ@}63oy=zR@WXA0Cqr$zrI7vDlLDW?SZ{{6a_Hig@8HiSD`FQ5+)92Fm;Zo zm9)Ny*5s#Xy>#syIM4S_O6zikT!lzsL!J|$hy?5FB<6YHlJx`co~PpZNSgq)D< z*YZznmbKKt; z^SLd+7}AD$Gh4Ih05fDK32kPy2V3_k*&N}cg@|MyPg-m2C(9w3ZFPFj-x`~9uA?7dR|`_+V76sXTp{>?9|tR>38B9k^aq2E}!*-L|-DtG1=qESLuR> zz`^{amu706@!-jRwrRGga2hJs5&hQ2$ zzq6{or9u7ud+_(e4ePv%U&V`?pKfS+xb^AGOfDV8GV_2It{#xgwY&JG)xm`?0E8YgnjzIH`Eqt5zC=t}>H<~I5Z1orcN>1R zs$qkE#$0J^X>HN11fjg-%WKxvx3+py^5r!fo7X?=&HHb|CHu$ks6Sv9zO4S{R(}_p z_+fKnlYBX?yDVC47ESU6t>2h=LrO5ceteEF^%75QY~HlNeTw9(cws~R#@5Ex#%BF4 zUwpd$*~X@)(wQr7&WsNwzvX7@els@ueCks*Hkl9A(y&TT;#V45(x&EC;>^+a(&c9T z6~7D@{rkRTE_wI-ww{*Xfj=H@mcPHaw&6MbFcs#}lY$o_lkz+38rOPD-mce&*EOzh zY{d?!k1r75g(6YOSI84GbNSZn=wNRkGL_B;odySXX{Y~a;K4mtO78@)~;9IDV27hLS#r;s=Dww!G zfLkMr;eNOtOzLmr$K{#(-R3o|&u!2@e}%6!H?7lO@%MO$%^UTn4dh93e@wtMKijZz zUHt~Vg}++*C!IV5UmGz!%2HaHaY3=YH*K=PmgM8yk#p zFdM4n>BbG}-mk~6+r7WBd9(kKza)MrZupBWM!v0TwQv4={O7av>ozsWPJp$d#oy(= z($HbIfB$n?-z{s+DBSY?Vr#Sh^GmHDepO3f3$sw*k0|W1t5EwxM7jhWEY5aMz z2+V(x-#59GkYTAb2n+qT?7W=pYRL?kI%s5=xL923yJSw2O0D!|rnJQ#rJY5!ChaYM zblHl>5YhZ^J{JYlmn~^5z{f2;a${!!>f#jsMZTC$pEzxdAM=VY=68M%Dq1Z_U&?j# z=FPvC{&K;uH5V@4S+-^GOm`G|#0MiyujwkHO|yPyQ*L`6ecN^GcgkQ^b>zCcA2h#O z!$LatA5bl39}&OYJs-sCLO0SOFZgwk`%Yi*3CaeOVs=lm;RD6!j73Sgs%}|e@xZ?8 z<~l&|PfyhLfmfRk{M|=ZJc=K9h3Aa7O>0n+qgA%mJkZ*Z(uIz5WArL5P;vXrkwe

P_<1u%K$U5mw>RtTfBFwK%>R%#3o>gQ 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

buQv%S!{4FU;uX0T29mz{pVkwkRd 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

h!kw*fzJn~rzh8o4Z`a@)8H(h?ypH>ER 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�DmEFbDlUIeQ6AJGa12RwRu}#_7BdCz!E@;{i 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 z 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 z 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 literal 0 HcmV?d00001 diff --git a/Learun.Framework.Ultimate V7/packages/EntityFramework.zh-Hans.6.2.0/lib/net40/zh-Hans/EntityFramework.resources.dll b/Learun.Framework.Ultimate V7/packages/EntityFramework.zh-Hans.6.2.0/lib/net40/zh-Hans/EntityFramework.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..6e55fdb5644bb4f12d3051675db85b1cd1966447 GIT binary patch literal 327376 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

-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 z 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 +>TtZR&ikU4Pq^f?dW`4mU2eR) z^EbxwnMiL}D{*$$y|Ui%OnSN}Xur03>;Cs@hTrbktnGgqI?dYD{-oHl zi?d(bs<-a^aCDmEX3uqOCx7kxXefDH@Ry*q-=z&R&ZI1CF)E6dGeH>|U~GkeRSd3}fV<+oVxxh3_~S#{(5G8upA zNlOHqJfy4H%XB{ZKFo;f3CZO%{jrgcxsZROq_)&&^=z9fFD9%#-p|&^9`@1F@cATEb`AH-0wRY5vX7)E;|G!<%`5!%3spo3`+PAw` mf1UW?!QX!&w}NNLwRal-(oysIX5MmQ`q2q8JRDzuEm#2je~N + + + EntityFramework + + + +

表示置于属性 (property) 上的某个属性 (attribute),以指示该属性 (property) 映射到的数据库列具有索引。 + + + 为将按约定命名并且没有指定列顺序、群集或唯一性的索引初始化新的 实例。 + + + 为具有给定名称并且没有指定列顺序、群集或唯一性的索引初始化新的 实例。 + 索引名称。 + + + 为具有给定名称和列顺序,但没有指定群集或唯一性的索引初始化新的 实例。 + 索引名称。 + 一个将用于确定多列索引的列顺序的数字。 + + + 确定此属性是否指定与给定属性相同的名称和配置。 + 如果其他对象等于此对象,则为 true,否则为 false。 + 要比较的属性。 + + + 确定此属性是否指定与给定属性相同的名称和配置。 + 如果其他对象等于此对象,则为 true,否则为 false。 + 要比较的属性。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取或设置一个值以指示索引是否定义群集索引。 + 如果索引定义群集索引,则为 true,如果索引定义非群集索引,则为 false。 + + + 获取或设置 是否已设置为一个值。 + 如果 已设置为一个值,则为 true;否则为 false. + + + 获取或设置一个值以指示是否定义唯一索引。 + 为 true,则定义唯一索引;为 false,则定义非唯一索引。 + + + 获取或设置 是否已设置为一个值。 + 如果 已设置为一个值,则为 true;否则为 false。 + + + 获取或设置索引名称。 + 索引名称。 + + + 获取或设置确定多列索引的列排序的数字。如果没有指定列顺序,它将为 -1。 + 确定多列索引的列排序的数字,或者如果已指定列顺序,则为 -1。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 为每个对象实例获取或设置不同的 ID,以便类型描述符不会尝试将所有 IndexAttribute 实例组合成单个实例。 + 每个对象实例的不同 ID。 + + + IDatabaseInitializer 的实现,它仅在数据库不存在时重新创建数据库并选择重新设置数据库的种子。若要设置数据库的种子,请创建一个派生类并重写 Seed 方法。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + + 应重写以向上下文实际添加数据来设置种子的方法。默认实现不执行任何操作。 + 要设置种子的上下文。 + + + 对象获取此类的实例,并且可使用该实例管理支持 DbContext 或连接的实际数据库。这包括对数据库执行创建、删除和存在性检查操作。请注意通过使用此类的静态方法,您只需使用一个连接(即无需完整上下文)即可对数据库执行删除和存在性检查。 + + + 对基础存储连接开始一个事务 + 一个包装对基础存储的事务对象的访问的 对象 + + + 使用指定的隔离级别对基础存储连接开始一个事务 + 一个包装对基础存储的事务对象的访问的 对象 + 用于创建基础存储事务的数据库隔离级别 + + + 获取或设置所有上下文操作的超时值(以秒为单位)。默认值为 null,null 值指示将使用基础提供程序的默认值。 + 超时值(秒);使用提供程序默认值时为 null。 + + + 检查数据库是否与当前 Code First 模型兼容。 + 如果上下文中的模型哈希与数据库中的模型哈希匹配,则为 true;否则为 false。 + 如果设置为 true,则当未在数据库中找到任何模型元数据时,将引发异常。如果设置为 false,则当未找到元数据时,此方法将返回 true。 + + + 返回此上下文使用的连接。如果连接不存在,这可能会导致创建连接。 + + + 在数据库服务器上为支持上下文中定义的模型创建一个新的数据库。请注意,在运行数据库初始化策略之前调用此方法将禁止执行该策略。 + + + 在数据库服务器上为支持上下文中定义的模型创建一个新的数据库(但仅在该服务器上没有带相同名称的数据库时这样做)。 + 如果数据库不存在且已创建,则为 true;否则为 false。 + + + 获取基础存储连接在其中登记的事务。可能为 null。 + + + 在从数据库名称或连接字符串创建 时要使用的连接工厂。 + + + 如果数据库服务器上存在数据库,则删除该数据库;否则不执行任何操作。从初始值设定项之外调用此方法会将数据库标记为尚未初始化。这意味着如果在删除数据库后尝试再次使用它,则将再次运行所有初始值设定项集,通常将尝试再次自动创建数据库。 + 如果数据库以前存在且已被删除,则为 true;否则为 false。 + + + 如果数据库服务器上存在数据库,则删除该数据库;否则不执行任何操作。 + 如果数据库以前存在且已被删除,则为 true;否则为 false。 + 与数据库的现有连接。 + + + 如果数据库服务器上存在数据库,则删除该数据库;否则不执行任何操作。按照 类的文档中描述的方法,使用给定的数据库名称或连接字符串创建与数据库的连接。 + 如果数据库以前存在且已被删除,则为 true;否则为 false。 + 数据库名称或数据库的连接字符串。 + + + 确定指定的数据库是否等于当前数据库。 + 如果指定的数据库等于当前数据库,则为 true;否则为 false。 + 要与当前对象进行比较的数据库。 + + + 对数据库执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 执行命令后由数据库返回的结果。 + 对于此命令控制事务的创建。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 执行命令后由数据库返回的结果。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 对于此命令控制事务的创建。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 对于此命令控制事务的创建。 + 命令字符串。 + 等待任务完成期间要观察的 。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 命令字符串。 + 等待任务完成期间要观察的 。 + 要应用于命令字符串的参数。 + + + 检查服务器上是否存在数据库。 + 如果数据库存在,则为 true;否则为 false。 + + + 检查服务器上是否存在数据库。 + 如果数据库存在,则为 true;否则为 false。 + 与数据库的现有连接。 + + + 检查服务器上是否存在数据库。按照 类的文档中描述的方法,使用给定的数据库名称或连接字符串创建与数据库的连接。 + 如果数据库存在,则为 true;否则为 false。 + 数据库名称或数据库的连接字符串。 + + + 返回此数据库的哈希函数。 + 此数据库的哈希函数。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在此上下文上运行注册的 。如果将“force”设置为 true,则将运行初始值设定项,不管它之前是否已运行。如果在应用程序正在运行时删除了数据库并且需要重新初始化数据库时,则这样做会很有用。如果将“force”设置为 false,则仅在尚未为此应用程序域中的此上下文、模型和连接运行初始值设定项的情况下运行它。当必须确保在开始某些操作之前已创建数据库并设定其种子时(这样偷懒的做法会导致问题,例如,当操作是事务的一部分时),通常会使用此方法。 + 如果设置为 true,则将运行初始值设定项,即使它之前已运行过也是如此。 + + + 设置此属性以将 生成的 SQL 记录到给定委托。例如,若要记录到控制台,请将此属性设置为 + + + 设置要用于给定上下文类型的数据库初始值设定项。当给定的 类型首次用于访问数据库时调用数据库初始值设定项。Code First 上下文的默认策略是 的实例。 + 要使用的初始值设定项或 null,后者对于指定的上下文类型禁用初始化。 + 上下文的类型。 + + + 创建一个原始 SQL 查询,该查询将返回给定泛型类型的元素。类型可以是包含与从查询返回的列名匹配的属性的任何类型,也可以是简单的基元类型。该类型不必是实体类型。即使返回对象的类型是实体类型,上下文也决不会跟踪此查询的结果。使用 方法可返回上下文跟踪的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.SqlQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.SqlQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 查询所返回对象的类型。 + + + 创建一个原始 SQL 查询,该查询将返回给定类型的元素。类型可以是包含与从查询返回的列名匹配的属性的任何类型,也可以是简单的基元类型。该类型不必是实体类型。即使返回对象的类型是实体类型,上下文也决不会跟踪此查询的结果。使用 方法可返回上下文跟踪的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.SqlQuery(typeof(Post), "SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.SqlQuery(typeof(Post), "SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + 查询所返回对象的类型。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + + + 返回数据库的字符串表示形式。 + 数据库的字符串表示形式。 + + + 如果您希望实体框架在外部事务内执行命令,则允许用户传递在 对象外创建的数据库事务。或者,传递 null 以清除该事务的框架知识。 + 外部事务 + 如果事务已完成,则引发此异常 + 如果与 对象关联的连接已在 事务中登记,则引发此异常 + 如果与 对象关联的连接已参与事务,则引发此异常 + 如果与事务关联的连接不匹配实体框架的连接,则引发此异常 + + + 从该类派生的类可与从 派生的类放置在同一个程序集中,以便定义应用程序的实体框架配置。通过调用受保护的方法并且在派生类型的构造函数中设置该类的受保护的属性,对配置进行设置。还可以在应用程序的配置文件中注册要使用的类型。有关实体框架配置的更多信息,请参见 http://go.microsoft.com/fwlink/?LinkId=260883。 + + + 初始化 类的新实例。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。 + 要添加的解析程序。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。 + 要添加的解析程序。 + + + 在应用程序启动时注册 。请注意,还可使用 随时添加和删除侦听器。 + 要注册的侦听器。 + + + 获取要用于解析实体框架中的服务依赖项的 + 要用于解析实体框架中的服务依赖项的 + + + 指定此实例是否等于指定对象。 + 如果此实例等于特定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 尝试从给定程序集发现和加载 。此方法应由工具使用以确保将正确配置加载到应用程序域中。工具应在访问 属性之前使用此方法。如果工具知道要使用的 类型,则应使用 方法,因为这会增加找到正确配置的机会。 + 要用于配置发现的 。 + + + 尝试发现和加载与给定 类型关联的 。此方法应由工具使用以确保将正确配置加载到应用程序域中。工具应在访问 属性之前使用此方法。 + 要用于配置发现的 类型。 + + + 在 DbConfiguration 已构造后、但在锁定可供使用之前在 EF 初始化过程中发生。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 此应用程序域的 的单一实例。可以在使用任何实体框架功能之前在应用程序启动时对此进行设置,并且在之后应被视作只读的。 + + 的实例。 + + + 从派生自 的类的构造函数调用此方法以设置工厂,从而允许 创建不具有公共无参数构造函数的上下文的实例。 + 用于创建上下文实例的委托。 + 应对其使用工厂的上下文类型。 + + + 从派生自 的类的构造函数调用此方法以设置工厂,从而允许 创建不具有公共无参数构造函数的上下文的实例。 + 应对其使用工厂的上下文类型。 + 用于创建上下文实例的委托。 + + + 从自 派生的类的构造函数调用此方法,以便设置要用于给定上下文类型的数据库初始值。当给定的 类型首次用于访问数据库时调用数据库初始值设定项。Code First 上下文的默认策略是 的实例。 + 要使用的初始值设定项或 null,后者对于指定的上下文类型禁用初始化。 + 上下文的类型。 + + + 从派生自 的类的构造函数调用此方法,以为 的类型设置要与 一起使用的工厂。 + 一个将创建格式化程序实例的委托。 + + + 设置 ,它用于在没有提供或没有可由 发现的其他连接字符串或连接的情况下按照约定创建连接。请注意,只要安装了 EntityFramework NuGet 包,就可以在 app.config 或 web.config 文件中设置默认连接工厂。与所有配置文件设置一样,在配置文件中设置的默认连接工厂将优先于使用此方法进行的任何设置。因此,必须首先从配置文件中删除该设置,然后调用此方法才会起作用。从自 派生的类的构造函数调用此方法,以便更改要使用的默认连接工厂。 + 连接工厂。 + + + 从派生自 的类的构造函数调用此方法,以设置一个 委托,该委托将用于为任何 创建默认 。仅当 中没有显式设置工厂且没有使用 方法为正在使用的提供程序注册工厂时,才会使用此默认工厂。 + 一个工厂,用于为表示默认架构的给定 创建 实例。 + + + 从派生自 的类的构造函数调用此方法,以设置将在需要空间提供程序且无法找到特定于提供程序的空间提供程序时使用的 的全局实例。通常,特定于提供程序的空间提供程序是从 实现中获取的,通过解析 的服务以将提供程序固定名称作为键传递,可返回此实现。但是,这并不适用于 的独立实例,因为无法知道要使用的空间提供程序。因此,在创建 的独立实例时会始终使用全局空间提供程序。 + 空间提供程序。 + + + 从派生自 的类的构造函数调用此方法,以注册 + 一个返回事务处理程序的新实例的函数。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序的 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 返回执行策略的新实例的函数。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序及给定服务器名称的 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 返回执行策略的新实例的函数。 + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + 从派生自 的类的构造函数调用此方法,以设置一个 委托,该委托允许为不具有显式工厂集的任何 的给定提供程序创建自定义的 + 此生成器应该用于的 ADO.NET 提供程序的固定名称。 + 一个工厂,用于为表示默认架构的给定 创建 实例。 + + + 从自 派生的类的构造函数调用此方法,以便设置 的实现,该实现允许无需打开连接即可从连接获取提供程序清单标记。 + 清单标记解析程序。 + + + 从派生自 的类的构造函数调用此方法,以便为 的实现设置工厂,从而允许将 实例所表示的自定义注释序列化到 EDMX XML 以及从中进行序列化。 + 将由此序列化程序处理的自定义注释的名称。 + 一个将用于创建序列化程序实例的委托。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序的 + 此生成器应该用于的 ADO.NET 提供程序的固定名称。 + 每次调用时都返回 SQL 生成器的新实例的委托。 + + + 从派生自 的类的构造函数调用此方法,以便将 设置为模型缓存键工厂,该工厂允许使用键来缓存要更改的 后的模型。 + 键工厂。 + + + 从自 派生的类的构造函数调用此方法,以便设置复数形式服务。 + 要使用的复数形式服务。 + + + 从自 派生的类的构造函数调用此方法,以便注册 ADO.NET 提供程序。 + ADO.NET 提供程序固定名称,指示此提供程序将用于的 ADO.NET 连接的类型。 + 提供程序实例。 + + + 从自 派生的类的构造函数调用此方法,以便设置 的实现,该实现允许在默认实现不足的情况下从 获取 + 提供程序工厂服务。 + + + 从自 派生的类的构造函数调用此方法,以便注册实体框架提供程序。 + ADO.NET 提供程序固定名称,指示此提供程序将用于的 ADO.NET 连接的类型。 + 提供程序实例。 + + + 从派生自 的类的构造函数调用此方法,以设置要用于特定提供程序和提供程序清单标记的 的实现。 + + 指示将使用此空间提供程序的 ADO.NET 连接的类型。 + 空间提供程序。 + + + 从派生自 的类的构造函数调用此方法,以设置要用于具有任何清单标记的特定提供程序的 的实现。 + ADO.NET 提供程序固定名称,指示将使用此空间提供程序的 ADO.NET 连接的类型。 + 空间提供程序。 + + + 从自 派生的类的构造函数调用此方法,以注册给定提供程序的数据库表的存在检查器。 + ADO.NET 提供程序固定名称,指示此提供程序将用于的 ADO.NET 连接的类型。 + 要使用的表存在检查器。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序的 + ADO.NET 提供程序固定名称,指示将使用此事务处理程序的 ADO.NET 连接的类型。 + 一个返回事务处理程序的新实例的函数。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序及给定服务器名称的 + ADO.NET 提供程序固定名称,指示将使用此事务处理程序的 ADO.NET 连接的类型。 + 一个返回事务处理程序的新实例的函数。 + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 可将此属性置于 的子类上,以指示 的子类,后者表示应用程序的基于代码的配置与上下文类型处于不同的程序集中。 + + + 指示应对此应用程序的基于代码的配置使用由给定程序集限定名称表示的 的子类。 + 要使用的 类型。 + + + 指示应对此应用程序的基于代码的配置使用 的给定子类。 + 要使用的 类型。 + + + 获取应对此应用程序的基于代码的配置使用的 的子类。 + 应对此应用程序的基于代码的配置使用的 的子类。 + + + DbContext 实例表示工作单元和存储库模式的组合,可用来查询数据库并将更改组合在一起,这些更改稍后将作为一个单元写回存储区中。DbContext 在概念上与 ObjectContext 类似。 + + + 使用约定构造一个新的上下文实例以创建将连接到的数据库的名称。按照约定,该名称是派生上下文类的全名(命名空间与类名称的组合)。请参见有关这如何用于创建连接的类备注。 + + + 通过现有连接来连接到数据库以构造一个新的上下文实例。如果 是 false,则释放上下文时将不会释放该连接。 + 要用于新的上下文的现有连接。 + 如果设置为 true,则释放上下文时将释放该连接;否则调用方必须释放该连接。 + + + 通过使用现有连接来连接到数据库以构造一个新的上下文实例,并从给定模型初始化该实例。如果 是 false,则释放上下文时将不会释放该连接。 + 要用于新的上下文的现有连接。 + 支持此上下文的模型。 + 如果设置为 true,则释放上下文时将释放该连接;否则调用方必须释放该连接。 + + + 围绕现有 ObjectContext 构造一个新的上下文实例。 + 要使用新的上下文包装的现有 ObjectContext。 + 如果设置为 true,则释放 DbContext 时将释放 ObjectContext;否则调用方必须释放该连接。 + + + 使用约定构造一个新的上下文实例以创建将连接到的数据库的名称,并从给定模型初始化该名称。按照约定,该名称是派生上下文类的全名(命名空间与类名称的组合)。请参见有关这如何用于创建连接的类备注。 + 支持此上下文的模型。 + + + 可以将给定字符串用作将连接到的数据库的名称或连接字符串来构造一个新的上下文实例。请参见有关这如何用于创建连接的类备注。 + 数据库名称或连接字符串。 + + + 可以将给定字符串用作将连接到的数据库的名称或连接字符串来构造一个新的上下文实例,并从给定模型初始化该实例。请参见有关这如何用于创建连接的类备注。 + 数据库名称或连接字符串。 + 支持此上下文的模型。 + + + 提供对用于处理实体的更改跟踪的上下文功能的访问。 + 一个用于访问处理更改跟踪的功能的对象。 + + + 提供对上下文的配置选项的访问。 + 一个用于访问配置选项的对象。 + + + 为此上下文创建一个数据库实例,该上下文允许您对基础数据库执行创建/删除/存在性检查操作。 + + + 调用受保护的 Dispose 方法。 + + + 释放上下文。在以下情况下也将释放基础 :它由此上下文创建,或者在创建此上下文时将所有权传递给了此上下文。在以下情况下也将释放与数据库的连接( 对象):它由此上下文创建,或者在创建此上下文时将所有权传递给了此上下文。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 获取给定实体的 对象,以便提供对与该实体有关的信息的访问以及对实体执行操作的功能。 + 实体的项。 + 实体。 + + + 获取给定实体的 对象,以便提供对与该实体有关的信息的访问以及对实体执行操作的功能。 + 实体的项。 + 实体。 + 实体的类型。 + + + 确定指定的 DbContext 是否等于当前 DbContext。 + 如果指定的 DbContext 等于当前 DbContext,则为 true;否则为 false。 + 要与当前 DbContext 进行比较的 DbContext。 + + + 返回此 DBContext 的哈希函数。 + 此 DBContext 的哈希函数。 + + + 返回当前 DbContext 的类型。 + 当前 DbContext 的类型。 + + + 验证跟踪实体,并返回包含验证结果的 的集合。 + 无效实体的验证结果集合。集合决不为 null,且不得包含 null 值或有效实体的结果。 + + + 在完成对派生上下文的模型的初始化后,并在该模型已锁定并用于初始化上下文之前,将调用此方法。虽然此方法的默认实现不执行任何操作,但可在派生类中重写此方法,这样便能在锁定模型之前对其进行进一步的配置。 + 定义要创建的上下文的模型的生成器。 + + + 将在此上下文中所做的所有更改保存到基础数据库。 + 已写入基础数据库的对象的数目。 + 向数据库发送更新时出错。 + 数据库命令未影响预期行数。这通常指示存在乐观并发冲突;即,某行自对它查询以来已在数据库中发生更改。 + 保存已中止,因为实体属性值的验证失败。 + 尝试使用不支持的行为,如对相同上下文实例并发执行多个异步命令。 + 上下文或连接已释放。 + 向数据库发送命令之前或之后,尝试在上下文中处理实体时发生错误。 + + + 将在此上下文中所做的所有更改异步保存到基础数据库。 + 表示异步保存操作的任务。任务结果包含已写入基础数据库的对象数目。 + 向数据库发送更新时出错。 + 数据库命令未影响预期行数。这通常指示存在乐观并发冲突;即,某行自对它查询以来已在数据库中发生更改。 + 保存已中止,因为实体属性值的验证失败。 + 尝试使用不支持的行为,如对相同上下文实例并发执行多个异步命令。 + 上下文或连接已释放。 + 向数据库发送命令之前或之后,尝试在上下文中处理实体时发生错误。 + + + 将在此上下文中所做的所有更改异步保存到基础数据库。 + 表示异步保存操作的任务。任务结果包含已写入基础数据库的对象数目。 + 等待任务完成期间要观察的 。 + 在已释放上下文时引发。 + + + 针对对上下文和基础存储中给定类型的实体的访问返回一个 实例。 + 给定实体类型的集。 + 应为其返回一个集的类型实体。 + + + 针对对上下文和基础存储中给定类型的实体的访问返回一个非泛型 实例。 + 给定实体类型的集。 + 应为其返回一个集的实体的类型。 + + + 扩展点允许用户重写仅验证添加的实体和修改的实体的默认行为。 + 如果继续验证,则为 true;否则为 false。 + 应验证的 DbEntityEntry 实例。 + + + 返回基础化此上下文的实体框架 ObjectContext。 + + + 返回 DbContext 的字符串表示形式。 + DbContext 的字符串表示形式。 + + + 扩展点允许用户自定义实体的验证或筛选出验证结果。由 调用。 + 实体验证结果。重写时可能为 null。 + 要验证的 DbEntityEntry 实例。 + 包含用于自定义验证的附加信息的用户定义的字典。它将被传递给 并将作为 公开。此参数是可选的,并且可为 null。 + + + 包装对基础存储连接的事务对象的访问并确保实体框架在该事务的上下文内对数据库执行命令。通过对 对象调用 BeginTransaction() 来检索此类的实例。 + + + 提交基础存储事务。 + + + 清除此事务对象并确保实体框架不再使用该事务。 + + + 释放此事务对象占用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 确定此实例是否与指定对象相同。 + 如果此实例与指定对象相同,则为 true;否则为 false。 + 要与此实例进行比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取与此实例关联的基础类型。 + 与此实例关联的基础类型。 + + + 回滚基础存储事务。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 获取基础化此上下文事务的数据库(存储)事务。 + 基础化此上下文事务的数据库(存储)事务。 + + + 指示给定的方法是 EDM 函数的代理。 + + + 初始化 类的新实例。 + 映射到的函数的命名空间。 + 映射到的函数的名称。 + + + 映射到的函数的名称。 + 映射到的函数的名称。 + + + 映射到的函数的命名空间。 + 映射到的函数的命名空间。 + + + 提供在 LINQ to Entities 查询中使用的公开 EDM 规范函数的公共语言运行时 (CLR) 方法。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为非 Unicode 字符串处理的运算符。 + 作为非 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为 Unicode 字符串处理的运算符。 + 作为 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTime EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTimeOffset EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + 新日期的时区偏移量部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateTime EDM 函数以创建新的 对象。 + 新的时间跨度。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个时间跨度间隔的小时数。 + 第一个时间跨度和第二个时间跨度间隔的小时数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个时间跨度间隔的微秒数。 + 第一个时间跨度和第二个时间跨度间隔的微秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个时间跨度间隔的毫秒数。 + 第一个时间跨度和第二个时间跨度间隔的毫秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个时间跨度间隔的分钟数。 + 第一个时间跨度和第二个时间跨度间隔的分钟数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个时间跨度间隔的纳秒数。 + 第一个时间跨度和第二个时间跨度间隔的纳秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个时间跨度间隔的秒数。 + 第一个时间跨度和第二个时间跨度间隔的秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 GetTotalOffsetMinutes EDM 函数以返回指定的日期/时间偏移 UTC 的分钟数。该值通常介于 +780 到 -780 之间(+ 或 - 13 小时)。 + 输入对 UTC 的偏移量。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Left 函数以返回字符串中最左侧指定数目的字符。 + 包含从输入字符串左侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Reverse 函数以返回其字符顺序反转的指定字符串。 + 以反转字符顺序显示的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Right 函数以返回字符串中最右侧指定数目的字符。 + 包含从输入字符串右侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + DbModelBuilder 用于将 CLR 类映射到数据库架构。此以代码为中心的方法称作“Code First”,可用于生成实体数据模型 (EDM) 模型。 + + + 初始化 类的新实例。发现初始模型的过程将使用您计算机上安装的实体框架的最新版本中所包含的一组约定。 + + + 初始化 类的新实例,它将使用一组特定的约定来发现初始模型。 + 要使用的约定的版本。 + + + 使用此生成器基于执行的配置来创建一个 。连接用于确定要使用的数据库提供程序,因为这会影响生成的模型的数据库层。 + 已生成的模型。 + 用来确定提供程序信息的连接。 + + + 使用此生成器基于执行的配置来创建一个 。必须指定提供程序信息,因为这会影响生成的模型的数据库层。对于 SqlClient,固定名称为“System.Data.SqlClient”,清单标记为版本年份(例如,“2005”、“2008”等)。 + 已生成的模型。 + 模型将用于的数据库提供程序。 + + + 将一个类型注册为模型中的复杂类型,并返回一个可用来配置复杂类型的对象。可对同一类型多次调用此方法以执行多行配置。 + 指定的复杂类型的配置对象。 + 要注册或配置的类型。 + + + 获取此 DbModelBuilder 的 。注册器允许使用此生成器来注册派生的实体和复杂类型配置。 + + + 提供对处理约定的此 DbModelBuilder 的设置的访问。 + + + 将实体类型注册为模型的一部分,并返回一个可用来配置实体的对象。可对同一实体多次调用此方法以执行多行配置。 + 指定的实体类型的配置对象。 + 要注册或配置的类型。 + + + 指定 是否等于指定的对象。 + 如果 等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置默认数据库架构名称。此默认数据库架构名称用于不具有显式配置的架构名称的数据库对象。 + 同一个 DbModelBuilder 实例,以便多个调用可以链接在一起。 + 默认数据库架构的名称。 + + + 从模型中排除类型。这用于在初始模型发现期间从根据约定添加的模型中移除类型。 + 同一个 DbModelBuilder 实例,以便多个调用可以链接在一起。 + 要排除的类型。 + + + 从模型中排除指定的类型。这用于在初始模型发现期间从根据约定添加的模型中移除类型。 + 同一个 DbModelBuilder 实例,以便多个调用可以链接在一起。 + 要从模型中排除的类型。 + + + 开始配置适用于模型中所有属性的轻型约定。 + 约定的配置对象。 + + + 开始配置适用于模型中指定类型的所有基元属性的轻型约定。 + 约定的配置对象。 + 此约定将适用于的属性类型。 + + + 将实体类型注册为模型的一部分。 + 要注册的类型。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 开始配置应用于模型中从泛型参数指定的类型派生或实现泛型参数指定的类型的所有实体和复杂类型的轻型约定。此方法不会将类型注册为模型的一部分。 + 约定的配置对象。 + 此约定将适用于的实体类型或复杂类型。 + + + 开始配置应用于模型中所有实体和复杂类型的轻型约定。 + 约定的配置对象。 + + + 可直接将此枚举中的值提供给 类,也可以在应用到派生自 的类的 中使用该值。使用的值可定义在从代码生成模型(也称为“Code First”)时应使用的 DbContext 和 DbModelBuilder 约定的版本。 + + + 指示应使用 约定的最新版本。 + + + 指示应使用实体框架 4.1 版附带的 约定的版本。 + + + 指示应使用实体框架 5.0 版附带的 约定的版本。 + + + 指示面向 .Net Framework 4 时,应使用实体框架 5.0 版附带的 约定的版本。 + + + 指示应使用实体框架 6.0 版附带的 约定的版本。 + + + 此特性可应用于派生自 的类,以便在从代码生成模型(也称为“Code First”)时设置应使用的 DbContext 和 约定的版本。有关 DbModelBuilder 版本的详细信息,请参见 枚举。 + + + 初始化 类的新实例。 + 要使用的 约定版本。 + + + 获取 约定版本。 + + 约定版本。 + + + 非泛型版本的 ,可在生成时不知道实体类型时使用。 + + + 从派生类型的构造函数中进行调用时,创建一个 实例,它将用作 DbSet 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking、AsStreaming 和 Include,它们的默认实现是空操作。 + + + 将给定实体以“已添加”状态添加到集的基础上下文中,这样一来,当调用 SaveChanges 时,会将该实体插入到数据库中。 + 实体。 + 要添加的实体。 + + + 将给定实体集合添加到基础化集的上下文中(每个实体都置于“已添加”状态),这样当调用 SaveChanges 时,会将它插入到数据库中。 + 实体集合。 + 要添加的实体集合。 + + + 将给定实体附加到集的基础上下文中。也就是说,将实体以“未更改”的状态放置到上下文中,就好像从数据库读取了该实体一样。 + 实体。 + 要附加的实体。 + + + 返回等效泛型 对象。 + 泛型集对象。 + 已为其创建集的实体的类型。 + + + 为此集的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + + + 为此集的类型或派生自此集类型的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + 要创建的实体的类型。 + + + 返回指定的集是否等于当前集。 + 如果指定的对象等于当前集,则为 true;否则为 false。 + 要与当前对象进行比较的集。 + + + 查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 找到的实体或为 null。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 等待任务完成期间要观察的 。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 返回指定集的哈希函数。 + 集的哈希函数。 + + + 获取当前集的类型。 + 当前集的类型。 + + + 获取 ,它表示此集中的所有“已添加”、“未更改”和“已修改”实体的本地视图。在上下文中添加或删除实体时,该本地视图将保持同步。同样,在本地视图中添加或删除实体也会自动在上下文中添加或删除实体。 + 本地视图。 + + + 将给定实体标记为“已删除”,这样一来,当调用 SaveChanges 时,将从数据库中删除该实体。请注意,在调用此方法之前,该实体必须以另一种状态存在于该上下文中。 + 实体。 + 要删除的实体。 + + + 从基础化集的上下文中删除给定实体集合(每个实体都置于“已删除”状态),这样当调用 SaveChanges 时,会从数据库中删除它。 + 实体集合。 + 要删除的实体集合。 + + + 创建一个原始 SQL 查询,该查询将返回此集中的实体。默认情况下,上下文会跟踪返回的实体;可通过对返回的 调用 AsNoTracking 来更改此设置。请注意返回实体的类型始终是此集的类型,而不会是派生的类型。如果查询的一个或多个表可能包含其他实体类型的数据,则必须编写适当的 SQL 查询以确保只返回适当类型的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Set(typeof(Blog)).SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Set(typeof(Blog)).SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + + + DbSet 表示上下文中给定类型的所有实体的集合或可从数据库中查询的给定类型的所有实体的集合。可以使用 DbContext.Set 方法从 DbContext 中创建 DbSet 对象。 + 定义集的类型。 + + + 从派生类型的构造函数中进行调用时,创建一个 实例,它将用作 DbSet 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking、AsStreaming 和 Include,它们的默认实现是空操作。 + + + 将给定实体以“已添加”状态添加到集的基础上下文中,这样一来,当调用 SaveChanges 时,会将该实体插入到数据库中。 + 要添加的实体。 + + + 将给定实体集合添加到基础化集的上下文中(每个实体都置于“已添加”状态),这样当调用 SaveChanges 时,会将它插入到数据库中。 + 实体集合。 + 要添加的实体集合。 + + + 将给定实体附加到集的基础上下文中。也就是说,将实体以“未更改”的状态放置到上下文中,就好像从数据库读取了该实体一样。 + 要附加的实体。 + + + 为此集的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + + + 为此集的类型或派生自此集类型的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 要创建的实体的类型。 + + + 确定指定的 DbSet 是否等于当前 DbSet。 + 如果指定的 DbSet 等于当前 DbSet,则为 true;否则为 false。 + 要与当前 DbSet 进行比较的对象。 + + + 查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 找到的实体或为 null。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 要查找的实体的主键值。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 等待任务完成期间要观察的 。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 返回此 DbSet 的哈希函数。 + 此 DbSet 的哈希函数。 + + + 返回当前 DbSet 的类型。 + 当前 DbSet 的类型。 + + + 获取 ,它表示此集中的所有“已添加”、“未更改”和“已修改”实体的本地视图。在上下文中添加或删除实体时,该本地视图将保持同步。同样,在本地视图中添加或删除实体也会自动在上下文中添加或删除实体。 + 本地视图。 + + + 返回等效非泛型 对象。 + 非泛型集对象。 + 泛型集对象。 + + + 将给定实体标记为“已删除”,这样一来,当调用 SaveChanges 时,将从数据库中删除该实体。请注意,在调用此方法之前,该实体必须以另一种状态存在于该上下文中。 + 要删除的实体。 + + + 从基础化集的上下文中删除给定实体集合(每个实体都置于“已删除”状态),这样当调用 SaveChanges 时,会从数据库中删除它。 + 实体集合。 + 要删除的实体集合。 + + + 创建一个原始 SQL 查询,该查询将返回此集中的实体。默认情况下,上下文会跟踪返回的实体;可通过对返回的 调用 AsNoTracking 来更改此设置。请注意返回实体的类型始终是此集的类型,而不会是派生的类型。如果查询的一个或多个表可能包含其他实体类型的数据,则必须编写适当的 SQL 查询以确保只返回适当类型的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Blogs.SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Blogs.SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + + + IDatabaseInitializer 的实现,它总是会在首次在应用程序域中使用上下文时,重新创建数据库并可以选择重新设置数据库的种子。若要设置数据库的种子,请创建一个派生类并重写 Seed 方法。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + 为 null。 + + + 应重写以向上下文实际添加数据来设置种子的方法。默认实现不执行任何操作。 + 要设置种子的上下文。 + + + IDatabaseInitializer 的实现,它仅在模型自数据库创建后发生更改时删除数据库、重新创建数据库并选择重新设置数据库的种子。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + 为 null。 + + + 应重写以向上下文实际添加数据来设置种子的方法。默认实现不执行任何操作。 + 要设置种子的上下文。 + + + 描述实体的状态。 + + + 实体将由上下文跟踪,但是在数据库中还不存在。 + + + 实体将由上下文跟踪并存在于数据库中,但是已被标记为在下次调用 SaveChanges 时从数据库中删除。 + + + 该实体未由上下文跟踪。刚使用新运算符或某个 Create 方法创建实体后,实体就处于此状态。 + + + 实体将由上下文跟踪并存在于数据库中,已修改其中的一些或所有属性值。 + + + 实体将由上下文跟踪并存在于数据库中,其属性值与数据库中的值相同。 + + + 此接口的实现用于在首次使用 派生类的实例时初始化基础数据库。此初始化可以有条件地创建数据库和/或使用数据设置其种子。使用 类的静态 InitializationStrategy 属性设置所用的策略。提供以下实现: + 此类型参数是逆变。即可以使用指定的类型或派生程度更低的类型。 有关协变和逆变的详细信息,请参阅。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + + + 表示上下文中给定类型的所有实体的集合或可从数据库中查询的给定类型的所有实体的集合。 是 IDbSet 的具体实现。 + 定义集的类型。 + + + 将给定实体以“已添加”状态添加到集的基础上下文中,这样一来,当调用 SaveChanges 时,会将该实体插入到数据库中。 + 实体。 + 要添加的实体。 + + + 将给定实体附加到集的基础上下文中。也就是说,将实体以“未更改”的状态放置到上下文中,就好像从数据库读取了该实体一样。 + 实体。 + 要附加的实体。 + + + 为此集的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + + + 为此集的类型或派生自此集类型的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + 要创建的实体的类型。 + + + 查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 找到的实体或为 null。 + 要查找的实体的主键值。 + + + 获取 ,它表示此集中的所有“已添加”、“未更改”和“已修改”实体的本地视图。在上下文中添加或删除实体时,该本地视图将保持同步。同样,在本地视图中添加或删除实体也会自动在上下文中添加或删除实体。 + 本地视图。 + + + 将给定实体标记为“已删除”,这样一来,当调用 SaveChanges 时,将从数据库中删除该实体。请注意,在调用此方法之前,该实体必须以另一种状态存在于该上下文中。 + 实体。 + 要删除的实体。 + + + 将使用 Code First 迁移将数据库更新到最新版本的 的实现。 + 上下文的类型。 + 初始化过程中要使用的迁移配置的类型。 + + + 初始化 MigrateDatabaseToLatestVersion 类的新实例,该类将使用通过默认构造函数或已注册工厂(如果适用)构造的上下文中的连接信息。 + + + 初始化 MigrateDatabaseToLatestVersion 类的新实例,该类指定是否使用触发初始化的上下文中的连接信息来执行迁移。 + 如果设置为 true,则初始值设定项使用触发初始化的上下文中的连接信息来运行。否则,从使用默认构造函数或已注册工厂(如果适用)构造的上下文中获取连接信息。 + + + 初始化 MigrateDatabaseToLatestVersion 类的新实例,该类指定是否使用触发初始化的上下文中的连接信息来执行迁移。也允许指定在初始化期间要使用的迁移配置。 + 如果设置为 true,则初始值设定项使用触发初始化的上下文中的连接信息来运行。否则,从使用默认构造函数或已注册工厂(如果适用)构造的上下文中获取连接信息。 + 在初始化期间要使用的迁移配置。 + + + 初始化将使用配置文件中的特定连接字符串连接到数据库以执行迁移的 MigrateDatabaseToLatestVersion 类的新实例。 + 用于迁移的连接字符串的名称。 + + + 初始化给定上下文的数据库。 + 上下文。 + + + 不执行任何操作的 的实现。使用此初始值设定项将禁用给定上下文类型的数据库初始化。将此类的实例传递给 将等效于传递 null。正在使用 解析初始值设定项时,此类的实例必须用于禁用初始化。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + + + 的扩展方法。 + + + 返回 实现,该实现与给定的 保持同步。 + 绑定列表。 + 绑定列表将与其保持同步的集合。 + 元素类型。 + + + 提供用于 Entity Framework LINQ 查询的有用扩展方法。 + + + 异步确定序列的所有元素是否满足条件。 + 表示异步操作的任务。如果源序列的每个元素都通过了指定谓词中的测试,则任务结果包含 true;否则为 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 是 null。 + + 不实现 + + + 异步确定序列的所有元素是否满足条件。 + 表示异步操作的任务。如果源序列的每个元素都通过了指定谓词中的测试,则任务结果包含 true;否则为 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 是 null。 + + 不实现 + + + 异步确定序列是否包含任何元素。 + 表示异步操作的任务。如果源序列包含任何元素,则任务结果包含 true;否则包含 false。 + 要检查为空的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步确定序列的任何元素是否满足条件。 + 表示异步操作的任务。如果源序列的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步确定序列的任何元素是否满足条件。 + 表示异步操作的任务。如果源序列的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步确定序列是否包含任何元素。 + 表示异步操作的任务。如果源序列包含任何元素,则任务结果包含 true;否则包含 false。 + 要检查为空的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。此方法通过调用基础查询对象的 AsNoTracking 方法来运行。如果基础查询对象没有 AsNoTracking 方法,则调用此方法将不会有任何影响。 + 应用 NoTracking 的新查询,如果不支持 NoTracking,则为源查询。 + 源查询。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。此方法通过调用基础查询对象的 AsNoTracking 方法来运行。如果基础查询对象没有 AsNoTracking 方法,则调用此方法将不会有任何影响。 + 应用 NoTracking 的新查询,如果不支持 NoTracking,则为源查询。 + 源查询。 + 元素类型。 + + + 返回将流式处理结果而非缓存它的新查询。此方法通过调用基础查询对象的 AsStreaming 方法来运行。如果基础查询对象没有 AsStreaming 方法,则调用此方法将不会有任何影响。 + 应用 AsStreaming 的新查询,如果不支持 AsStreaming,则为源查询。 + 要应用 AsStreaming 的 。 + + + 返回将流式处理结果而非缓存它的新查询。此方法通过调用基础查询对象的 AsStreaming 方法来运行。如果基础查询对象没有 AsStreaming 方法,则调用此方法将不会有任何影响。 + 应用 AsStreaming 的新查询,如果不支持 AsStreaming,则为源查询。 + 要应用 AsStreaming 的 。 + + 的元素的类型。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 通过使用默认的相等比较器异步确定序列是否包含指定的元素。 + 表示异步操作的任务。如果输入序列包含指定的值,则任务结果包含 true;否则包含 false。 + 一个返回其单个元素的 。 + 要在序列中定位的对象。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 通过使用默认的相等比较器异步确定序列是否包含指定的元素。 + 表示异步操作的任务。如果输入序列包含指定的值,则任务结果包含 true;否则包含 false。 + 一个返回其单个元素的 。 + 要在序列中定位的对象。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列中的元素数。 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回满足条件的序列中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回满足条件的序列中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回序列中的元素数。 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回序列的第一个元素。 + 表示异步操作的任务。任务结果包含 中的第一个元素。 + 一个返回其第一个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 源序列为空。 + + + 异步返回满足指定条件的序列的第一个元素。 + 表示异步操作的任务。任务结果包含通过 中测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + + + 异步返回满足指定条件的序列的第一个元素。 + 表示异步操作的任务。任务结果包含通过 中测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + + + 异步返回序列的第一个元素。 + 表示异步操作的任务。任务结果包含 中的第一个元素。 + 一个返回其第一个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 源序列为空。 + + + 异步返回序列的第一个元素;如果序列不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果 为空,则任务结果包含 default ();否则,包含 中的第一个元素。 + 一个返回其第一个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回满足指定条件的序列的第一个元素;如果未找到此类元素,则返回默认值。 + 表示异步操作的任务。如果 为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回满足指定条件的序列的第一个元素;如果未找到此类元素,则返回默认值。 + 表示异步操作的任务。如果 为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + + + 异步返回序列的第一个元素;如果序列不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果 为空,则任务结果包含 default ();否则,包含 中的第一个元素。 + 一个返回其第一个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + 等待任务完成期间要观察的 。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + + 的元素的类型。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在其上调用 Include 的源 。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 IQueryable&lt;T&gt;,它具有定义的查询路径。 + 要在其上调用 Include 的源 IQueryable。 + 表示要包括的路径的 lambda 表达式。 + 要查询的实体类型。 + 要包含的导航属性的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在其上调用 Include 的源 。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + 要查询的实体类型。 + + + 枚举服务器查询等查询,例如 的查询,以及查询结果将加载到关联的 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 + 源查询。 + + + 异步枚举服务器查询等查询,例如 的查询,以及查询结果将加载到关联的 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 + 表示异步操作的任务。 + 源查询。 + + + 异步枚举服务器查询等查询,例如 的查询,以及查询结果将加载到关联的 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 + 表示异步操作的任务。 + 源查询。 + 等待任务完成期间要观察的 。 + + + 异步返回表示序列中的总元素数的 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回表示满足条件的序列中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回表示满足条件的序列中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回表示序列中的总元素数的 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回序列的最大值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最大结果值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最大结果值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的最大值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的最小值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最小结果值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最小结果值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的最小值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的唯一元素;如果序列中并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素。 + 一个返回其单个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 源序列为空。 + + + 异步返回满足指定条件的序列的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素。 + 一个 ,用于返回单个元素。 + 用于测试元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回满足指定条件的序列的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素。 + 一个返回其单个元素的 。 + 用于测试元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回序列的唯一元素;如果序列中并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素。 + 一个返回其单个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + 源序列为空。 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + + + 异步返回满足指定条件的序列的唯一元素;如果此类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素;如果没有找到此类元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + 用于测试元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回满足指定条件的序列的唯一元素;如果此类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素;如果没有找到此类元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + 用于测试元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + + + 跳过序列中指定数量的元素,然后返回剩余的元素。 + 一个序列,其中包含输入序列中指定索引后出现的元素。 + 要从中返回元素的序列。 + 计算结果为要跳过的元素数的表达式。 + source 的元素的类型。 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 从序列开始处起,返回指定数量的连续元素。 + 一个序列,其中包含输入序列开头的指定数量的元素。 + 要从中返回元素的序列。 + 计算结果为要返回的元素数的表达式。 + source 的元素的类型。 + + + 通过异步枚举从 创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + 要从中创建数组的 。 + + 的元素的类型。 + + + 通过异步枚举从 创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + 要从中创建数组的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + + 创建 ,方法是:根据指定的键选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + + 的元素的类型。 + + 返回的键类型。 + + + 创建 ,方法是:根据指定的键选择器函数和比较器来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + + 的元素的类型。 + + 返回的键类型。 + + + 创建 ,方法是:根据指定的键选择器函数和比较器来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + + 创建 ,方法是:根据指定的键选择器函数和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数、比较器和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数、比较器和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个将从中创建 。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个将从中创建 。 + 等待任务完成期间要观察的 。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个将从中创建 。 + + 的元素的类型。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个要从中创建列表的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + + 在执行数据库命令或查询期间控制事务创建行为。 + + + 如果存在现有事务,则使用它,否则在没有事务的情况下执行命令或查询。 + + + 如果不存在任何事务,则使用新事务进行操作。 + + + 表示在尝试准备或执行 CommandCompilation 时出现的失败。此异常旨在提供一个常见异常,人们可以捕获该异常以便在使用 EntityCommand 执行语句时承载提供程序异常(SqlException、OracleException)。 + + + 初始化 的新实例,没有消息,没有内部异常。可能不应该存在,但它有益于 FxCop。 + + + 使用消息(但没有内部异常)初始化 的新实例。可能不应该存在,但它有益于 FxCop。 + 消息。 + + + 使用消息和内部异常实例初始化 的新实例。 + 消息。 + 内部异常。 + + + 表示在尝试准备或执行 CommandExecution 时出现的失败。此异常旨在提供一个常见异常,人们可以捕获该异常以便在使用 EntityCommand 执行语句时承载提供程序异常(SqlException、OracleException)。 + + + 初始化 EntityCommandExecutionException 的新实例,没有消息,没有内部异常。可能不应该存在,但它有益于 FxCop。 + + + 使用消息(但没有内部异常)初始化 EntityCommandExecutionException 的新实例。可能不应该存在,但它有益于 FxCop。 + 描述错误的消息。 + + + 使用消息和内部异常实例初始化 EntityCommandExecutionException 的新实例。 + 描述错误的消息。 + 导致此当前异常的内部异常。 + + + 提供实体客户端使用的异常。 + + + 使用默认值初始化 类的新实例。 + + + 初始化 类的新实例。 + 序列化信息。 + 流上下文。 + + + 初始化接受预先格式化消息的 类的新实例。 + 本地化的错误消息。 + + + 初始化接受预先格式化消息和内部异常的 类的新实例。 + 本地化的错误消息。 + 内部异常。 + + + 表示实体的标识符。 + + + 初始化 类的新实例。 + + + 使用给定的键值初始化 类的新实例。 + 实体的 EntitySet 名称,由 EntityContainer 名称限定。 + 标识实体的键-值对。 + + + 使用给定的键值初始化 类的新实例。 + 实体的 EntitySet 名称,由 EntityContainer 名称限定。 + 标识实体的键-值对。 + + + 使用给定单个键名称和值初始化 类的新实例。 + 实体的 EntitySet 名称,由 EntityContainer 名称限定。 + 标识实体的键名称。 + 标识实体的键值。 + + + 获取或设置 EntityContainer 名称,该名称标识包含实体的实体容器。 + EntityContainer 名称,该名称标识包含实体的实体容器。 + + + 获取或设置标识实体的键值。 + 标识实体的键值。 + + + 获取单一 ,其标识因失败的 TREAT 操作产生的实体。 + 标识因失败的 TREAT 操作产生的实体的单一 + + + 获取或设置 EntitySet 名称,该名称标识包含实体的实体集。 + EntitySet 名称,用于标识包含实体的实体集。 + + + 指示此实例是否与给定的键相等的值。 + 如果此实例与给定的键相等,则为 true;否则为 false。 + 要与此实例进行比较的键。 + + + 指示此实例是否与给定的键相等的值。 + 如果此实例与给定的键相等,则为 true;否则为 false。 + 要与此实例进行比较的键。 + + + 从给定的元数据工作区按实体容器名称和实体集名称获取此实体键的实体集。 + 给定工作区中此实体键的实体集。 + 要在其中查找实体集的工作区。 + 在工作区中找不到该实体集。 + + + 返回基于值的哈希代码,以便允许在哈希表中使用 EntityKey。 + 的哈希值。 + + + 获取一个值,该值指示此键是否为临时键。 + 如果此键是临时键,则为 true;否则为 false。 + + + 获取用来标识只读实体的单一 + 用来标识只读实体的单一 + + + 在反序列化此 后调用。 + 序列化上下文。 + + + 在反序列化此 后调用。 + 序列化上下文。 + + + 指示两个键是否相等的值。 + 如果两个键相等,则为 true;否则为 false。 + 要比较的键。 + 要比较的键。 + + + 指示两个键是否不相等的值。 + 如果两个键不相等,则为 true;否则为 false。 + 要比较的键。 + 要比较的键。 + + + 与作为 EntityKey 的一部分的键有关的信息。键成员包含键名称和值。 + + + 创建空的 EntityKeyMember。此构造函数由序列化过程使用。 + + + 使用指定的键名称和值创建一个新的 EntityKeyMember。 + 键名称 + 键值 + + + 键名称 + + + 返回 EntityKeyMember 的字符串表示形式 + EntityKeyMember 的字符串表示形式 + + + 键值 + + + 表示一个 eSQL Query 编译异常;可能导致引发此异常的异常条件的类别主要是:1) 语法错误:在查询文本分析期间和在某一给定查询与 eSQL 形式语法不符时引发;2) 语义错误:在 eSQL 语言的语义规则未满足时(例如元数据或架构信息等不准确或未提供、类型验证错误、作用域规则冲突、未定义变量的用户等)引发。有关更多信息,请参见 eSQL 语言规范。 + + + 使用一般性错误消息初始化 的新实例。 + + + 使用给定的消息初始化 的新实例。 + 错误消息。 + + + 使用给定的消息和 innerException 实例初始化 的新实例。 + 错误消息。 + 内部异常。 + + + 获取发生错误的大致列号。 + 发生错误的大致列号。 + + + 获取发生错误的大致上下文(如果有)。 + 发生错误的大致上下文(如果有)。 + + + 获取解释未接受查询或空 String.Empty 的原因的错误说明 + 解释未接受查询或空 String.Empty 的原因的错误说明。 + + + 获取发生错误的大致行号 + 发生错误的大致行号。 + + + 提供支持结构化类型和丰富元数据信息的 DataRecord 接口。 + + + 获取描述记录内容的 DataRecordInfo 属性。 + 描述记录内容的 DataRecordInfo 属性。 + + + 以 DbDataReader 对象的形式返回嵌套的读取器。 + 作为 DbDataReader 对象的嵌套读取器。 + 列的序号。 + + + 使用指定的索引获取一个 DbDataRecord 对象。 + DbDataRecord 对象。 + 行的索引。 + + + 引发来指示命令目录树无效。 + + + 使用默认消息构造一个新的 InvalidCommandTreeException。 + + + 使用指定的消息构造一个新的 InvalidCommandTreeException。 + 异常消息 + + + 使用指定的消息和内部异常构造一个新的 InvalidCommandTreeException。 + 异常消息。 + 导致此 InvalidCommandTreeException 的异常。 + + + 映射异常类。请注意,此类具有状态 - 因此,即使您更改其内部,也可能是重大更改 + + + 具有默认消息的构造函数 + + + 默认构造函数 + 本地化的错误消息 + + + 构造函数 + 本地化的错误消息 + 内部异常 + + + 元数据异常类 + + + 具有默认消息的构造函数 + + + 默认构造函数 + 本地化的错误消息 + + + 构造函数 + 本地化的错误消息 + 内部异常 + + + 在存储区中找不到请求的对象时将引发此异常。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + + + 初始化 类的新实例以及初始化获取消息和内部异常的构造函数的新实例。 + 本地化的错误消息。 + 内部异常。 + + + 在更新操作与并发约束冲突时将会引发此异常。 + + + 使用默认值初始化 类的新实例。 + + + 使用指定的消息初始化 类的新实例。 + 与异常关联的消息。 + + + 使用指定的消息和内部异常初始化 类的新实例。 + 与异常关联的消息。 + 导致异常的错误。 + + + 使用指定的消息和内部异常初始化 类的新实例。 + 消息。 + 导致异常的错误。 + 状态项。 + + + 表示属性约束异常类。请注意,此类具有状态 - 因此,即使您更改其内部,也可能是重大更改。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + + + 使用提供的消息和内部异常初始化 类的新实例 + 本地化的错误消息。 + 内部异常。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + 属性名称。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + 属性名称。 + 内部异常。 + + + 获取违反了约束的属性的名称。 + 违反了约束的属性的名称。 + + + 在存储提供程序表现出的行为与实体客户端提供程序不兼容时引发的异常。 + + + 初始化 类的新实例。 + + + 使用指定的错误消息初始化 类的新实例。 + 描述此异常的错误消息。 + + + 使用指定的错误消息和内部异常初始化 类的新实例。 + 描述此异常的错误消息。 + 造成当前异常的内部异常。 + + + 在将更改保存到存储区期间引发的异常无法更新。 + + + 使用默认值初始化 类的新实例。 + + + 使用序列化数据初始化 类的新实例。 + 包含有关异常的序列化信息的对象。 + 有关源或目标的上下文信息。 + + + 初始化带有错误消息的 类的新实例。 + 描述此异常的错误消息。 + + + 初始化带有错误消息和内部异常的 类的新实例。 + 描述此异常的错误消息。 + 造成当前异常的内部异常。 + + + 初始化带有错误消息、内部异常和状态条目的 类的新实例。 + 描述此异常的错误消息。 + 造成当前异常的内部异常。 + 错误中暗含的状态条目。 + + + 获取错误中暗含的状态条目。 + 错误中暗含的状态条目。 + + + 提供一个简单方法以便访问类型信息和列信息的 DataRecordInfo 类。 + + + 使用数据字段的可枚举集合初始化一个特定类型的新 对象。 + 此对象表示的类型的元数据,由 提供。 + 表示列信息的 对象的可枚举集合。 + + + 获取此 对象的 + + 对象。 + + + 获取此对象的类型信息作为 对象。 + 一个 值。 + + + 表示准备好的命令定义,可以缓存和重复使用以便避免重新准备命令。 + + + 初始化 类的新实例。 + + + 使用提供的 初始化 类的新实例。 + 提供的 。 + 用于克隆 的方法 + + + 创建和返回可执行的 DbCommand 对象。 + 用于数据库的命令。 + + + 所有 CLR 类型的元数据接口 + + + 初始化 类的新实例。 + + + 排序规则方面的名称 + + + 要传递给 GetInformation 以便获取 ConceptualSchemaDefinition 的值 + + + 要传递给 GetInformation 以便获取 ConceptualSchemaDefinitionVersion3 的值 + + + DefaultValue 方面的名称 + + + 提供程序编写人员应重写此方法,以返回带有已转义的通配符和转义符的参数。仅当 SupportsEscapingLikeArgument 返回 true 时才使用此方法。 + 带有已转义的通配符和转义符的参数。 + 要转义的参数。 + + + FixedLength 方面的名称 + + + 在派生类中重写时,此方法返回特定于提供程序的信息。 + 表示基础数据存储目录的映射的 XmlReader 对象。 + 要返回的信息的类型。 + + + 在派生类中重写时,此方法将指定的存储类型以及该类型的一组方面映射到 EDM 类型。 + 描述 EDM 类型以及该类型的一组方面的 实例。 + TypeUsage 实例,它描述要映射到 EDM 类型的存储类型以及该类型的一组方面。 + + + 返回特定类型的 FacetDescription 对象。 + 用于指定的 EDM 类型的 FacetDescription 对象。 + 要返回方面描述的 EDM 类型。 + + + 获取特定于提供程序的信息。 + 特定于提供程序的信息。 + 要返回的信息的类型。 + + + 在派生类中重写时,返回提供程序清单支持的 EDM 函数的集合。 + EDM 函数的集合。 + + + 在派生类中重写时,此方法将指定的 EDM 类型以及该类型的一组方面映射到存储类型。 + TypeUsage 实例,它描述存储类型以及该类型的一组方面。 + TypeUsage 实例,它描述要映射到存储类型的 EDM 类型以及该类型的一组方面。 + + + 在派生类中重写时,返回数据源支持的一组基元类型。 + 数据源支持的一组类型。 + + + IsStrict 方面的名称 + + + MaxLength 方面的名称 + + + 获取此提供程序清单使用的命名空间。 + 此提供程序清单使用的命名空间。 + + + Nullable 方面的名称 + + + Precision 方面的名称 + + + Scale 方面的名称 + + + SRID 方面的名称 + + + 要传递给 GetInformation 以便获取 StoreSchemaDefinition 的值 + + + 要传递给 GetInformation 以便获取 StoreSchemaDefinitionVersion3 的值 + + + 要传递给 GetInformation 以便获取 StoreSchemaMapping 的值 + + + 要传递给 GetInformation 以便获取 StoreSchemaMappingVersion3 的值 + + + 指示提供程序是否支持在 Like 表达式中使用转义字符串作为模式。 + 如果此提供程序支持在 Like 表达式中使用转义字符串作为模式,则返回 true;否则返回 false。 + 如果提供程序支持转义,则为要用作转义符的字符。 + + + 返回一个布尔值,该布尔值指定提供程序是否可处理包含 DbInExpression 的实例的表达式目录树。默认实现返回 false 以保证向后兼容性。派生类可以重写此方法。 + false + + + Unicode 方面的名称 + + + 用于生成命令定义的工厂;使用该对象的类型作为提供程序工厂上 IServiceProvider.GetService 方法的参数; + + + 初始化 类的新实例。 + + + 添加一个 ,它将用于在使用应用程序配置文件中的某一项或通过 中基于代码的注册将某派生类型注册为 EF 提供程序时解析附加的默认提供程序服务。 + 要添加的解析程序。 + + + 请参见问题 2390 - 在 DbCommand 上克隆 DesignTimeVisible 属性可能导致死锁。因此此处允许重写子类。 + + 的克隆版本 + 要克隆的 对象 + + + 基于原型命令创建默认的 DbCommandDefinition 对象。此方法旨在使提供程序编写者从命令生成默认命令定义。注意:这将克隆原型 + 可执行的命令定义对象 + 原型命令 + + + 若给定命令目录树,创建命令定义对象。 + 可执行的命令定义对象 + 语句的命令目录树 + + + 从指定的清单和命令目录树创建命令定义。 + 已创建的命令定义。 + 清单。 + 命令目录树。 + + + 创建一个由连接指示的数据库并且基于 storeItemCollection 的内容创建架构对象(表、主键、外键)。 + 与需要创建并且用 storeItemCollection 参数指示的存储对象进行填充的不存在的数据库的连接。 + 创建数据库所需的任何命令的执行超时。 + 创建脚本所应基于的所有存储项的集合。 + + + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本,生成可创建架构对象(表、主键、外键)的数据定义语言 (DDL) 脚本。 + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本创建架构对象的 DDL 脚本。 + 标识目标版本的提供程序清单标记。 + 数据库的结构。 + + + 为指定的提供程序清单和命令目录树创建命令定义对象。 + 可执行的命令定义对象。 + 以前从存储提供程序检索的提供程序清单。 + 语句的命令目录树。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 创建一个由连接指示的数据库并且基于 StoreItemCollection 的内容创建架构对象(表、主键、外键)。 + 与需要创建并且用 storeItemCollection 参数指示的存储对象进行填充的不存在的数据库的连接。 + 创建数据库所需的任何命令的执行超时。 + 创建脚本所应基于的所有存储项的集合。 + + + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本,生成可创建架构对象(表、主键、外键)的数据定义语言 (DDL) 脚本。 + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本创建架构对象的 DDL 脚本。 + 标识目标版本的提供程序清单标记。 + 数据库的结构。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 删除指定的数据库。 + 到某个需要删除的现有数据库的连接。 + 删除数据库所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于删除数据库。 + + + 获取空间服务。 + 空间服务。 + 与提供程序清单关联的标记信息。 + + + 删除指定的数据库。 + 到某个需要删除的现有数据库的连接。 + 删除数据库所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于删除数据库。 + + + 如果给定路径以 |DataDirectory| 开头则展开该路径中的 |DataDirectory| 并且返回扩展的路径;如果给定路径未以 |DataDirectory| 开头,则返回给定字符串。 + 展开的路径。 + 要展开的路径。 + + + 返回表示 CSDL 说明的 XML 读取器 + 表示 CSDL 说明的 XmlReader + CSDL 说明的名称。 + + + 在派生类中重写时,返回派生自 DbProviderManifest 的类的实例。 + 表示提供程序清单的 DbProviderManifest 对象。 + 与提供程序清单关联的标记信息。 + + + 返回给定连接的提供程序清单标记。 + 指定连接的提供程序清单标记。 + 从中查找清单标记的连接。 + + + 获取空间数据读取器。 + 空间数据读取器。 + 空间数据来自于的读取器。 + 与提供程序清单关联的标记信息。 + + + 获取将用于执行使用指定连接的方法的 + + 的一个新实例。 + 数据库连接 + + + 获取将用于执行使用指定连接的方法的 。此重载应由派生类用于与包装提供程序兼容。 + + 的一个新实例。 + 数据库连接 + 提供程序固定名 + + + 基于指定的 DbConnection 检索 DbProviderFactory。 + 检索到的 DbProviderFactory。 + 要使用的连接。 + + + 使用指定的版本信息返回提供程序清单。 + 使用指定版本信息的提供程序清单。 + 与提供程序清单关联的标记信息。 + + + 返回给定连接的提供程序清单标记。 + 提供程序清单标记。 + 到提供程序的连接。 + + + 返回给定连接的提供程序。 + 基于指定连接实例化的 + 到提供程序的连接。 + + + 在使用应用程序配置文件中的某一项或通过 中基于代码的注册将某一派生类型注册为 EF 提供程序时调用,用于解析附加的默认提供程序服务。此类中此方法的实现使用通过 AddDependencyResolver 方法添加的解析程序来解析依赖项。 + 给定类型的实例;如果无法解析服务,则为 null。 + 要解析的服务的类型。 + 为解析服务提供附加信息的可选键。 + + + 在使用应用程序配置文件中的某一项或通过 中基于代码的注册将某一派生类型注册为 EF 提供程序时调用,用于解析附加的默认提供程序服务。此类中此方法的实现使用通过 AddDependencyResolver 方法添加的解析程序来解析依赖项。 + 满足给定类型和键的所有注册的服务;如果没有,则为空枚举。 + 要解析的服务的类型。 + 为解析服务提供附加信息的可选键。 + + + 获取空间数据读取器。 + 空间数据读取器。 + 空间数据来自于的读取器。 + 与提供程序清单关联的清单标记。 + + + 获取空间服务。 + 空间服务。 + 有关将对其使用空间服务的数据库的信息。 + + + 获取空间服务。 + 空间服务。 + 与提供程序清单关联的标记信息。 + + + 注册一个处理程序,以处理来自数据库提供程序的非错误消息。 + 用来接收信息的连接。 + 用于处理消息的处理程序。 + + + 为给定的 设置参数值和适当的方面。 + 参数。 + 参数的类型。 + 参数的值。 + + + 为给定的 设置参数值和适当的方面。 + 参数。 + 参数的类型。 + 参数的值。 + + + 接受 XmlReader 的 ProviderManifest 的专用化 + + + 初始化 类的新实例。 + 一个 对象,该对象提供对提供程序清单文件中的 XML 数据的访问。 + + + 返回指定的 Entity Data Model (EDM) 类型的方面说明列表。 + 一个 类型的集合,其中包含指定的 EDM 类型的方面说明列表。 + 要为其检索方面说明的 。 + + + 返回提供程序支持的函数的列表。 + 一个 类型的集合,其中包含提供程序支持的函数的列表。 + + + 返回存储提供程序支持的基元类型的列表。 + 一个 类型的集合,其中包含存储提供程序支持的基元类型的列表。 + + + 获取此提供程序清单支持的命名空间名称。 + 此提供程序清单支持的命名空间名称。 + + + 获取指定的存储类型名称的最佳映射等效 Entity Data Model (EDM) 类型。 + 指定的存储类型名称的最佳映射等效 EDM 类型。 + + + 获取指定的存储类型名称的最佳映射等效存储基元类型。 + 指定的存储类型名称的最佳映射等效存储基元类型。 + + + 提供一个简单方法以便访问类型信息和列信息的 EntityRecordInfo 类。 + + + 使用数据字段的可枚举集合、特定键和实体集信息初始化特定实体类型的 类的新实例。 + 实体的 ,由该 对象描述的 表示。 + 表示列信息的 对象的可枚举集合。 + 实体的键。 + 该实体所属的实体集。 + + + 获取实体的 + 实体的键。 + + + 在列序号和 MemberMetadata 之间提供关联的 FieldMetadata 类。 + + + 使用指定的序号值和字段类型初始化新的 对象。 + 用于指定元数据位置的整数。 + 字段类型。 + + + 获取此 对象的字段类型。 + 对象的字段类型。 + + + 获取此 对象的序号。 + 表示序号值的整数。 + + + 表示实现要派生自的 IExpressionVisitor 接口的类型的抽象基类型。 + + + 初始化 类的新实例。 + + + 实现命令目录树的访问者模式。 + 命令目录树。 + + + 实现删除命令目录树的访问者模式。 + 删除命令目录树。 + + + 实现函数命令目录树的访问者模式。 + 函数命令目录树。 + + + 实现插入命令目录树的访问者模式。 + 插入命令目录树。 + + + 实现修改子句的访问者模式。 + 修改子句。 + + + 实现修改子句的集合的访问者模式。 + 修改子句。 + + + 实现查询命令目录树的访问者模式。 + 查询命令目录树。 + + + 实现 set 子句的访问者模式。 + set 子句。 + + + 实现更新命令目录树的访问者模式。 + 更新命令目录树。 + + + 实现要派生自的 IExpressionVisitor 接口的类型的抽象基类型。 + + + 初始化 类的新实例。 + + + + 的访问者模式方法。 + 正在访问的 DbAndExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbApplyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbArithmeticExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbCaseExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbCastExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbComparisonExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbConstantExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbCrossJoinExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DeRefExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbDistinctExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbElementExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbEntityRefExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbExceptExpression。 + + 为 null + + + 遇到其他无法识别的类型的 时进行调用。 + 表达式 + + 为 null + 如果调用此方法,则始终引发,因为它指示 属于不支持的类型 + + + + 的访问者模式方法。 + 正在访问的 DbFilterExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbFunctionExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbInExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIntersectExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIsEmptyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIsNullExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIsOfExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbJoinExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbLambdaExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbLikeExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbLimitExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbNewInstanceExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbNotExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbNullExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbOfTypeExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbOrExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbParameterReferenceExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbProjectExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbPropertyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbQuantifierExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbRefExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbRefKeyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbRelationshipNavigationExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbScanExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbSkipExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbSortExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbTreatExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbUnionAllExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbVariableReferenceExpression。 + + 为 null + + + 用于访问指定的 的方便的方法。 + 要访问的聚合。 + + 为 null + + + 用于访问列表中的每个 (如果列表是非 null 的)的方便的方法。 + 要访问的聚合的列表。 + + 为 null + + + 用于访问指定的 的方便的方法。 + 要访问的 DbBinaryExpression。 + + 为 null + + + 用于访问指定的 的方便的方法(如果非 null)。 + 要访问的表达式。 + + 为 null + + + 用于在访问了 DbExpressionBinding 后进行后处理的方便的方法。 + 以前访问的 DbExpressionBinding。 + + + 用于访问指定的 的方便的方法。 + 要访问的 DbExpressionBinding。 + + 为 null + + + 用于访问给定列表中的每个 (如果列表是非 null 的)的方便的方法。 + 要访问的表达式的列表。 + + 为 null + + + 指示 的分组键已访问并且现在将要访问聚合的方便的方法。 + DbGroupByExpression 的 DbGroupExpressionBinding + + + 用于在访问了 DbGroupExpressionBinding 后进行后处理的方便的方法。 + 以前访问的 DbGroupExpressionBinding。 + + + 用于访问指定的 的方便的方法。 + 要访问的 DbGroupExpressionBinding。 + + 为 null + + + 用于在访问了 DbLambda 后进行后处理的方便的方法。 + 以前访问的 DbLambda。 + + + 指示现在将要访问的 Lambda 的正文的方便方法。 + 将要访问的 DbLambda。 + + 为 null + + + 用于访问指定的 的方便的方法。 + 要访问的 DbUnaryExpression。 + + 为 null + + + 聚合是伪表达式。聚合在外观上与表达式相似,但其可以出现的位置有严格的限制 - 只能出现在 group-by 表达式的聚合子句中。 + + + 获取定义要聚合的参数的表达式列表。 + + + 获取此聚合的结果类型。 + + + 表示两个 Boolean 参数之间的逻辑与运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示一个应用运算,它是对指定输入集中的每个元素的指定 functor 调用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取 ,它指定对输入集中的每个元素调用的 functor。 + + + 获取用于指定输入集的 + + + 表示应用于两个数值参数的算术运算(加法、减法、乘法、除法、取模或求反)。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于定义当前参数的表达式列表。 + + + 接受两个表达式操作数的表达式的抽象基类型。 + + + 获取定义左边参数的 + + + 获取定义右边参数的 + + + 表示 Case When...Then...Else 逻辑运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取此 DbCaseExpression 的 Else 子句。 + + + 获取此 DbCaseExpression 的 Then 子句。 + + + 获取此 DbCaseExpression 的 When 子句。 + + + 表示应用于多态参数的强制转换运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示删除、查询、插入和更新 DbCommandTree 类型的抽象基类型。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取此命令目录树所使用的元数据必须驻留于其中的数据空间。 + 此命令目录树所使用的元数据必须驻留于其中的数据空间。 + + + 获取此命令目录树使用的元数据工作区。 + 此命令目录树使用的元数据工作区。 + + + 获取在此命令目录树中可以引用的每个参数的名称和相应类型。 + 在此命令目录树中可以引用的每个参数的名称和相应类型。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 获取命令目录树是否使用数据库的 null 语义。 + 命令目录树使用数据库的 null 语义。 + + + 描述不同的数据库命令。 + + + 指定删除命令。 + + + 指定函数命令。 + + + 指定插入命令。 + + + 指定查询命令。 + + + 指定更新命令。 + + + 表示应用于两个参数的比较运算(相等、大于、大于或等于、小于、小于或等于、不相等)。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示常量值。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取常量值。 + + + 表示给定集合参数之间的无条件联接运算 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个 列表,该列表提供要联接的输入集。 + + + 表示用一个规范命令目录树代表的单行删除操作。 + + + 初始化 类的新实例。 + 元数据工作区。 + 数据空间。 + 数据库表达式绑定。 + 数据库表达式。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取一个 ,它指定用于确定目标集合中应删除的成员的谓词。 + 用于确定目标集合中应删除的成员的谓词。 + + + 使用指定的 Ref 表示给定实体的检索。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示从指定的集操作数中删除重复的元素。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示指定的集操作数到单一实例的转换。如果该集为空,则转换将返回 null;否则,该转换将返回集中的元素之一。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示作为 Ref 对指定实体的引用的检索。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示左右操作数之间的集减法运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示所有表达式的基类型。 + + + 实现不生成结果值的表达式访问者的访问者模式接口。 + DbExpressionVisitor 的实例。 + + 为 null。 + + + 实现生成特定类型的结果值的表达式访问者的访问者模式接口方法。 + + 的一个实例。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + + 生成的结果的类型。 + + 为 null。 + + + 确定指定的对象是否等于当前 DbExpression 实例。 + 如果指定的对象等于当前 DbExpression 实例,则为 true;否则为 false。 + 要与当前 进行比较的对象。 + + + 获取表达式的类型,类型指示该表达式的运算。 + 表达式的类型,指示该表达式的运算。 + + + 创建表示指定的二进制值的 ,可以为 null。 + 表示指定的二进制值的 + 返回的表达式应基于的二进制值。 + + + 创建表示指定的(可以为 null)布尔值的 + 表示指定的布尔值的 + 返回的表达式应基于的布尔值。 + + + 创建表示指定的(可以为 null)字节值的 + 表示指定的字节值的 + 返回的表达式应基于的字节值。 + + + 创建表示指定的(可以为 null) 值的 + 表示指定的 DateTime 值的 + 返回的表达式应基于的 DateTime 值。 + + + 创建表示指定(可为空值的) 值的 + 表示指定的 DateTimeOffset 值的 + 返回的表达式应基于的 DateTimeOffset 值。 + + + 创建表示指定的(可以为 null)十进制值的 + 表示指定的十进制值的 + 返回的表达式应基于的十进制值。 + + + 创建表示指定的(可以为 null)双精度值的 + 表示指定的双精度值的 + 返回的表达式应基于的双精度值。 + + + 创建表示指定的 值的 ,可以为 null。 + 表示指定的 DbGeography 值的 + 返回的表达式应基于的 DbGeography 值。 + + + 创建表示指定的 值的 ,可以为 null。 + 表示指定的 DbGeometry 值的 + 返回的表达式应基于的 DbGeometry 值。 + + + 创建表示指定(可为空值的) 值的 + 表示指定的 Guid 值的 + 返回的表达式应基于的 Guid 值。 + + + 创建表示指定的(可以为 null)Int16 值的 + 表示指定的 Int16 值的 + 返回的表达式应基于的 Int16 值。 + + + 创建表示指定的(可以为 null)Int32 值的 + 表示指定的 Int32 值的 + 返回的表达式应基于的 Int32 值。 + + + 创建表示指定的(可以为 null)Int64 值的 + 表示指定的 Int64 值的 + 返回的表达式应基于的 Int64 值。 + + + 创建表示指定的(可以为 null)单精度值的 + 表示指定的单精度值的 + 返回的表达式应基于的单精度值。 + + + 创建表示指定的字符串值的 + 表示指定的字符串值的 + 返回的表达式应基于的字符串值。 + + + 用作此类型的哈希函数。 + 返回当前表达式的哈希代码。 + + + 将一个 8 位无符号整数数组转换成 + 一个 ,表示转换后的 8 位无符号整数数组。 + 一个 8 位无符号整数数组。 + + + 将一个 DbGeography 对象转换成 + 表示转换后的 DbGeography 对象的 + DbGeography 对象。 + + + 将一个 DBGeometry 对象转换成 + 表示转换后的 DbGeography 对象的 + DbGeometry 对象。 + + + 将一个可以为 null 的布尔对象转换为 + 表示转换后的可以为 null 的布尔对象的 + 可以为 null 的布尔对象。 + + + 将一个可以为 null 的 8 位无符号整数转换成 + 表示转换后的 8 位无符号整数的 + 可以为 null 的 8 位无符号整数。 + + + 将一个可以为 null 的 对象转换成 + 一个表示 对象的 + 可为 null 的 对象。 + + + 将一个可以为 null 的 对象转换成 + 一个表示可以为 null 的 + 可为 null 的 对象。 + + + 将一个可以为 null 的十进制对象转换为 + 表示可以为 null 的十进制对象的 + 可以为 null 的十进制对象。 + + + 将一个可以为 null 的双精度对象转换为 + 表示可以为 null 的双精度对象的 + 可以为 null 的双精度对象。 + + + 将一个可以为 null 的 Guid 对象转换为 + 一个 ,表示可为 null 的 对象。 + 可为 null 的 对象。 + + + 将一个可以为 null 的 16 位无符号整数转换成 + 一个 ,表示可为 null 的 16 位无符号整数。 + 可以为 null 的 16 位无符号整数。 + + + 将一个可以为 null 的 32 位无符号整数转换成 + 一个 ,表示可为 null 的 32 位无符号整数。 + 可以为 null 的 32 位无符号整数。 + + + 将一个可以为 null 的 64 位无符号整数转换成 + 一个 ,表示可为 null 的 64 位无符号整数。 + 可以为 null 的 64 位无符号整数。 + + + 将一个可以为 null 的单精度浮点数字转换成 + 一个表示单精度浮点数字的 + 单精度浮点数。 + + + 转换 Unicode 字符 的有序集合。 + 表示 Unicode 字符的有序集合的 + Unicode 字符的有序集合。 + + + 获取表达式的结果类型的类型元数据。 + 表达式的结果类型的类型元数据。 + + + 描述表达式的绑定。在概念上与 C# 中的 foreach 循环类似。DbExpression 属性定义要循环访问的集合,而 Var 属性提供一个方式以便在迭代过程中引用该集合的当前元素。DbExpressionBinding 用于描述关系表达式(例如 )的集参数。 + + + 获取用于定义输入集的 + + + 获取引用元素变量的 + + + 获取指定给元素变量的名称。 + + + 获取元素变量的类型元数据。 + + + 描述表达式的不同“种类”(类) + + + 全部为 True。 + + + 逻辑与。 + + + 任何项均为 True。 + + + 条件 Case 语句。 + + + 多态类型转换。 + + + 一个常量值。 + + + Cross Apply + + + 交叉联接 + + + 引用。 + + + 重复删除。 + + + 除法。 + + + 集到单一转换。 + + + 实体引用值检索。 + + + 相等 + + + Set 减法 + + + 限制。 + + + 完全外部联接 + + + 独立函数的调用 + + + 大于。 + + + 大于或等于。 + + + 分组。 + + + 在其中。 + + + 内部联接 + + + 交集。 + + + 空集确定。 + + + Null 确定。 + + + 类型比较(指定的类型或子类型)。 + + + 类型比较(仅限指定的类型)。 + + + lambda 函数的应用 + + + 左外部联接 + + + 小于。 + + + 小于或等于。 + + + 字符串比较。 + + + 结果计数限制 (TOP n)。 + + + 减法。 + + + 取模。 + + + 乘法。 + + + 实例、行和集构造。 + + + 逻辑非。 + + + 不相等。 + + + Null。 + + + 按类型(或子类型)的集成员。 + + + 按(确切)类型的集成员。 + + + 逻辑或。 + + + Outer Apply。 + + + 对参数的引用。 + + + 加法。 + + + 投影。 + + + 静态或实例属性检索。 + + + 引用。 + + + 引用键值检索。 + + + (组合或关联)关系的导航。 + + + 实体集或关系集扫描。 + + + 跳过有序集合中的元素。 + + + 排序。 + + + 类型转换。 + + + 求反。 + + + 并集(包含重复项)。 + + + 对变量的引用。 + + + 确保某一给定表达式目录树中的所有元数据都来自指定的元数据工作区,并且可能在需要时将表达式重新绑定和重新生成到适当的替代元数据。 + + + 初始化 类的新实例。 + 目标工作区。 + + + 实现检索实例属性的访问者模式。 + 实现的访问者。 + 表达式。 + + + 实现对实体集的访问者模式。 + 实现的访问者模式。 + 实体集。 + + + 实现函数的访问者模式。 + 实现的访问者模式。 + 函数元数据。 + + + 实现类型的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 实现类型用法的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 应由不返回结果值的访问者实现的表达式访问者模式抽象基类。 + + + 初始化 类的新实例。 + + + DbAndExpression 的访问者模式方法。 + 正在访问的 DbAndExpression。 + + + DbApplyExpression 的访问者模式方法。 + 正在访问的 DbApplyExpression。 + + + DbArithmeticExpression 的访问者模式方法。 + 正在访问的 DbArithmeticExpression。 + + + DbCaseExpression 的访问者模式方法。 + 正在访问的 DbCaseExpression。 + + + DbCastExpression 的访问者模式方法。 + 正在访问的 DbCastExpression。 + + + DbComparisonExpression 的访问者模式方法。 + 正在访问的 DbComparisonExpression。 + + + DbConstantExpression 的访问者模式方法。 + 正在访问的 DbConstantExpression。 + + + DbCrossJoinExpression 的访问者模式方法。 + 正在访问的 DbCrossJoinExpression。 + + + DbDerefExpression 的访问者模式方法。 + 正在访问的 DbDerefExpression。 + + + DbDistinctExpression 的访问者模式方法。 + 正在访问的 DbDistinctExpression。 + + + DbElementExpression 的访问者模式方法。 + 正在访问的 DbElementExpression。 + + + DbEntityRefExpression 的访问者模式方法。 + 正在访问的 DbEntityRefExpression。 + + + DbExceptExpression 的访问者模式方法。 + 正在访问的 DbExceptExpression。 + + + 遇到其他无法识别的类型的表达式时进行调用。 + 表达式。 + + + DbFilterExpression 的访问者模式方法。 + 正在访问的 DbFilterExpression。 + + + DbFunctionExpression 的访问者模式方法。 + 正在访问的 DbFunctionExpression。 + + + DbGroupByExpression 的访问者模式方法。 + 正在访问的 DbGroupByExpression。 + + + DbInExpression 的访问者模式方法。 + 正在访问的 DbInExpression。 + + + DbIntersectExpression 的访问者模式方法。 + 正在访问的 DbIntersectExpression。 + + + DbIsEmptyExpression 的访问者模式方法。 + 正在访问的 DbIsEmptyExpression。 + + + DbIsNullExpression 的访问者模式方法。 + 正在访问的 DbIsNullExpression。 + + + DbIsOfExpression 的访问者模式方法。 + 正在访问的 DbIsOfExpression。 + + + DbJoinExpression 的访问者模式方法。 + 正在访问的 DbJoinExpression。 + + + DbLambdaExpression 的访问者模式方法。 + 正在访问的 DbLambdaExpression。 + + + DbLikeExpression 的访问者模式方法。 + 正在访问的 DbLikeExpression。 + + + DbLimitExpression 的访问者模式方法。 + 正在访问的 DbLimitExpression。 + + + DbNewInstanceExpression 的访问者模式方法。 + 正在访问的 DbNewInstanceExpression。 + + + DbNotExpression 的访问者模式方法。 + 正在访问的 DbNotExpression。 + + + DbNullExpression 的访问者模式方法。 + 正在访问的 DbNullExpression。 + + + DbOfTypeExpression 的访问者模式方法。 + 正在访问的 DbOfTypeExpression。 + + + DbOrExpression 的访问者模式方法。 + 正在访问的 DbOrExpression。 + + + DbParameterReferenceExpression 的访问者模式方法。 + 正在访问的 DbParameterReferenceExpression。 + + + DbProjectExpression 的访问者模式方法。 + 正在访问的 DbProjectExpression。 + + + DbPropertyExpression 的访问者模式方法。 + 正在访问的 DbPropertyExpression。 + + + DbQuantifierExpression 的访问者模式方法。 + 正在访问的 DbQuantifierExpression。 + + + DbRefExpression 的访问者模式方法。 + 正在访问的 DbRefExpression。 + + + DbRefKeyExpression 的访问者模式方法。 + 正在访问的 DbRefKeyExpression。 + + + DbRelationshipNavigationExpression 的访问者模式方法。 + 正在访问的 DbRelationshipNavigationExpression。 + + + DbScanExpression 的访问者模式方法。 + 正在访问的 DbScanExpression。 + + + DbSkipExpression 的访问者模式方法。 + 正在访问的 DbSkipExpression。 + + + DbSortExpression 的访问者模式方法。 + 正在访问的 DbSortExpression。 + + + DbTreatExpression 的访问者模式方法。 + 正在访问的 DbTreatExpression。 + + + DbUnionAllExpression 的访问者模式方法。 + 正在访问的 DbUnionAllExpression。 + + + DbVariableReferenceExpression 的访问者模式方法。 + 正在访问的 DbVariableReferenceExpression。 + + + 应由返回特定类型的结果值的访问者实现的表达式访问者模式抽象基类。 + 访问者生成的结果值的类型。 + + + 初始化 类的新实例。 + + + DbAndExpression 的类型化访问者模式方法。 + 正在访问的 DbAndExpression。 + + + DbApplyExpression 的类型化访问者模式方法。 + 正在访问的 DbApplyExpression。 + + + DbArithmeticExpression 的类型化访问者模式方法。 + 正在访问的 DbArithmeticExpression。 + + + DbCaseExpression 的类型化访问者模式方法。 + 正在访问的 DbCaseExpression。 + + + DbCastExpression 的类型化访问者模式方法。 + 正在访问的 DbCastExpression。 + + + DbComparisonExpression 的类型化访问者模式方法。 + 正在访问的 DbComparisonExpression。 + + + DbConstantExpression 的类型化访问者模式方法。 + 正在访问的 DbConstantExpression。 + + + DbCrossJoinExpression 的类型化访问者模式方法。 + 正在访问的 DbCrossJoinExpression。 + + + DbDerefExpression 的访问者模式方法。 + 正在访问的 DbDerefExpression。 + + + DbDistinctExpression 的类型化访问者模式方法。 + 正在访问的 DbDistinctExpression。 + + + DbElementExpression 的类型化访问者模式方法。 + 正在访问的 DbElementExpression。 + + + DbEntityRefExpression 的访问者模式方法。 + 正在访问的 DbEntityRefExpression。 + + + DbExceptExpression 的类型化访问者模式方法。 + 正在访问的 DbExceptExpression。 + + + 遇到其他无法识别的类型的表达式时进行调用。 + 表达式。 + + + DbFilterExpression 的类型化访问者模式方法。 + 正在访问的 DbFilterExpression。 + + + DbFunctionExpression 的访问者模式方法 + 正在访问的 DbFunctionExpression。 + + + DbGroupByExpression 的类型化访问者模式方法。 + 正在访问的 DbGroupByExpression。 + + + DbInExpression 的类型化访问者模式方法。 + 正在访问的 DbInExpression。 + + + DbIntersectExpression 的类型化访问者模式方法。 + 正在访问的 DbIntersectExpression。 + + + DbIsEmptyExpression 的类型化访问者模式方法。 + 正在访问的 DbIsEmptyExpression。 + + + DbIsNullExpression 的类型化访问者模式方法。 + 正在访问的 DbIsNullExpression。 + + + DbIsOfExpression 的类型化访问者模式方法。 + 正在访问的 DbIsOfExpression。 + + + DbJoinExpression 的类型化访问者模式方法。 + 正在访问的 DbJoinExpression。 + + + DbLambdaExpression 的访问者模式方法。 + 正在访问的 DbLambdaExpression。 + + + DbLikeExpression 的访问者模式方法。 + 正在访问的 DbLikeExpression。 + + + DbLimitExpression 的访问者模式方法。 + 正在访问的 DbLimitExpression。 + + + DbNewInstanceExpression 的类型化访问者模式方法。 + 正在访问的 DbNewInstanceExpression。 + + + DbNotExpression 的类型化访问者模式方法。 + 正在访问的 DbNotExpression。 + + + DbNullExpression 的类型化访问者模式方法。 + 正在访问的 DbNullExpression。 + + + DbOfTypeExpression 的类型化访问者模式方法。 + 正在访问的 DbOfTypeExpression。 + + + DbOrExpression 的类型化访问者模式方法。 + 正在访问的 DbOrExpression。 + + + DbParameterReferenceExpression 的类型化访问者模式方法。 + 正在访问的 DbParameterReferenceExpression。 + + + DbProjectExpression 的类型化访问者模式方法。 + 正在访问的 DbProjectExpression。 + + + DbPropertyExpression 的类型化访问者模式方法。 + 正在访问的 DbPropertyExpression。 + + + DbQuantifierExpression 的类型化访问者模式方法。 + 正在访问的 DbQuantifierExpression。 + + + DbRefExpression 的类型化访问者模式方法。 + 正在访问的 DbRefExpression。 + + + DbRefKeyExpression 的访问者模式方法。 + 正在访问的 DbRefKeyExpression。 + + + DbRelationshipNavigationExpression 的类型化访问者模式方法。 + 正在访问的 DbRelationshipNavigationExpression。 + + + DbScanExpression 的类型化访问者模式方法。 + 正在访问的 DbScanExpression。 + + + DbSkipExpression 的类型化访问者模式方法。 + 正在访问的 DbSkipExpression。 + + + DbSortExpression 的类型化访问者模式方法。 + 正在访问的 DbSortExpression。 + + + DbTreatExpression 的类型化访问者模式方法。 + 正在访问的 DbTreatExpression。 + + + DbUnionAllExpression 的类型化访问者模式方法。 + 正在访问的 DbUnionAllExpression。 + + + DbVariableReferenceExpression 的类型化访问者模式方法。 + 正在访问的 DbVariableReferenceExpression。 + + + 表示一个谓词,该谓词应用于某一输入集以便生成满足它的一组元素。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取指定用于筛选输入集的谓词的 + + + 对应于聚合函数的调用的聚合类型。 + + + 获取一个值,该值指示是否以不同风格应用聚合函数 + + + 获取指定要调用的聚合函数的方法元数据。 + + + 表示以规范命令树表示的函数调用。 + + + 构造一个新的 DbFunctionCommandTree,它使用指定的元数据工作区、数据空间和函数元数据。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 要调用的 EDM 函数。 + 函数的结果类型。 + 与要调用的函数关联的参数。 + + + 获取或设置命令目录树类型。 + 命令目录树类型。 + + + 获取表示要调用的函数的 + 表示要调用的函数的 + + + 获取函数的结果类型;当前被约束为 RowTypes 的集合。与典型的 RowType 实例不同,仅指示名称/类型不是参数顺序。 + 函数的结果类型。 + + + 表示对函数的调用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取 列表,该列表提供函数的参数。 + + + 获取要调用的函数的元数据。 + + + 表示构成组的元素的集合。 + + + 表示一个分组运算,分组运算是根据指定的键表达式将输入集中的元素分组,后接指定聚合函数的应用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取 列表,该列表提供要应用的聚合函数。 + + + 获取 ,它指定输入集,并提供对集元素和组元素变量的访问。 + + + 获取 列表,该列表提供分组键。 + + + 定义输入集到 的绑定。除了 的属性之外,DbGroupExpressionBinding 还通过 <seealso cref="P:System.Data.Entity.Core.Common.CommandTrees.DbGroupExpressionBinding.GroupVariable" /> 变量引用提供对组元素的访问,并且通过 <seealso cref="P:System.Data.Entity.Core.Common.CommandTrees.DbGroupExpressionBinding.GroupAggregate" /> 属性提供对组聚合的访问。 + + + 获取用于定义输入集的 + + + 获取 DbGroupAggregate,它表示组的元素集合。 + + + 获取引用组元素变量的 DbVariableReferenceExpression。 + + + 获取指定给组元素变量的名称。 + + + 获取组元素变量的类型元数据。 + + + 获取引用元素变量的 DbVariableReferenceExpression。 + + + 获取指定给元素变量的名称。 + + + 获取元素变量的类型元数据。 + + + 表示一个布尔表达式,该布尔表达式测试某一指定的项是否与列表中的任何元素匹配。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取指定要匹配的项的 DbExpression。 + + + 获取要针对某一匹配进行测试的 DbExpression 的列表。 + + + 表示用一个规范命令目录树代表的单行插入操作。如果设置了 属性,此命令将返回一个读取器;否则,它将返回一个指示受影响的行数的标量值。 + + + 初始化 类的新实例。 + 元数据。 + 数据空间。 + 数据库目标。 + 确定插入的行中的列值的 Set 子句。 + 指定要基于修改的行返回的结果投影的 。 + + + 获取命令目录树类型。 + 命令目录树类型。 + + + 获取一个 ,它指定要基于修改的行返回的结果投影。如果为 null,则指示不应从此命令返回任何结果。 + 指定要基于修改的行返回的结果投影的 + + + 获取确定插入的行中的列值的 Set 子句。 + 确定插入的行中的列值的 Set 子句。 + + + 表示左右操作数之间的交集运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示应用于单集参数的空集确定。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示应用于单个参数的 null 确定。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示单个参数针对指定类型的类型比较。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取参数的类型元数据将与其进行比较的类型元数据。 + + + 表示在指定的联接条件下,在给定的集合参数之间进行的内部、左外部或完全外部联接运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取定义要应用的联接条件的 + + + 获取提供左输入的 + + + 获取提供右输入的 + + + 表示 Lambda 函数的应用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个 列表,该列表提供 Lambda 函数应该应用于的参数。 + + + 获取表示此表达式应用的 Lambda 函数的 + + + 表示针对指定的模式与可选的转义字符串进行的字符串比较 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个表达式,它指定要针对给定模式进行比较的字符串 + + + 获取一个表达式,它提供用于比较的可选的转义字符串 + + + 获取一个表达式,它指定比较给定字符串时所针对的模式 + + + 表示将参数集合中的元素数限制为指定的限值。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取指定输入集合的表达式。 + + + 获取指定从输入集合中返回的元素数限制的表达式。 + + + 获取限制操作是否将包括等值结果,在存在等值时,这可以生成比该限值指定的结果更多的结果。 + + + 在插入或更新修改操作中指定单个子句,请参见 + + + 表示以规范命令目录树表示的 DML 操作 + + + 获取为 DML 操作指定目标表的 + + + 表示给定类型(包括集类型和记录类型)的新实例的构造。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个 列表,该列表可为新实例提供属性/列值或集元素。 + + + 表示对单个 Boolean 参数执行的逻辑非运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示 null。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示从给定的集参数中检索属于指定类型的元素。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取应从集参数中检索的元素类型的元数据。 + + + 表示两个 Boolean 参数的逻辑或。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示对在包含此表达式的命令目录树上声明的参数的引用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取所引用的参数的名称。 + + + 表示给定值集在指定输入集上的投影。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取定义投影的 + + + 提供用于检索实例属性的方法和属性。此类不能被继承。 + + + 为不生成结果值的表达式实现访问者模式。 + + 的一个实例。 + visitor 为 null。 + + + 为生成特定类型的结果值的表达式实现访问者模式。 + 一个由 生成的特定类型结果值。 + 生成特定类型结果值的类型化 的一个实例。 + 访问者生成的结果类型。 + visitor 为 null。 + + + 获取 ,它定义应从中检索属性的实例。 + 用于定义应从中检索属性的实例的 + + + 允许隐式强制转换为 + 转换后的值。 + 要转换的表达式。 + + + 获取要检索的属性的属性元数据。 + 要检索的属性的属性元数据。 + + + 基于此属性表达式创建一个新的键/值对。 + 具有从 派生的键和值的新键/值对。 + + + 表示对指定输入集中的元素执行的指定种类(Any、All)的限定符操作。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取应为输入集中的每个元素计算的 Boolean 谓词。 + + + 表示一项以规范命令目录树形式表示的查询操作。 + + + 初始化使用指定元数据工作区的 类的新实例。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 一个定义查询逻辑的 。 + + 为 null。 + + 不表示有效数据空间。 + + + 初始化使用指定元数据工作区的 类的新实例。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 一个定义查询逻辑的 。 + 若为 true,则验证树;否则为 false。在设置为 false 时,将禁用对目录树的验证。 + + 为 null。 + + 不表示有效数据空间。 + + + 初始化 类的新实例。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 一个定义查询逻辑的 。 + 若为 true,则验证树;否则为 false。在设置为 false 时,将禁用对目录树的验证。 + 若为 true,则使用数据库 null 语义;否则为 false。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取定义查询逻辑的 + 一个定义查询逻辑的 + + + 表示对某一给定实体集中的特定实例的(强类型)引用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取包含该实例的实体集的元数据。 + + + 表示将指定引用的键值作为行检索。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示给定“源”角色、“目标”角色和源角色的实例的情况下关系的导航(组合或关联) + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取要从其开始导航的关系端的元数据 + + + 获取要导航到的关系端的元数据 + + + 获取 ,它指定应从其开始导航的“源”关系端的实例。 + + + 获取要导航的关系的元数据 + + + 表示某一给定实体集的所有元素的“扫描”。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取所引用的实体集或关系集的元数据。 + + + 指定用于设置属性值的修改操作中的子句。 + + + 获取一个指定应更新的属性的 + + + 获取一个 ,它指定用于更新属性的新值。 + + + 表示应用在给定排序键中描述的顺序后输入集的指定数目的元素的跳过操作。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取指定要在输入集合中跳过的元素数的表达式。 + + + 获取用于指定输入集的 + + + 获取一个定义排序顺序的 列表。 + + + 指定可在 DbSortExpression 中用作排序顺序的一部分的排序关键字。 + + + 获取一个布尔值,该值指示此排序关键字是否按升序排序。 + + + 获取一个字符串值,该值指定此排序关键字的排序规则。 + + + 获取为此排序关键字提供值的 + + + 表示一项基于给定的排序关键字应用于指定输入集中的元素的排序操作。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取一个定义排序顺序的 列表。 + + + 表示单个参数向指定类型的类型转换。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 接受单个表达式操作数的表达式的抽象基类型 + + + 获取定义参数的 + + + 表示左右操作数之间的 set 联合(不移除重复项)运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示一项以命令目录树形式表示的单行更行操作。此类不能被继承。 + + + 初始化 类的新实例。 + 将对其运行此命令的模型。 + 数据空间。 + 数据操作语言 (DML) 操作的目标表。 + 一个谓词,用于确定目标集合中应更新的成员。 + 定义更新操作的更新 Set 子句列表。 + 一个 ,它指定要基于修改的行返回的结果投影。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取一个 ,它指定用于确定目标集合中应更新的成员的谓词。 + 一个 ,指定用于确定目标集合中应更新的成员的谓词。 + + + 获取一个 ,它指定要基于修改的行返回的结果投影。 + 一个 ,它指定要基于修改的行返回的结果投影。如果为 null,则指示不应从此命令返回任何结果。 + + + 获取定义更新操作的更新 Set 子句列表。 + 定义更新操作的更新 Set 子句列表。 + + + 表示对当前处于范围内的某个变量的引用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取所引用的变量的名称。 + + + 从给定的根表达式访问表达式目录树的每个元素。如果任何元素发生更改,则目录树将被重新生成回根目录并且返回新的根表达式;否则,返回原始根表达式。 + + + 初始化 类的新实例。 + + + 当使用指定的范围变量进入表达式访问者的范围时表示事件。 + 范围变量的集合。 + + + 退出表达式访问者的范围。 + + + 用表达式访问者的新表达式替换旧表达式。 + 旧表达式。 + 新表达式。 + + + 当重新绑定表达式访问者的变量时表示事件。 + 变量的位置。 + 重新绑定的变量的引用。 + + + 实现逻辑与表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbAndExpression。 + + + 为调用指定输入集中每个元素的指定函数实现访问者模式。 + 实现的访问者。 + 正在访问的 DbApplyExpression。 + + + 实现应用于数值参数的算术运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbArithmeticExpression。 + + + 实现 When、Then 和 Else 子句的访问者模式。 + 实现的访问者。 + 正在访问的 DbCaseExpression。 + + + 实现将单个参数转换为指定类型的类型转换的访问者模式。 + 实现的访问者。 + 正在访问的 DbCastExpression。 + + + 实现应用于两个参数的比较运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbComparisonExpression。 + + + 实现不同类型常量的访问者模式。 + 实现的访问者。 + 正在访问的 DbConstantExpression。 + + + 实现给定集合参数之间的无条件联接操作的访问者模式。 + 实现的访问者。 + 正在访问的 DbCrossJoinExpression。 + + + 实现基于指定引用检索实体的表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbDerefExpression。 + + + 实现从指定的集参数中删除的重复元素的访问者模式。 + 实现的访问者。 + 正在访问的 DbDistinctExpression。 + + + 实现指定的集参数到单一实例的转换的访问者模式。 + 实现的访问者。 + 正在访问的 DbElementExpression。 + + + 实现从基础实体实例提取引用的表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbEntityRefExpression。 + + + 实现左操作数和右操作数之间设置的减法运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbExceptExpression。 + + + 实现表达式类型所需的基本功能的访问者模式。 + 实现的访问者。 + 正在访问的 DbExpression。 + + + 实现应用于筛选输入集的谓语的访问者模式。 + 实现的访问者。 + 正在访问的 DbFilterExpression。 + + + 实现调用某个函数的访问者模式。 + 实现的访问者。 + 正在访问的 DbFunctionExpression。 + + + 通过运算实现针对某个组的访问者模式。 + 实现的访问者。 + 正在访问的 DbGroupByExpression。 + + + 实现 DbInExpression 的访问者模式。 + 实现的访问者。 + 正在访问的 DbInExpression。 + + + 实现左操作数和右操作数之间设置的交集运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbIntersectExpression。 + + + 实现应用于单集参数的空集确定的访问者模式。 + 实现的访问者。 + 正在访问的 DbIsEmptyExpression。 + + + 实现应用于单个参数的 null 确定的访问者模式。 + 实现的访问者。 + 正在访问的 DbIsNullExpression。 + + + 实现将单个参数与指定类型进行比较的类型比较的访问者模式。 + 实现的访问者。 + 正在访问的 DbIsOfExpression。 + + + 实现指定联接条件下给定集合参数之间内部联接、左外部联接或完全外部联接运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbJoinExpression。 + + + 实现将 lambda 函数应用于 DbExpression 对象所表示的参数的访问者模式。 + 实现的访问者。 + 正在访问的 DbLambdaExpression。 + + + 实现与带有可选转义字符串的指定模式进行字符串比较的访问者模式。 + 实现的访问者。 + 正在访问的 DbLikeExpression。 + + + 实现将参数集合中的元素数目限制为指定限值的访问者模式。 + 实现的访问者。 + 正在访问的 DbLimitExpression。 + + + 实现构建给定类型的新实例(包括集和记录类型)的访问者模式。 + 实现的访问者。 + 正在访问的 DbNewInstanceExpression。 + + + 实现单个布尔参数的逻辑非运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbNotExpression。 + + + 实现对类型化 null 文本的引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbNullExpression。 + + + 实现根据给定集参数检索指定类型的元素的访问者模式。 + 实现的访问者。 + 正在访问的 DbOfTypeExpression。 + + + 实现两个布尔参数的逻辑或的访问者模式。 + 实现的访问者。 + 正在访问的 DbOrExpression。 + + + 实现对包含此表达式的命令目录树中所声明参数的引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbParameterReferenceExpression。 + + + 实现对指定表达式的给定输入集的投影的访问者模式。 + 实现的访问者。 + 正在访问的 DbProjectExpression。 + + + 实现检索实例属性的访问者模式。 + 实现的访问者。 + 正在访问的 DbPropertyExpression。 + + + 实现对指定输入集元素执行的指定类型的限定符运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbQuantifierExpression。 + + + 实现对实体集内特定实例的强类型引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbRefExpression。 + + + 实现根据基础引用值检索键值的访问者模式。 + 实现的访问者。 + 正在访问的 DbRefKeyExpression。 + + + 实现关系导航的访问者模式。 + 实现的访问者。 + 正在访问的 DbRelationshipNavigationExpression。 + + + 实现对 Target 属性所指示的实体集或关系集的扫描的访问者模式。 + 实现的访问者。 + 正在访问的 DbScanExpression。 + + + 实现 skip 表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbSkipExpression。 + + + 实现可用作排序顺序一部分的排序关键字的访问者模式。 + 实现的访问者。 + 正在访问的 DbSortExpression。 + + + 实现应用于多态参数的类型转换运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbTreatExpression。 + + + 实现左操作数和右操作数之间设置的并集运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbUnionAllExpression。 + + + 实现对当前处于范围内的变量的引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbVariableReferenceExpression。 + + + 实现对聚合的访问者模式。 + 实现的访问者模式。 + 要访问的聚合。 + + + 实现对实体集的访问者模式。 + 实现的访问者模式。 + 实体集。 + + + 实现表达式的访问者模式。 + 实现的访问者模式。 + 表达式。 + + + 实现表达式绑定的访问者模式。 + 实现的访问者模式。 + 表达式绑定。 + + + 实现表达式绑定列表的访问者模式。 + 实现的访问者模式。 + 表达式绑定列表。 + + + 实现表达式列表的访问者模式。 + 实现的访问者模式。 + 表达式列表。 + + + 实现函数的访问者模式。 + 实现的访问者模式。 + 函数元数据。 + + + 实现函数聚合的访问者模式。 + 实现的访问者模式。 + 聚合。 + + + 实现组聚合的访问者模式。 + 实现的访问者模式。 + 聚合。 + + + 实现组表达式绑定的访问者模式。 + 实现的访问者模式。 + 绑定。 + + + 实现 Lambda 函数的访问者模式。 + 实现的访问者模式。 + Lambda 函数。 + + + 实现排序子句的访问者模式。 + 实现的访问者模式。 + 排序子句。 + + + 实现排序顺序的访问者模式。 + 实现的访问者模式。 + 排序顺序。 + + + 实现类型的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 实现类型用法的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 提供一个用于构造 的 API,并且允许该 API 作为针对表达式类型本身的扩展方法来访问。 + + + 创建一个新的 + 具有对给定函数和参数的引用的一个新的函数聚合。该函数聚合的 Distinct 属性将具有值 false。 + 定义聚合运算的函数。 + 要对其计算聚合函数的参数。 + + 为 null。 + + 不是聚合函数,或者具有多个实参;或者 的结果类型不相等或不能提升为 的形参类型。 + + + 创建以不同风格应用的一个新的 + 具有对给定函数和参数的引用的一个新的函数聚合。该函数聚合的 Distinct 属性将具有值 true。 + 定义聚合运算的函数。 + 要对其计算聚合函数的参数。 + + 为 null。 + + 不是聚合函数,或者具有多个实参;或者 的结果类型不相等或不能提升为 的形参类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的所有元素。 + 表示 All 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式。 + 一个方法,它表示要为输入集的每个成员计算的谓词。此方法必须生成一个表达式,该表达式具有提供谓词逻辑的 Boolean 结果类型。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的所有元素。 + 表示 All 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式绑定。 + 一个表达式,它表示要针对输入集的每个成员计算的谓词。 + + 为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个 ,它对左边参数和右边参数执行逻辑与运算。 + 具有指定参数的新 DbAndExpression。 + 指定左边参数的布尔表达式。 + 指定右边参数的布尔表达式。 + + 为 null。 + + 不具有布尔结果类型。 + + + 创建一个新的 ,它确定指定的集参数是否非空。 + 一个新的 ,它使用指定的参数应用于新的 + 一个指定输入集的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的任何元素。 + 表示 Any 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式。 + 一个方法,它表示要为输入集的每个成员计算的谓词。此方法必须生成一个表达式,该表达式具有提供谓词逻辑的 Boolean 结果类型。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的任何元素。 + 表示 Any 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式绑定。 + 一个表达式,它表示要针对输入集的每个成员计算的谓词。 + + 为 null。 + + 不具有布尔结果类型。 + + + 以键/值对对象的形式返回指定参数。 + 键/值对对象。 + 键/值对中的值。 + 键/值对中的键。 + + + 以键/值对对象的形式返回指定参数。 + 键/值对对象。 + 键/值对中的值。 + 键/值对中的键。 + + + 创建一个新的 ,它使用生成的变量名称绑定给定的表达式。 + 具有指定的表达式和生成的变量名称的一个新的表达式绑定。 + 要绑定的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它使用指定的变量名称绑定给定的表达式。 + 具有指定表达式和变量名称的一个新的表达式绑定。 + 要绑定的表达式。 + 应该用于绑定的变量名称。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 + 具有指定事例和默认结果的一个新的 DbCaseExpression。 + 为每个事例提供条件的表达式的列表。 + 提供每个事例的结果的表达式列表。 + 定义没有匹配事例时的结果的表达式。 + + 为 null 或包含 null,或者 为 null。 + + 为空,或者 包含带有非布尔结果类型的表达式,或者没有适用于 中所有表达式的通用结果类型。 + + + 创建一个新的 ,它将强制转换运算应用于一个多态参数。 + 具有指定的参数和目标类型的一个新的 DbCastExpression。 + 应对其应用强制转换的参数。 + 指定要强制转换为的类型的类型元数据。 + + 为 null。 + 指定的强制转换无效。 + + + 使用给定的常量值创建一个具有指定基元类型的新的 + 具有给定值和 结果类型的一个新的 DbConstantExpression。 + 常量值的类型。 + 要表示的常量值。 + valueconstantType + + 不是有效常量类型的实例, 不表示基元类型,或者 所属的基元类型与 表示的基元类型不同。 + + + 使用给定的常量值创建一个新的 + 具有给定值的一个新的 DbConstantExpression。 + 要表示的常量值。 + + 为 null。 + + 不是有效常量类型的实例。 + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它对基于键值对给定类型的特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 引用的实体的特定类型。此实体类型必须与实体集的元素类型处于同一层次结构。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 不是来自 的元素类型所在的层次结构(子类型、超类型或相同类型)。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它对基于键值对给定类型的特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 引用的实体的特定类型。此实体类型必须与实体集的元素类型处于同一层次结构。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 不是来自 的元素类型所在的类型层次结构(子类型、超类型或相同类型)。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。 + 具有指定的输入和应用绑定以及 CrossApply 的 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个方法,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + 没有集合结果类型。 + + 的结果包含为 Null 的名称或表达式。 + + 的结果包含在表达式绑定中无效的名称或表达式。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。 + 具有指定的输入和应用绑定以及 CrossApply 的 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个 ,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + + 创建一个新的 ,它无条件联接输入表达式绑定列表指定的集。 + 具有 CrossJoin 的 的一个新的 DbCrossJoinExpression,它表示输入集的无条件联接。 + 指定输入集的表达式绑定列表。 + + 为 null 或包含 null。 + + 包含的表达式绑定数目少于 2。 + + + 创建一个新的 ,它根据给定的引用表达式检索特定实体。 + 检索指定实体的一个新的 DbDerefExpression。 + 一个提供引用的 。此表达式必须具有引用类型。 + + 为 null + + 没有引用结果类型。 + + + 创建一个新的 ,它从给定的集参数中删除重复项。 + 一个新的 DbDistinctExpression,它表示应用于指定集参数的不同运算。 + 定义要对其执行不同运算的集的表达式。 + + 为 null。 + + 没有引用结果类型。 + + + 创建一个新的 ,它用左边参数除以右边参数。 + 表示除法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它将一个集转换为单一实例。 + 一个 DbElementExpression,它表示从集参数到单一实例的转换。 + 一个指定输入集的表达式。 + + 为 null。 + + 没有引用结果类型。 + + + 创建一个新的 ,它比较左边参数和右边参数是否相等。 + 表示相等比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它计算从左边集参数中减去右边集参数的结果。 + 一个新的 DbExceptExpression,它表示从左边参数中减去右边参数之差。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 为 null。 + + 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它确定指定的集参数是否非空。 + 一个新的 ,它使用指定的参数应用于新的 + 一个指定输入集的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 使用布尔值 false 创建一个 + 带布尔值 false 的 + + + 创建一个新的 ,它使用指定的谓词筛选给定输入集中的元素。 + 生成筛选的集的一个新的 DbFilterExpression。 + 一个指定输入集的表达式绑定。 + 一个表达式,它表示要针对输入集的每个成员计算的谓词。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 FullOuterJoin 作为 + 一个 为 FullOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的完全外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个表示联接条件的方法。此方法必须生成一个具有布尔结果类型的表达式,该表达式提供联接条件的逻辑。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式绑定和右边表达式绑定指定的集,并且使用 FullOuterJoin 作为 + 一个 为 FullOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的完全外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个指定联接条件的表达式。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它以结构化形式检索指定实体的引用。 + 检索对指定实体的引用的一个新的 DbEntityRefExpression。 + 提供实体的表达式。此表达式必须具有实体结果类型。 + + 为 null。 + + 没有实体结果类型。 + + + 创建一个新的 ,它以结构化形式检索指定引用的键值。 + 检索指定引用的键值的一个新的 DbRefKeyExpression。 + 提供引用的表达式。此表达式的引用类型必须具有实体元素类型。 + + 为 null。 + + 没有实体结果类型。 + + + 创建一个新的 ,它确定左边参数是否大于右边参数。 + 表示大于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它确定左边参数是否大于或等于右边参数。 + 表示大于或等于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + left 或 right 为 null。 + left 与 right 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 对指定参数创建一个新的 + 一个新的组聚合,它表示按给定参数引用的组的元素。 + 通过其执行嵌套运算的参数。 + + 为 null。 + + + 创建一个新的组表达式绑定,该绑定使用生成的变量名称和组变量名称来绑定给定的表达式。 + 一个新的组表达式绑定,该绑定具有指定的表达式以及生成的变量名称和组变量名称。 + 要绑定的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它使用指定的变量名称和组变量名称来绑定给定的表达式。 + 具有指定的表达式、变量名称和组变量名称的一个新的组表达式绑定。 + 要绑定的表达式。 + 应该用于绑定的变量名称。 + 在分组表达式中使用新的组表达式绑定时应该用于引用该组的变量名称。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它根据指定的组键对输入集的元素进行分组并应用给定的聚合。 + 具有指定的输入集、分组键和聚合的一个新的 DbGroupByExpression。 + 指定输入集的 。 + 定义分组列的字符串表达式对的列表。 + 指定要应用的聚合的表达式列表。 + + 为 null, 包含为 null 的键列名称或表达式,或者聚合包含为 null 的聚合列名称或 + + 均为空,或指定了无效或重复的列名称。 + + + 创建一个 ,它将指定表达式的结果与指定列表中常量表达式的结果进行匹配。 + 如果 DbConstantExpression 列表非空,则为具有指定参数的一个新的 DbInExpression;否则为 false 常量表达式。 + 要匹配的 DbExpression。 + 要针对某一匹配进行测试的 DbConstantExpression 的列表。 + + 为 null。 + + 的结果类型与来自 的表达式的结果类型不同。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 InnerJoin 作为 + 一个 InnerJoin 为 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的内部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个表示联接条件的方法。此方法必须生成一个具有布尔结果类型的表达式,该表达式提供联接条件的逻辑。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 InnerJoin 作为 + 一个 InnerJoin 为 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的内部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个指定联接条件的表达式。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它计算左边集参数和右边集参数的交集。 + 一个新的 DbIntersectExpression,它表示左边参数和右边参数的交集。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 或 right 为 + + 之间不存在任何常用集合结果类型。 + + + 创建一个新的 ,它表示对给定参数应用指定的 Lambda 函数。 + 表示 Lambda 函数应用的一个新的 DbLambdaExpression。 + 一个 实例,它表示要应用的 Lambda 函数。 + 提供参数的表达式列表。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它表示对给定参数应用指定的 Lambda 函数。 + 表示 Lambda 函数应用的一个新的 DbLambdaExpression。 + 一个 实例,它表示要应用的 Lambda 函数。 + 提供参数的表达式。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它表示使用给定的参数调用指定的函数。 + 表示函数调用的一个新的 DbFunctionExpression。 + 要调用的函数的元数据。 + 为函数提供参数的表达式列表。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它表示使用给定的参数调用指定的函数。 + 表示函数调用的一个新的 DbFunctionExpression。 + 要调用的函数的元数据。 + 为函数提供参数的表达式。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它确定指定的集参数是否为空集。 + 具有指定参数的一个新的 DbIsEmptyExpression。 + 一个指定输入集的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它确定指定的参数是否为 null。 + 具有指定参数的一个新的 DbIsNullExpression。 + 指定参数的表达式。 + + 为 null。 + + 有一个集合结果类型。 + + + 创建一个新的 ,它确定给定的参数是否为指定的类型或子类型。 + 具有指定的实例和类型以及 DbExpressionKind IsOf 的一个新的 DbIsOfExpression。 + 指定实例的表达式。 + 类型元数据,它指定应与实例的结果类型进行比较的类型。 + + 为 null。 + + 的结果类型不处于相同的类型层次结构中。 + + + 创建一个新的 表达式,该表达式确定给定的参数是否属于指定的类型且只属于该类型(而非子类型)。 + 具有指定的实例和类型以及 DbExpressionKind IsOfOnly 的一个新的 DbIsOfExpression。 + 指定实例的表达式。 + 类型元数据,它指定应与实例的结果类型进行比较的类型。 + + 为 null。 + + 的结果类型不处于相同的类型层次结构中。 + + + 创建一个新的 ,它基于指定的外部键和内部键之间的相等条件联接外部表达式和内部表达式指定的集,并且使用 InnerJoin 作为 + 一个 InnerJoin 为 的新的 DbJoinExpression,它表示基于比较外部键值和内部键值是否相等的联接条件应用于左边输入集和右边输入集的内部联接运算。 + 指定外部集参数的 。 + 指定内部集参数的 。 + 一个方法,它指定如何从外部集的元素派生外部键值。 + 一个方法,它指定如何从内部集的元素派生内部键值。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不能比较是否相等。 + + + 创建一个新的 ,它对外部和内部表达式指定的集投影指定的选择器,基于指定的外部键和内部键之间的相等条件进行联接,并且使用 InnerJoin 作为 + 一个新的 DbProjectExpression,它使用指定的选择器作为其投影并且使用一个新的 DbJoinExpression 作为其输入。输入 DbJoinExpression 是使用 InnerJoin 的 创建的,它表示基于比较外部键值和内部键值是否相等的联接条件应用于左边输入集和右边输入集的内部联接运算。 + 指定外部集参数的 。 + 指定内部集参数的 。 + 一个方法,它指定如何从外部集的元素派生外部键值。 + 一个方法,它指定如何从内部集的元素派生内部键值。 + 一个方法,它指定如何从内部和外部集的元素派生结果集的元素。此方法必须生成与 Join 兼容且可以解析为 的类型的实例。备注中说明了针对 的兼容性要求。 + 选择器的类型。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + 在转换为 DbExpression 之后 的结果为 null。 + + 生成的表达式不能比较是否相等。 + + 的结果与 SelectMany 不兼容。 + + + 使用指定的内联 Lambda 函数实现和形参创建 + 一个新的 DbLambda,它描述具有指定主体和形参的内联 Lambda 函数。 + 一个定义 Lambda 函数的逻辑的表达式。 + 一个 集合,该集合表示 Lambda 函数的形参。这些变量可以有效地在 表达式中使用。 + + 为 null 或包含 null,或者 为 null。 + + 包含多个具有相同变量名称的元素。 + + + 使用指定的内联 Lambda 函数实现和形参创建 + 一个新的 DbLambda,它描述具有指定主体和形参的内联 Lambda 函数。 + 一个定义 Lambda 函数的逻辑的表达式。 + 一个 集合,该集合表示 Lambda 函数的形参。这些变量可以有效地在 body 表达式中使用。 + + 为 null 或包含 null,或者 为 null。 + + 包含多个具有相同变量名称的元素。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 LeftOuterJoin 作为 + 一个 为 LeftOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的左外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个表示联接条件的方法。此方法必须生成一个具有布尔结果类型的表达式,该表达式提供联接条件的逻辑。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式绑定和右边表达式绑定指定的集,并且使用 LeftOuterJoin 作为 + 一个 为 LeftOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的左外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个指定联接条件的表达式。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它确定左边参数是否小于右边参数。 + 表示小于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它确定左边参数是否小于或等于右边参数。 + 表示小于或等于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它将指定的输入字符串与给定的模式进行比较。 + 具有指定输入、模式和 null 转义的一个新的 DbLikeExpression。 + 指定输入字符串的表达式。 + 指定模式字符串的表达式。 + + 为 null。 + + 不具有字符串结果类型。 + + + 创建一个新的 ,它使用可选转义符将指定的输入字符串与给定的模式进行比较。 + 具有指定的输入、模式和转义符的一个新的 DbLikeExpression。 + 指定输入字符串的表达式。 + 指定模式字符串的表达式。 + 指定转义字符串的可选表达式。 + + 或转义符为 + + 或转义符不具有字符串结果类型。 + + + 创建一个新的 ,它将参数集合中的元素数目限制为指定的计数限值。输出中不包括等值结果。 + 一个新的 DbLimitExpression,它具有指定参数以及不包括等值结果的计数限值。 + 一个指定输入集合的表达式。 + 指定限值的表达式。 + + 为 null。 + + 不具有集合结果类型,或者 不具有等同于或可提升为 64 位整数类型的结果类型。 + + + 创建一个新的 ,它从左边参数中减去右边参数。 + 表示减法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它计算左边参数除以右边参数所得的余数。 + 表示取模运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它用左边参数乘以右边参数。 + 表示乘法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它表示组合或关联的导航。 + 一个新的 DbRelationshipNavigationExpression,它表示从指定的导航源实例的指定关系类型的指定源和目标关系端的导航。 + 一个表达式,它指定应作为导航起点的实例。 + 属性的元数据,表示作为导航的源的关系端。 + 属性的元数据,表示作为导航的目标的关系端。 + + 为 null。 + + 不是由相同关系类型声明的,或者 的结果类型与 的属性类型不兼容。 + + + 创建一个新的 ,它表示组合或关联的导航。 + 一个新的 DbRelationshipNavigationExpression,它表示从指定的导航源实例的指定关系类型的指定源和目标关系端的导航。 + 表示关系的关系类型的元数据。 + 关系类型的属性名称,它表示作为导航的源的关系端。 + 关系类型的属性名称,它表示作为导航的目标的关系端。 + 一个表达式,它指定应作为导航起点的实例。 + + + 为 null。 + + 与此命令目录树的元数据工作区不关联,或者 与其他命令目录树相关联,或者 未声明具有 名称的关系端属性,或者 具有与 不兼容的结果类型。 + + + 创建一个新的 ,它对参数值求反。 + 表示求反运算的一个新的 DbArithmeticExpression。 + 指定参数的表达式。 + + 为 null。 + 不存在针对 的任何数值结果类型。 + + + 创建一个新的 。如果类型参数为集合类型,则参数将指定集合的元素。否则,参数将用作新实例中的属性值或列值。 + 具有指定的类型和参数的一个新的 DbNewInstanceExpression。 + 新实例的类型。 + 指定新实例的值的表达式,根据实例的类型对其进行解释。 + + 为 null,或者 包含 null。 + + 为空,或者包含的表达式的结果类型与 的要求不匹配(在备注部分中进行了说明)。 + + + 创建一个新的 。如果类型参数为集合类型,则参数将指定集合的元素。否则,参数将用作新实例中的属性值或列值。 + 具有指定的类型和参数的一个新的 DbNewInstanceExpression。 + 新实例的类型。 + 指定新实例的值的表达式,根据实例的类型对其进行解释。 + instanceTypeargumentsarguments + + 为 null,或者 包含 null。 + + + 创建一个新的 ,它构造一个包含指定元素的集合。集合的类型基于元素的通用类型。如果不存在通用元素类型,将引发异常。 + 具有指定的集合类型和参数的一个新的 DbNewInstanceExpression。 + 提供集合元素的表达式列表。 + + 为 null 或包含 null。 + + 为空,或包含不存在通用结果类型的表达式。 + + + 创建一个新的 ,它构造一个包含指定元素的集合。集合的类型基于元素的通用类型。如果不存在通用元素类型,将引发异常。 + 具有指定的集合类型和参数的一个新的 DbNewInstanceExpression。 + 提供集合元素的表达式列表。 + + 为 null 或包含 null。 + + 为空,或包含不存在通用结果类型的表达式。 + + + 创建一个新的 ,它构造指定集合类型的空集合。 + 具有指定的集合类型和空 Arguments 列表的一个新的 DbNewInstanceExpression。 + 要创建的集合的类型元数据。 + + 为 null。 + + 不是集合类型。 + + + 创建一个新的 ,它生成具有指定的命名列和给定值并且指定为表达式的一行。 + 表示行的构造的一个新的 DbNewInstanceExpression。 + 定义行的结构和值的字符串-DbExpression 键/值对的列表。 + + 为 null,或者包含具有 null 列名或表达式的元素。 + + 为空,或包含重复的或无效的列名称。 + + + 创建一个 ,它对给定的参数执行逻辑求反运算。 + 使用指定参数的一个新的 DbNotExpression。 + 一个指定参数的布尔表达式。 + + 为 null。 + 参数不具有布尔结果类型。 + + + 创建一个新的 ,它比较左边参数和右边参数是否不相等。 + 表示不相等比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行相等比较的结果类型。 + + + 创建一个新的 ,它表示类型化的 null 值。 + DbNullExpression 的实例。 + null 值的类型。 + + 为 null。 + + + 创建一个新的 ,它生成一个集,该集由属于指定类型的给定输入集的元素构成。 + 具有指定的集参数和类型以及 为 ExpressionKind 的一个新的 DbOfTypeExpression。 + 指定输入集的 。 + 要使输入集的元素包括在结果集中,这些元素必须具有的类型的类型元数据。 + + 为 null。 + + 不具有集合结果 ,或者类型所处于的类型层次结构与 的集合结果类型的元素类型不同。 + + + 创建一个新的 ,它生成一个集,该集由恰好属于指定类型的给定输入集的元素构成。 + 具有指定的集参数和类型以及 为 ExpressionKind 的一个新的 DbOfTypeExpression。 + 指定输入集的 。 + 要使输入集的元素包括在结果集中,这些元素必须严格匹配的类型的类型元数据。 + + 为 null。 + + 不具有集合结果 ,或者类型所处于的类型层次结构与 的集合结果类型的元素类型不同。 + + + 创建一个 ,它对左边参数和右边参数执行逻辑或运算。 + 具有指定参数的一个新的 DbOrExpression。 + 指定左边参数的布尔表达式。 + 指定右边参数的布尔表达式。 + leftright + leftright + + + 创建一个新的 ,它使用升序排序顺序和默认排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的结果类型。 + + + 创建一个新的 ,它使用升序排序顺序和指定排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 创建一个新的 ,它使用降序排序顺序和默认排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + + 创建一个新的 ,它使用降序排序顺序和默认排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。其 计算结果为空集的行具有值为 null 的 apply 列值。 + 具有指定的输入和应用绑定且 OuterApply 为 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个方法,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + 没有集合结果类型。 + apply 的结果包含为 null 的名称或表达式。 + apply 的结果包含在表达式绑定中无效的名称或表达式。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。其 计算结果为空集的行具有值为 null 的 apply 列值。 + 具有指定的输入和应用绑定且 OuterApply 为 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个 ,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + + 创建一个新的 ,它使用指定的名称和类型引用参数。 + 表示对具有指定名称和类型的参数的引用的 DbParameterReferenceExpression;表达式的结果类型将与 相同。 + 引用参数的类型。 + 引用参数的名称。 + + + 创建一个新的 ,它将左边参数与右边参数相加。 + 表示加法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + left 与 right 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它对给定的输入集投影指定的表达式。 + 表示投影运算的一个新的 DbProjectExpression。 + 一个指定输入集的表达式绑定。 + 要对集投影的表达式。 + + 为 null。 + + + 创建一个新的 ,它表示对指定属性的检索。 + 表示属性检索的一个新的 DbPropertyExpression。 + 要从中检索属性的实例。如果该属性是静态的,则可能为 null。 + 要检索的属性的元数据。 + + 为 null,或者 为 null 并且属性不是静态的。 + + + 创建一个新的 ,它表示对指定导航属性的检索。 + 表示导航属性检索的一个新的 DbPropertyExpression。 + 要从中检索导航属性的实例。 + 要检索的导航属性的元数据。 + + 为 null 或 为 null。 + + + 创建一个新的 ,它表示对指定关系端成员的检索。 + 表示关系端成员检索的一个新的 DbPropertyExpression。 + 要从中检索关系端成员的实例。 + 要检索的关系端成员的元数据。 + + 为 null,或者 为 null 并且属性不是静态的。 + + + 创建一个新的 ,它表示从给定实例中检索具有指定名称的实例属性。 + 表示属性检索的一个新的 DbPropertyExpression。 + 要从中检索属性的实例。 + 要检索的属性的名称。 + + 为 null,或者 为 null 并且属性不是静态的。 + 没有具有指定名称的属性是由 类型声明的。 + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 一个 ,它使用与引用的实体类型的 Key 属性在数目、类型和顺序上相匹配的列构造一个记录。 + + 为 null。 + keyRow + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 一个 ,它使用与引用的实体类型的 Key 属性在数目、类型和顺序上相匹配的列构造一个记录。 + 引用应针对的实体的类型。 + + 为 null。 + + 与实体集的实体类型不处于相同的类型层次结构,或者 不具有与引用的实体集的实体类型的键属性匹配的记录结果类型。 + + + 创建一个新的 ,它引用指定的实体集或关系集。 + 基于指定的实体或关系集的一个新的 DbScanExpression。 + 要引用的实体或关系集的元数据。 + + 为 null。 + + + 创建一个新的 ,它对给定的输入集选择指定的表达式。 + 表示选择运算的一个新的 DbProjectExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生投影的表达式。此方法必须生成与 Select 兼容且可以解析为 的类型的实例。备注中说明了针对 的兼容性要求。 + + 的方法结果类型。 + + 为 null + + 的结果为 null。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。然后创建了 ,它对每一行选择指定的 ,并且生成结果的整个集合。 + 一个新的 DbProjectExpression,它从具有指定输入和应用绑定且 CrossApply 为 的一个新的 DbApplyExpression 中选择 apply 列。 + 指定输入集的 。 + 一个方法,它表示要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有集合类型。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。然后创建了 ,它对每一行选择指定的 ,并且生成结果的整个集合。 + 一个新的 DbProjectExpression,它从具有指定输入和应用绑定且 CrossApply 为 的一个新的 DbApplyExpression 中选择给定选择器的结果。 + 指定输入集的 。 + 一个方法,它表示要对输入集的每个成员计算一次的逻辑。 + 一个方法,它指定如何在给定输入集和应用集的元素的情况下派生结果集的元素。此方法必须生成与 SelectMany 兼容且可以解析为 的类型的实例。备注中说明了针对 的兼容性要求。 + + 的方法结果类型。 + + 为 null。 + 生成的表达式为 null。 + 在转换为 DbExpression 时 的结果为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有集合类型。 + + + 创建一个表示将属性设置为值的新 + 新创建的 set 子句。 + 要设置的属性。 + 要将属性设置为的值。 + + + 创建一个新的 ,它在跳过指定数目的元素之前,按照指定的排序规范对给定的输入集进行排序。 + 表示跳过操作的一个新的 DbSkipExpression。 + 一个指定输入集的表达式绑定。 + 确定应如何对输入集元素进行排序的排序规范列表。 + 一个表达式,它指定要在有序集中跳过的元素数目。 + + 为 null,或者 包含 null。 + + 为空,或者 不是 ,或者具有不等同于或不能提升为 64 位整数类型的结果类型。 + + + 创建一个新的 ,它从给定的有序输入集中跳过指定数目的元素。 + 表示跳过操作的一个新的 DbSkipExpression。 + 指定有序输入集的 。 + 一个表达式,它指定要在有序集中跳过的元素数目。 + + 为 null。 + + 不是 ,或者具有不等同于或不能提升为 64 位整数类型的结果类型。 + + + 创建一个新的 ,它按照指定的排序规范对给定的输入集进行排序。 + 表示排序运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式绑定。 + 确定应如何对输入集元素进行排序的排序规范列表。 + + 为 null,或者 包含 null。 + + 为空。 + + + 创建一个新的 ,它将参数集合中的元素数目限制为指定的计数限值。输出中不包括等值结果。 + 一个新的 DbLimitExpression,它具有指定参数以及不包括等值结果的计数限值。 + 一个指定输入集合的表达式。 + 指定限值的表达式。 + + 为 null。 + + 不具有集合结果类型,或者 不具有等同于或可提升为 64 位整数类型的结果类型。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按升序排序顺序的指定排序键和默认排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的结果类型。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按升序排序顺序的指定排序键和指定的排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按降序排序顺序的指定排序键和默认排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的结果类型。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按降序排序顺序的指定排序键和指定的排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 使用升序排序顺序和默认排序规则创建一个新的 + 使用给定的排序关键字和升序排序顺序的一个新的排序子句。 + 定义排序键的表达式。 + + 为 null。 + + 不具有可比较顺序的结果类型。 + + + 使用升序排序顺序和指定的排序规则创建一个新的 + 具有给定的排序键和排序规则以及升序排序顺序的一个新的排序语句。 + 定义排序键的表达式。 + 排序所依据的排序规则。 + + 为 null。 + + 为空,或者只包含空白字符。 + + 不具有可比较顺序的结果类型。 + + + 使用降序排序顺序和默认排序规则创建一个新的 + 具有给定排序键和降序排序顺序的一个新的排序语句。 + 定义排序键的表达式。 + + 为 null。 + + 不具有可比较顺序的结果类型。 + + + 使用降序排序顺序和指定的排序规则创建一个新的 + 具有给定的排序键和排序规则以及降序排序顺序的一个新的排序语句。 + 定义排序键的表达式。 + 排序所依据的排序规则。 + + 为 null。 + + 为空,或者只包含空白字符。 + + 不具有可比较顺序的结果类型。 + + + 创建一个新的 + 具有指定的参数和类型的一个新的 DbTreatExpression。 + 指定实例的表达式。 + treat-as 类型的类型元数据。 + + 为 null。 + + 的结果类型不处于相同的类型层次结构中。 + + + 使用布尔值 true 创建一个 + 带布尔值 true 的 + + + 创建一个新的 ,它对参数值求反。 + 表示求反运算的一个新的 DbArithmeticExpression。 + 指定参数的表达式。 + + 为 null。 + 不存在针对 的任何数值结果类型。 + + + 创建一个新的 ,它计算左边集参数和右边集参数的并集并且删除了重复项。 + 一个新的 DbExpression,它计算左边参数和右边参数的并集,并且不含重复项。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 为 null。 + + 之间不存在具有可进行相等比较的元素类型的任何常用集合结果类型。 + + + 创建一个新的 ,它计算左边集参数和右边集参数的并集且不删除重复项。 + 一个新的 DbUnionAllExpression,它是左边参数和右边参数的并集并且包括重复项。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 为 null。 + + 之间不存在任何常用集合结果类型。 + + + 创建一个新的 ,它使用指定的名称和类型引用变量。 + 一个 DbVariableReferenceExpression,它表示对具有指定名称和类型的变量的引用;表达式的结果类型将与 相同。 + 引用变量的类型。 + 引用变量的名称。 + + + 创建一个新的 ,它使用指定的谓词筛选给定输入集中的元素。 + 表示 Any 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式。 + 一个方法,它表示要为输入集的每个成员计算的谓词。此方法必须生成一个表达式,该表达式具有提供谓词逻辑的 Boolean 结果类型。 + + 为 null。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 提供一个用于构造调用规范 EDM 函数的 的 API,并且允许该 API 作为针对表达式类型本身的扩展方法来访问。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有数值结果类型)调用规范“Abs”函数。表达式的结果类型与 的结果类型相同。 + 返回 的绝对值的一个新的 DbFunctionExpression。 + 一个指定数值的表达式。 + + 为 null。 + 没有规范“Abs”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime 或 DateTimeOffset 以及整数结果类型)调用规范“AddDays”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的天数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的天数。 + + 为 null。 + 没有规范“AddDays”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddHours”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的小时数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的小时数。 + + 为 null。 + 没有规范“AddHours”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddMicroseconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的微秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的微秒数。 + + 为 null。 + 没有规范“AddMicroseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddMilliseconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的毫秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的毫秒数。 + + 为 null。 + 没有规范“AddMilliseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddMinutes”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的分钟数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的分钟数。 + + 为 null。 + 没有规范“AddMinutes”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime 或 DateTimeOffset 以及整数结果类型)调用规范“AddMonths”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的月份数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的月份数。 + + 为 null。 + 没有规范“AddMonths”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddNanoseconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的纳秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的纳秒数。 + + 为 null。 + 没有规范“AddNanoseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddSeconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的秒数。 + + 为 null。 + 没有规范“AddSeconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime 或 DateTimeOffset 以及整数结果类型)调用规范“AddYears”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的年份数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的年份数。 + + 为 null。 + 没有规范“AddYears”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Avg”函数。表达式的结果类型与集合的元素类型相同。 + 生成平均值的新的 DbFunctionExpression。 + 一个表达式,它指定应计算平均值的集合。 + + 为 null。 + 没有规范“Avg”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有相同的整数结果类型)调用规范“BitwiseAnd”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位与运算生成的值。 + 指定第一个操作数的表达式。 + 指定第二个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseAnd”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有整数结果类型)调用规范“BitwiseNot”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位取非运算生成的值。 + 指定第一个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseNot”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有相同的整数结果类型)调用规范“BitwiseOr”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位或运算生成的值。 + 指定第一个操作数的表达式。 + 指定第二个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseOr”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有相同的整数结果类型)调用规范“BitwiseXor”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位异或(异或)运算生成的值。 + 指定第一个操作数的表达式。 + 指定第二个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseXor”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有单精度、双精度或十进制结果类型)调用规范“Ceiling”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回不小于 的最小整数值。 + 一个指定数值的表达式。 + + 为 null。 + 没有规范“Ceiling”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“Concat”函数。表达式的结果类型为字符串。 + 一个生成串联字符串的新的 DbFunctionExpression。 + 一个表达式,它指定在串连结果字符串中应在最前面出现的字符串。 + 一个表达式,它指定在串连结果字符串中应在第二位出现的字符串。 + + 为 null。 + 没有规范“Concat”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“Contains”函数。表达式的结果类型为 Boolean。 + 一个新的 DbFunctionExpression,它返回指示 是否在 之内出现的布尔值。 + 一个表达式,它指定要从中搜索出现的任何 的字符串。 + 一个表达式,它指定要在 中搜索的字符串。 + + 为 null。 + 没有规范“Contains”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Count”函数。表达式的结果类型为 Edm.Int32。 + 生成计数值的新的 DbFunctionExpression。 + 一个表达式,它指定应对其计算计数值的集合。 + + 为 null。 + 没有规范“Count”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数调用规范“CreateDateTime”函数。 必须具有结果类型 Edm.Double,所有其他参数必须具有结果类型 Edm.Int32。表达式的结果类型为 Edm.DateTime。 + 一个新 DbFunctionExpression,它基于指定的值返回新的 DateTime。 + 一个表达式,它为新的 DateTime 实例提供年份值。 + 一个表达式,它为新的 DateTime 实例提供月份值。 + 一个表达式,它为新的 DateTime 实例提供日期值。 + 一个表达式,它为新的 DateTime 实例提供小时值。 + 一个表达式,它为新的 DateTime 实例提供分钟值。 + 一个表达式,它为新的 DateTime 实例提供秒钟值。 + + 为 null。 + 没有规范“CreateDateTime”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数调用规范“CreateDateTimeOffset”函数。 必须具有结果类型 Edm.Double,所有其他参数必须具有结果类型 Edm.Int32。表达式的结果类型为 Edm.DateTimeOffset。 + 一个新 DbFunctionExpression,它基于指定的值返回新的 DateTimeOffset。 + 一个表达式,它为新的 DateTimeOffset 实例提供年份值。 + 一个表达式,它为新的 DateTimeOffset 实例提供月份值。 + 一个表达式,它为新的 DateTimeOffset 实例提供日期值。 + 一个表达式,它为新的 DateTimeOffset 实例提供小时值。 + 一个表达式,它为新的 DateTimeOffset 实例提供分钟值。 + 一个表达式,它为新的 DateTimeOffset 实例提供秒钟值。 + 一个表达式,它为新的 DateTimeOffset 实例按时区偏移量值提供分钟数。 + + 为 null。 + 没有规范“CreateDateTimeOffset”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数调用规范“CreateTime”函数。 必须具有结果类型 Edm.Double,所有其他参数必须具有结果类型 Edm.Int32。表达式的结果类型为 Edm.Time。 + 一个新 DbFunctionExpression,它基于指定的值返回新的时间。 + 一个表达式,它为新的 DateTime 实例提供小时值。 + 一个表达式,它为新的 DateTime 实例提供分钟值。 + 一个表达式,它为新的 DateTime 实例提供秒钟值。 + + 为 null。 + 没有规范“CreateTime”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它调用规范“CurrentDateTime”函数。 + 一个新的 DbFunctionExpression,它将当前日期和时间作为 Edm.DateTime 实例返回。 + + + 创建一个 ,它调用规范“CurrentDateTimeOffset”函数。 + 一个新的 DbFunctionExpression,它将当前日期和时间作为 Edm.DateTimeOffset 实例返回。 + + + 创建一个 ,它调用规范“CurrentUtcDateTime”函数。 + 一个新的 DbFunctionExpression,它将当前 UTC 日期和时间作为 Edm.DateTime 实例返回。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“Day”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数日期值。 + 一个表达式,它指定应从中检索日期的值。 + + 为 null。 + 没有规范“Day”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DayOfYear”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回年份值的整数日期。 + 一个表达式,它指定应从中检索日期(以一年中的第几天表示)的值。 + + 为 null。 + 没有规范“DayOfYear”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DiffDays”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的天数差。 + 一个表达式,它指定第一个 DateTime 或 DateTimeOffset 值。 + 一个表达式,它指定应为其计算距离 的天数差的 DateTime 或 DateTimeOffset。 + + 为 null。 + 没有规范“DiffDays”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffHours”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的小时差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的小时差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffHours”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffMicroseconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的微秒差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的微秒差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffMicroseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffMilliseconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的毫秒差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的毫秒差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffMilliseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffMinutes”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的分钟差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的分钟差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffMinutes”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DiffMonths”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的月份差。 + 一个表达式,它指定第一个 DateTime 或 DateTimeOffset 值。 + 一个表达式,它指定应为其计算距离 的月份差的 DateTime 或 DateTimeOffset。 + + 为 null + 没有规范“DiffMonths”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffNanoseconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的纳秒差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的纳秒差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffNanoseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffSeconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的秒钟差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的秒钟差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffSeconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DiffYears”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的年份差。 + 一个表达式,它指定第一个 DateTime 或 DateTimeOffset 值。 + 一个表达式,它指定应为其计算距离 的年份差的 DateTime 或 DateTimeOffset。 + + 为 null。 + 没有规范“DiffYears”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“EndsWith”函数。表达式的结果类型为 Boolean。 + 一个新的 DbFunctionExpression,它指示 是否以 结尾。 + 一个表达式,指定要在其中查找指定的 的字符串。 + 一个表达式,指定应在 中查找的后缀。 + + 为 null。 + 没有规范“EndsWith”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有单精度、双精度或十进制结果类型)调用规范“Floor”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回不大于 的最大整数值。 + 一个指定数值的表达式。 + + 为 null。 + 没有规范“Floor”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTimeOffset 结果类型)调用规范“GetTotalOffsetMinutes”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 相对于 GMT 的偏移分钟数。 + 一个表达式,它指定应从中检索相对于 GMT 的偏移分钟数的 DateTimeOffset 值。 + + 为 null。 + 没有规范“GetTotalOffsetMinutes”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Hour”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数小时值。 + 一个表达式,它指定应从中检索小时的值。 + + 为 null。 + 没有规范“Hours”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“IndexOf”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 的第一个索引。 + 一个表达式,它指定要在 中搜索的字符串。 + 一个表达式,它指定应检查的位于 内的字符串。 + + 为 null。 + 没有规范“IndexOf”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串和整数结果类型)调用规范“Left”函数。表达式的结果类型为字符串。 + 一个新的 DbFunctionExpression,它从 中返回长度为 的最左侧子字符串。 + 一个表达式,它指定要从中提取最左侧子字符串的字符串。 + 一个表达式,它指定要从 中提取的最左侧子字符串的长度。 + + 为 null。 + 没有规范“Left”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“Length”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回 的长度。 + 一个表达式,它指定应计算其长度的字符串。 + + 为 null。 + 没有规范“Length”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“BigCount”函数。表达式的结果类型为 Edm.Int64。 + 生成计数值的新的 DbFunctionExpression。 + 一个表达式,它指定应对其计算计数值的集合。 + + 为 null。 + 没有规范“BigCount”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Max”函数。表达式的结果类型与集合的元素类型相同。 + 生成最大值的新的 DbFunctionExpression。 + 一个表达式,它指定应从中检索最大值的集合。 + + 为 null。 + 没有规范“Max”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Millisecond”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 中返回整数毫秒值。 + 一个表达式,它指定应从中检索毫秒的值。 + + 为 null。 + 没有规范“Millisecond”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Min”函数。表达式的结果类型与集合的元素类型相同。 + 生成最小值的新的 DbFunctionExpression。 + 一个表达式,它指定应从中检索最小值的集合。 + + 为 null。 + 没有规范“Min”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Minute”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数分钟值。 + 一个表达式,它指定应从中检索分钟的值。 + + 为 null。 + 没有规范“Minute”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“Month”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数月份值。 + 一个表达式,它指定应从中检索月份的值。 + + 为 null。 + 没有规范“Month”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它调用规范“NewGuid”函数。 + 返回新的 GUID 值的新的 DbFunctionExpression。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有数值结果类型)调用规范“Power”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回按 指定的幂次执行幂运算的 的值。 + 一个表达式,它指定要计算给定幂次的数值。 + 一个表达式,它指定应对 进行幂运算的幂值。 + + 为 null。 + 没有规范“Power”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“Replace”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它基于 返回一个新字符串,其中,出现的每个 都会被 替代。 + 一个表达式,它指定要在其中执行替代操作的字符串。 + 指定要替代的字符串的表达式。 + 指定替代字符串的表达式。 + + 为 null。 + 没有规范“Replace”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“Reverse”函数。表达式的结果类型也为字符串。 + 一个 DbFunctionExpression,它生成 的颠倒顺序的值。 + 指定要颠倒顺序的字符串的表达式。 + + 为 null。 + 没有规范“Reverse”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串和整数结果类型)调用规范“Right”函数。表达式的结果类型为字符串。 + 一个新的 DbFunctionExpression,它从 中返回长度为 的最右侧子字符串。 + 一个表达式,它指定要从中提取最右侧子字符串的字符串。 + 一个表达式,它指定要从 中提取的最右侧子字符串的长度。 + + 为 null。 + 没有规范“Right”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有单精度、双精度或十进制结果类型)调用规范“Round”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将指定的参数舍入为最接近的整数值。 + 指定要舍入的数值的表达式。 + + 为 null。 + 没有规范“Round”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有单精度、双精度或十进制以及整数结果类型)调用规范“Round”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它按照 指定的精度将指定的参数舍入为最接近的整数值。 + 指定要舍入的数值的表达式。 + 一个表达式,它指定在舍入时要使用的精度的位数。 + + 为 null + 没有规范“Round”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Second”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数秒钟值。 + 一个表达式,它指定应从中检索秒钟的值。 + + 为 null。 + 没有规范“Second”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“StartsWith”函数。表达式的结果类型为 Boolean。 + 一个新的 DbFunctionExpression,它指示 是否以 开头。 + 一个表达式,指定要在其中查找指定的 的字符串。 + 一个表达式,指定应在 中查找的前缀。 + + 为 null。 + 没有规范“StartsWith”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的非 null 成员调用规范“StDev”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它对集合的非 null 成员生成标准偏差值。 + 一个表达式,它指定应计算标准偏差的集合。 + + 为 null。 + 没有规范“StDev”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的总体调用规范“StDevP”函数。表达式的结果类型为 Edm.Double。 + 生成标准偏差值的新的 DbFunctionExpression。 + 一个表达式,它指定应计算标准偏差的集合。 + + 为 null。 + 没有规范“StDevP”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串和整数结果类型)调用规范“Substring”函数。表达式的结果类型为字符串。 + 一个新的 DbFunctionExpression,它从 中返回以 开头的长度为 的子字符串。 + 一个表达式,它指定要从中提取子字符串的字符串。 + 一个表达式,它指定要从其获取子字符串的起始索引。 + 一个表达式,它指定子字符串的长度。 + + 为 null。 + 没有规范“Substring”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Sum”函数。表达式的结果类型与集合的元素类型相同。 + 生成总和的新的 DbFunctionExpression。 + 一个表达式,它指定应计算总和的集合。 + + 为 null。 + 没有规范“Sum”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“ToLower”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回转换为小写的 的值。 + 一个表达式,它指定应转换为小写的字符串。 + + 为 null。 + 没有规范“ToLower”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“ToUpper”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回转换为大写的 的值。 + 一个表达式,它指定应转换为大写的字符串。 + + 为 null。 + 没有规范“ToUpper”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“Trim”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回删除了前导和尾随空格的 的值。 + 一个表达式,它指定应删除其前导和尾随空格的字符串。 + + 为 null。 + 没有规范“Trim”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“RTrim”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回删除了尾随空格的 的值。 + 一个表达式,它指定应删除其尾随空格的字符串。 + + 为 null。 + 没有规范“RTrim”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“LTrim”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回删除了前导空格的 的值。 + 一个表达式,它指定应删除其前导空格的字符串。 + + 为 null。 + 没有规范“LTrim”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有单精度、双精度或十进制以及整数结果类型)调用规范“Truncate”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它按照 指定的精度将指定的参数截断为最接近的整数值。 + 一个表达式,它指定要截断的数值。 + 一个表达式,它指定要在截断时要使用的精度位数。 + + 为 null。 + 没有规范“Truncate”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“TruncateTime”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回其时间设置为零的 的值。 + 一个表达式,它指定应截断其时间部分的值。 + + 为 null。 + 没有规范“TruncateTime”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的非 null 成员调用规范“Var”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它生成集合的非 null 成员的方差值。 + 一个表达式,它指定应计算其方差的集合。 + + 为 null。 + 没有规范“Var”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的总体调用规范“VarP”函数。表达式的结果类型为 Edm.Double。 + 生成方差值的新的 DbFunctionExpression。 + 一个表达式,它指定应计算其方差的集合。 + + 为 null。 + 没有规范“VarP”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“Year”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数年份值。 + 一个表达式,它指定应从中检索年份的值。 + + 为 null。 + 没有规范“Year”函数的重载接受结果类型为 的参数。 + + + 表示 Row 类,它旨在提供用于调用 <see cref="M:System.Data.Entity.Core.Common.CommandTrees.ExpressionBuilder.DbExpressionBuilder.NewRow(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Data.Entity.Core.Common.CommandTrees.DbExpression}})" /> 的类似构造函数的方法。 + + + 使用指定的第一列值和可选的连续列值来初始化 类的新实例。 + 提供新的行实例中的第一列的键/值对(必需)。 + 提供新的行实例中的任何后续列的键/值对(可选)。 + + + 将一个 Row 对象转换成 + 表示转换后的 Row 对象的 + Row 对象。 + + + 创建一个新的 ,它基于此行实例中包含的列构造一个新行。 + 一个新的 DbNewInstanceExpression,它使用与此行实例相同的列名和 DbExpression 值构造一行。 + + + 提供一个 API 以便构造调用空间相关的规范 EDM 函数的 ,并且在适用时允许该 API 作为针对表达式类型本身的扩展方法来访问。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Area”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的区域,如果 spatialValue 不是图面,则返回 null。 + 一个表达式,它指定应为其计算面积的空间表面值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“AsBinary”函数。表达式的结果类型为 Edm.Binary。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的已知二进制表示形式。 + 一个表达式,它指定应从其生成已知二进制表示形式的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“AsGml”函数。表达式的结果类型为 Edm.String。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的地理标记语言 (GML) 表示形式。 + 一个表达式,它指定应从其生成地理标记语言 (GML) 表示形式的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“AsText”函数。表达式的结果类型为 Edm.String。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的已知文本表示形式。 + 一个表达式,它指定应从其生成已知文本表示形式的空间值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“Centroid”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的形心点(可能不在图面本身上),如果 geometryValue 不是图面,则返回 null。 + 一个表达式,它指定应从其检索形心的几何表面值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“CoordinateSystemId”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 spatialValue 返回整数 SRID 值。 + 一个表达式,它指定应从其检索坐标系 ID (SRID) 的值。 + + + 创建一个 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Distance”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue1 和 spatialValue1 最近两点之间的距离。 + 指定第一个空间值的表达式。 + 一个表达式,它指定将测量其与 spatialValue1 之间距离的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Elevation”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的海拔值,如果 spatialValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索海拔(Z 坐标)值的空间点值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“EndPoint”函数。结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的结束点,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索端点的空间曲线值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“ExteriorRing”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回多边形 geometryValue 的外部环,如果 geometryValue 不是多边形,则返回 null。 + 几何值。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyCollectionFromBinary”函数。geographyCollectionWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理集合值。 + 提供地理集合值的已知二进制表示形式的表达式。 + 提供地理集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyCollectionFromText”函数。geographyCollectionWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理集合值。 + 提供地理集合值的已知文本表示形式的表达式。 + 提供地理集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有二进制结果类型)调用规范“GeographyFromBinary”函数。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的二进制值返回新的地理值。 + 提供地理值的已知二进制表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyFromBinary”函数。wellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的已知二进制表示形式的表达式。 + 提供地理值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeographyFromGml”函数。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于具有基础提供程序的默认坐标系 ID (SRID) 的指定值返回新的地理值。 + 提供地理值的地理标记语言 (GML) 表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyFromGml”函数。geographyMarkup 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的地理标记语言 (GML) 表示形式的表达式。 + 提供地理值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeographyFromText”函数。表达式的结果类型为 Edm.Geography。其值具有基础提供程序的默认坐标系 ID (SRID)。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的已知文本表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyFromText”函数。wellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的已知文本表示形式的表达式。 + 提供地理值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyLineFromBinary”函数。lineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理线条值。 + 提供地理线条值的已知二进制表示形式的表达式。 + 提供地理线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyLineFromText”函数。lineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理线条值。 + 提供地理线条值的已知文本表示形式的表达式。 + 提供地理线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiLineFromBinary”函数。multiLineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多线条值。 + 提供地理多线条值的已知二进制表示形式的表达式。 + 提供地理多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiLineFromText”函数。multiLineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多线条值。 + 提供地理多线条值的已知文本表示形式的表达式。 + 提供地理多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPointFromBinary”函数。multiPointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多点值。 + 提供地理多点值的已知二进制表示形式的表达式。 + 提供地理多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPointFromText”函数。multiPointWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多点值。 + 提供地理多点值的已知文本表示形式的表达式。 + 提供地理多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPolygonFromBinary”函数。multiPolygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多多边形值。 + 提供地理多多边形值的已知二进制表示形式的表达式。 + 提供地理多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPolygonFromText”函数。multiPolygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多多边形值。 + 提供地理多多边形值的已知文本表示形式的表达式。 + 提供地理多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPointFromBinary”函数。pointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理点值。 + 提供地理点值的已知二进制表示形式的表达式。 + 提供地理多点值的 systempointWellKnownBinaryValue 的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPointFromText”函数。 + 规范的“GeographyPointFromText”函数。 + 提供地理点值的已知文本表示形式的表达式。 + 提供地理点值的坐标 systempointWellKnownTextValue 的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPolygonFromBinary”函数。polygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多边形值。 + 提供地理多边形值的已知二进制表示形式的表达式。 + 提供地理多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPolygonFromText”函数。polygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多边形值。 + 提供地理多边形值的已知文本表示形式的表达式。 + 提供地理多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryCollectionFromBinary”函数。geometryCollectionWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何集合值。 + 提供几何集合值的已知二进制表示形式的表达式。 + 提供几何集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryCollectionFromText”函数。geometryCollectionWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何集合值。 + 提供几何集合值的已知文本表示形式的表达式。 + 提供几何集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有二进制结果类型)调用规范“GeometryFromBinary”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的二进制值返回新的几何值。 + 提供几何值的已知二进制表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryFromBinary”函数。wellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的已知二进制表示形式的表达式。 + 提供几何值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeometryFromGml”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于具有基础提供程序的默认坐标系 ID (SRID) 的指定值返回新的几何值。 + 提供几何值的地理标记语言 (GML) 表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryFromGml”函数。geometryMarkup 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的地理标记语言 (GML) 表示形式的表达式。 + 提供几何值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeometryFromText”函数。表达式的结果类型为 Edm.Geometry。其值具有基础提供程序的默认坐标系 ID (SRID)。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的已知文本表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryFromText”函数。wellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的已知文本表示形式的表达式。 + 提供几何值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryLineFromBinary”函数。lineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何线条值。 + 提供几何线条值的已知二进制表示形式的表达式。 + 提供几何线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryLineFromText”函数。lineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何线条值。 + 提供几何线条值的已知文本表示形式的表达式。 + 提供几何线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiLineFromBinary”函数。multiLineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多线条值。 + 提供几何多线条值的已知二进制表示形式的表达式。 + 提供几何多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiLineFromText”函数。multiLineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多线条值。 + 提供几何多线条值的已知文本表示形式的表达式。 + 提供几何多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPointFromBinary”函数。multiPointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多点值。 + 提供几何多点值的已知二进制表示形式的表达式。 + 提供几何多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPointFromText”函数。multiPointWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多点值。 + 提供几何多点值的已知文本表示形式的表达式。 + 提供几何多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPolygonFromBinary”函数。multiPolygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多多边形值。 + 提供几何多多边形值的已知二进制表示形式的表达式。 + 提供几何多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPolygonFromText”函数。multiPolygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多多边形值。 + 提供几何多多边形值的已知文本表示形式的表达式。 + 提供几何多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPointFromBinary”函数。pointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何点值。 + 提供几何点值的已知二进制表示形式的表达式。 + 提供几何点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPointFromText”函数。pointWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何点值。 + 提供几何点值的已知文本表示形式的表达式。 + 提供几何点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPolygonFromBinary”函数。polygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多边形值。 + 提供几何多边形值的已知二进制表示形式的表达式。 + 提供几何多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPolygonFromText”函数。polygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多边形值。 + 提供几何多边形值的已知文本表示形式的表达式。 + 提供几何多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“InteriorRingAt”函数。第一个参数必须具有 Edm.Geometry 结果类型。第二个参数必须具有整数结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 中位置 indexValue 处的内部环,如果 geometryValue 不是多边形,则返回 null。 + 几何值。 + 一个表达式,它指定要从多边形中检索的内部环的位置。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“InteriorRingCount”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回多边形 geometryValue 中的内部环数,如果 geometryValue 不是多边形,则返回 null。 + 几何值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“IsClosedSpatial”函数。结果类型是 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue 是否闭合的布尔值,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索 IsClosedSpatial 值的空间曲线值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“IsEmptySpatial”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue 是否为空的布尔值。 + 一个表达式,它指定应从其检索 IsEmptySptiaal 值的空间值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“IsRing”函数。结果类型是 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue 是否为圆环(闭合和简单)的布尔值,如果 geometryValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索 IsRing 值的几何曲线值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“IsSimpleGeometry”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue 是否为简单几何图形的布尔值。 + 几何值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“IsValidGeometry”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue 是否有效的布尔值。 + 指定应进行空间有效性测试的几何值的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geography 结果类型)调用规范“Latitude”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geographyValue 的纬度值,如果 geographyValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 Latitude 值的地理点值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geography 结果类型)调用规范“Longitude”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geographyValue 的经度值,如果 geographyValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 Longitude 值的地理点值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Measure”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的度量值,如果 spatialValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索测量 (M) 坐标值的空间点值。 + + + 创建一个 ,它使用指定的参数调用规范“PointAt”函数。第一个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型。第二个参数必须具有整数结果类型。表达式的结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中位置 indexValue 处的点,如果 spatialValue 不是线串,则返回 null。 + 指定空间线串值的表达式。 + 指定要从线串内检索的点的位置的表达式。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“PointCount”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中点的数目,如果 spatialValue 不是线串,则返回 null。 + 一个表达式,它指定应从其检索点的数目的空间线串值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“PointOnSurface”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回保证位于图面 geometryValue 上的点,如果 geometryValue 不是图面,则返回 null。 + 一个表达式,它指定应从其检索点的几何表面值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialBoundary”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的边界。 + 一个表达式,它指定应从其检索 SpatialBoundary 值的几何值。 + + + 创建 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 和 Edm.Double 结果类型)调用规范“SpatialBuffer”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回一个几何值,该值表示小于或等于与 spatialValue 的距离的所有点。 + 一个指定空间值的表达式。 + 一个指定缓冲距离的表达式。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialContains”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否在空间上包含 geometryValue2 的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialConvexHull”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的凸包。 + 一个表达式,它指定应从其检索凸包值的几何值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialCrosses”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否与 geometryValue2 相交的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialDifference”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 与 spatialValue2 之间的差异的几何值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应计算与 spatialValue1 之间的差异的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialDimension”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 spatialValue 返回维度值。 + 一个表达式,它指定应从其检索 Dimension 值的值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialDisjoint”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue1 与 spatialValue2 是否在空间上不相交的布尔值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应与 spatialValue1 进行不相交性比较的空间值。 + + + 创建一个 ,它使用指定的参数调用规范“SpatialElementAt”函数。第一个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型。第二个参数必须具有整数结果类型。表达式的结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中位置 indexValue 处的集合元素,如果 spatialValue 不是集合,则返回 null。 + 一个表达式,它指定地理或几何集合值。 + 一个表达式,它指定要从几何或地理集合中检索的元素的位置。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialElementCount”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中元素的数目,如果 spatialValue 不是集合,则返回 null。 + 一个表达式,它指定应从其检索某个数目的元素的地理或几何集合值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialEnvelope”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的最小边框。 + 一个表达式,它指定应从其检索 Envelope 值的值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialEquals”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue1 是否与 spatialValue2 相等的布尔值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应与 spatialValue1 比较是否相等的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialIntersection”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 和 spatialValue2 的交集的空间值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定要计算与 spatialValue1 的交集的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialIntersects”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue1 是否与 spatialValue2 相交的布尔值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应与 spatialValue1 进行相交性比较的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialLength”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的长度,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索长度的空间曲线值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialOverlaps”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否在空间上与 geometryValue2 重叠的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建 ,它使用指定参数(参数必须具有 Edm.Geometry 和字符串结果类型)调用规范“SpatialRelate”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回一个布尔值,该值根据 intersectionPatternMatrix 指定的空间关系指示 geometryValue1 在空间上是否与 geometryValue2 相关。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + 一个表达式,它指定用于比较 geometryValue1 和 geometryValue2 的维度扩展九交模型 (DE-9IM) 交集模式的文本表示形式。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialSymmetricDifference”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 与 spatialValue2 之间的对称差异的几何值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应计算与 spatialValue1 之间的对称差异的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialTouches”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否与 geometryValue2 接触的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialTypeName”函数。表达式的结果类型为 Edm.String。 + 一个新的 DbFunctionExpression,它从 spatialValue 中返回字符串几何类型名称。 + 一个表达式,它指定应从中检索几何类型名称的值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialUnion”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 和 spatialValue2 的并集的空间值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应计算与 spatialValue1 的并集的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialWithin”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否在 geometryValue2 空间内的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“StartPoint”函数。结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的起始点,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索起点的空间曲线值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“XCoordinate”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的 X 坐标值,如果 geometryValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 X 坐标值的几何点值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“YCoordinate”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的 Y 坐标值,如果 geometryValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 Y 坐标值的几何点值。 + + + 公共实体 SQL 分析器类。 + + + 分析具有指定参数的指定查询。 + 包含 以及描述内联函数定义的信息(如果有)。 + 要分析的 EntitySQL 查询。 + 可选查询参数。 + + + 分析具有特定设置变量的特定查询并生成 + 包含 以及描述内联函数定义的信息(如果有)。 + 要分析的查询。 + 可选查询变量。 + + + 实体 SQL 查询内联函数定义,作为 的一部分返回。 + + + eSQL 查询文本中函数定义的结束位置。 + + + 函数体和参数。 + + + 函数名。 + + + eSQL 查询文本中函数定义的起始位置。 + + + 实体 SQL 分析器结果信息。 + + + 在分析过程中生成的命令目录树。 + + + 描述查询内联函数定义的 对象的列表。 + + + 表示概念层的命令的类 + + + 使用指定的值初始化 类的新实例。 + + + 使用指定的语句初始化 类的新实例。 + 命令的文本。 + + + 使用指定的语句和连接初始化 类的新实例。 + 命令的文本。 + 与数据源的连接。 + + + 使用指定的语句、连接和事务初始化 类的新实例。 + 命令的文本。 + 与数据源的连接。 + 在其中执行命令的事务。 + + + 构造具有给定 eSQL 语句以及要使用的连接对象的 EntityCommand 对象 + 要执行的 eSQL 命令文本 + 连接对象 + 用于解析 DbProviderServices 的解析程序 + + + 取消执行 + + + 获取或设置指定要执行的命令或存储过程的实体 SQL 语句。 + 指定要执行的命令或存储过程的实体 SQL 语句。 + + + 获取或设置超时前要等待的时间长度。 + 等待命令执行所需的时间(以秒为单位)。 + + + 获取或设置要执行的命令目录树;只能设置命令目录树或命令文本中的其中一个,而不能同时设置二者。 + 要执行的命令目录树。 + + + 获取或设置一个值,该值指示如何解释 属性。 + + 枚举值之一。 + + + 获取或设置 使用的 + 由实体命令使用的连接。 + + + 创建并返回一个新的参数对象,该对象表示 eSQL 语句中的参数 + 参数对象。 + + + 创建 对象的新实例。 + + 对象的一个新实例。 + + + 用于执行命令的连接对象 + + + 此命令的参数集合 + + + 此命令要在其中执行的事务 + + + 获取或设置一个值,该值指示命令对象在 Windows 窗体设计器控件中是否应该可见。 + 如果该命令对象应在 Windows 窗体设计器中可见,则为 true;否则为 false。 + + + 获取或设置一个值,该值指示查询计划缓存是否启用。 + 如果查询计划缓存已启用,则为 true;否则为 false。 + + + 执行命令并且返回用于读取结果的数据读取器 + DbDataReader 对象 + 执行命令时要使用的行为 + + + 异步执行命令并且返回用于读取结果的数据读取器 + 表示异步操作的任务。任务结果包含一个 DbDataReader 对象。 + 执行命令时要使用的行为 + 针对取消请求监视的标记 + + + 执行当前命令。 + 受影响的行数。 + + + 异步执行此命令并且放弃从此命令返回的任何结果 + 表示异步操作的任务。任务结果包含受影响的行数。 + 等待任务完成期间要观察的 。 + + + 执行命令并返回一个数据读取器。 + 包含结果的 + + + 编译成命令目录树,并将其传递到基础存储区提供程序以供执行,然后使用指定的 根据生成的结果集生成一个 + 包含结果的 + + 值之一。 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 执行命令时要使用的行为 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 执行命令时要使用的行为 + 等待任务完成期间要观察的 。 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 等待任务完成期间要观察的 。 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 执行命令,并返回结果集中第一行的第一列。其他列或行将被忽略。 + 结果集中第一行的第一列;如果结果集为空,则为空引用(在 Visual Basic 中为 Nothing)。 + + + 获取实体 SQL 语句或存储过程的参数。 + 实体 SQL 语句或存储过程的参数。 + + + 编译实体级别的命令并创建该命令的预制版本。 + + + 编译实体级别的命令并返回存储命令文本。 + 存储命令文本。 + + + 获取或设置在其中执行 的事务。 + 在其中执行 的事务。 + + + 获取或设置向正在更新的行应用命令结果的方式。 + + 值之一。 + + + 表示概念层的连接的类。一个实体连接只能被初始化一次(通过打开该连接)。之后将无法更改连接字符串、附加新的存储连接或更改存储连接字符串。 + + + 初始化 类的新实例。 + + + 使用指定的 来初始化 类的新实例。 + 与此 关联的 。 + 对象的基础数据源连接。 + workspace 或 connection 参数为 null。 + 工作区缺少概念模型。-或-工作区缺少映射文件。-或-工作区缺少存储模型。-或-连接未处于关闭状态。 + connection 并非来自与 ADO.NET Entity Framework 兼容的提供程序。 + + + 从内存中加载的元数据构造 EntityConnection + 包含元数据信息的工作区。 + 存储连接。 + 如果设置为 true,则释放实体连接时将释放该存储连接;否则调用方必须释放该存储连接。 + + + 基于连接字符串初始化 类的新实例。 + 提供程序特定的连接字符串。 + 提供的连接字符串关键字无效,或未提供所需的连接字符串关键字。 + + + 开始一个数据库事务 + 表示新事务的对象 + 事务的隔离级别 + + + 使用基础提供程序开始一个事务。 + 一个新的 。返回的 实例以后可以与 关联以执行该事务下的命令。 + 基础提供程序未知。-或-对已具有当前事务的 调用 。-或- 的状态不是 + + + 使用基础提供程序开始一个具有指定隔离级别的事务。 + 一个新的 。返回的 实例以后可以与 关联以执行该事务下的命令。 + 事务的隔离级别。 + 基础提供程序未知。-或-对已具有当前事务的 调用 。-或- 的状态不是 + + + 不提供支持。 + 不提供支持。 + 调用该方法时。 + + + 关闭与数据库之间的连接。 + 关闭连接时出错。 + + + 获取或设置 连接字符串。 + 建立与数据源的初始连接所需的连接字符串。默认值为一个空字符串。连接关闭时,将返回当前设置的值。如果未设置任何值,则将返回一个空字符串。 + + + 获取从尝试建立连接到结束尝试并生成错误需要等待的秒数。 + 等待连接打开所需的时间(以秒为单位)。默认值为基础数据提供程序的默认超时值。 + + + 设置为此 的情况下创建 的新实例。 + 一个 对象。 + 基础数据提供程序的名称未知。 + + + 创建使用此连接对象的新命令对象 + 命令对象。 + + + 获取此连接在其中登记的当前事务。可能为 null。 + + + 获取当前数据库或将在连接打开后使用的数据库的名称。 + 基础数据提供程序的 Database 属性值。 + + + 获取要连接到的数据源的名称或网络地址。 + 数据源的名称。默认值为一个空字符串。 + + + 获取与此 EntityConnection 关联的提供程序工厂 + + + 清除此连接对象 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源 + + + 在指定的事务中登记此 + 要在其中进行登记的事务对象。 + + 的状态不是 + + + 返回与此 关联的 + 与此 关联的 + 内联连接字符串包含一个无效的 Metadata 关键字值。 + + + 通过调用基础数据提供程序的 Open 方法建立到数据源的连接。 + 打开连接时出错,或基础数据提供程序的名称未知。 + 内联连接字符串包含一个无效的 Metadata 关键字值。 + + + 通过在基础数据提供程序上调用 Open 方法以异步方式建立与数据存储的连接 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取一个字符串,该字符串包含客户端连接到的数据源的版本。 + 提供程序连接字符串中包含的数据源的版本。 + + + 获取 EntityConnection 的状态,它设置为跟踪此 EntityConnection 包装的基础数据库连接的状态。 + + + 提供对 对象使用的基础数据源连接的访问。 + 数据源连接的 + + + 表示实体客户端提供程序的连接字符串生成器的类 + + + 初始化 类的新实例。 + + + 使用提供的连接字符串初始化 类的新实例。 + 一个指向基础数据源的提供程序特定的连接字符串。 + + + 清除 实例的内容。 + + + 确定 是否包含特定的键。 + 如果 包含具有指定键的元素,则返回 true;否则返回 false。 + 要在 中定位的键。 + + + 获取一个值,指示 是否具有固定大小。 + 无论在何种情况下,都将返回 true,因为 始终提供固定大小的关键字/值对集合。 + + + 获取或设置与指定的键关联的值。在 C# 中,此属性为索引器。 + 与指定的键相关联的值。 + + + 获取包含 中的键的 + 一个 ,包含 中的键。 + + + 获取或设置连接字符串中的元数据位置。 + 获取或设置连接字符串中的元数据位置。 + + + 获取或设置配置文件中定义的节名称。 + 配置文件中的节名称。 + + + 获取或设置连接字符串中的基础 .NET Framework 数据提供程序的名称。 + 基础 .NET Framework 数据提供程序的固定名称。 + + + 获取或设置提供程序特定的内部连接字符串。 + 提供程序特定的内部连接字符串。 + + + 实例中移除具有指定的键的项。 + 如果该键存在于连接字符串中并被移除,则返回 true;如果该键不存在,则返回 false。 + 要从此 中的连接字符串删除的关键字/值对的键。 + 关键字为 null(在 Visual Basic 中为 Nothing) + + + 从此 中检索与提供的键相对应的值。 + 如果在连接字符串中找到 keyword,则返回 true;否则返回 false。 + 要检索的项的键。 + 与 keyword 相对应的值。 + keyword 包含一个 null 值(在 Visual Basic 中为 Nothing)。 + + + 实体客户端提供程序的数据读取器类 + + + 关闭 对象。 + + + 获取此 + 数据记录信息。 + + + 获取一个值,该值指示当前行的嵌套深度。 + 当前行的嵌套深度。 + + + 释放由此 占用的资源并调用 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 获取当前行中的列数。 + 当前行中的列数。 + + + 以布尔值的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以字节的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在指定列中从 dataIndex 指示的位置开始,将字节流读入缓冲区,读入缓冲区的起始位置由 bufferIndex 指示。 + 读取的实际字节数。 + 从零开始的列序号。 + 行中作为读取操作起始位置的索引。 + 要将数据复制到的缓冲区。 + 要将数据复制到的位置的缓冲区索引。 + 要读取的最多字符数。 + + + 以单个字符的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在指定列中从 dataIndex 指示的位置开始,将字符流读入缓冲区,读入缓冲区的起始位置由 bufferIndex 指示。 + 读取的实际字符数。 + 从零开始的列序号。 + 行中作为读取操作起始位置的索引。 + 要将数据复制到的缓冲区。 + 要将数据复制到的位置的缓冲区索引。 + 要读取的最多字符数。 + + + 对象的形式返回嵌套的读取器。 + 作为 对象嵌套的读取器。 + 列的序号。 + + + 返回嵌套的 + 嵌套的数据记录。 + 要返回的 DbDataRecord 的编号。 + + + 获取指定列的数据类型的名称。 + 数据类型的名称。 + 从零开始的列序号。 + + + 对象的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 为可用提供程序特定的实现重写的已请求的列序号返回一个 对象。 + 数据读取器。 + 从零开始的列序号。 + + + 对象的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以双精度浮点数字的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 返回一个可用于循环访问数据读取器中的行的 + 一个 ,可用于循环访问数据读取器中的行。 + + + 获取指定列的数据类型。 + 指定列的数据类型。 + 从零开始的列序号。 + + + 以单精度浮点数字的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以全局唯一标识符 (GUID) 的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以 16 位有符号整数的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以 32 位有符号整数的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以 64 位有符号整数的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在给定从零开始的列序号时获取该列的名称。 + 指定列的名称。 + 从零开始的列序号。 + + + 在给定列名时获取相应的列序号。 + 从零开始的列序号。 + 列的名称。 + 指定的名称不是有效的列名。 + + + 返回指定列的提供程序特定的字段类型。 + 描述指定列的数据类型的 对象。 + 从零开始的列序号。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在当前行的集合中获取提供程序特定的所有属性列。 + 数组中的 实例数。 + 要将属性列复制到的 数组。 + + + 返回一个描述 的列元数据的 + 一个描述列元数据的 + + + 实例的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 使用当前行的列值来填充对象数组。 + 数组中的 实例数。 + 要将属性列复制到的 数组。 + + + 获取一个值,该值指示此 是否包含一个或多个行。 + 如果 包含一行或多行,则为 true;否则为 false。 + + + 获取一个值,该值指示 是否已关闭。 + 如果 已关闭,则为 true;否则为 false。 + + + 获取一个值,该值指示列中是否包含不存在或丢失的值。 + 如果指定的列等效于 ,则为 true;否则为 false。 + 从零开始的列序号。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + + + 在读取一批语句的结果时,使读取器前进到下一个结果。 + 如果存在其他结果集,则为 true;否则为 false。 + + + 在读取一批语句时,以异步方式将读取器移到下一结果集 + 表示异步操作的任务。如果存在其他结果集,则任务结果将包含 true;否则为 false。 + 等待任务完成期间要观察的 。 + + + 使读取器前进到结果集中的下一条记录。 + 如果存在其他行,则为 true;否则为 false。 + + + 以异步方式将读取器移到当前结果集的下一行 + 表示异步操作的任务。如果存在其他行,则任务结果将包含 true;否则为 false。 + 等待任务完成期间要观察的 。 + + + 获取通过执行 SQL 语句更改、插入或删除的行数。 + 更改、插入或删除的行数。如果是 SELECT 语句,则返回 -1;如果未影响任何行或语句失败,则返回 0。 + + + 获取 中未隐藏的字段的数目。 + 未隐藏的字段的数目。 + + + 表示在 EntityCommand 中使用的参数的类 + + + 使用默认值初始化 类的新实例。 + + + 使用指定的参数名称和数据类型初始化 类的新实例。 + 参数名。 + + 值之一。 + + + 使用指定的参数名称、数据类型和大小初始化 类的新实例。 + 参数名。 + + 值之一。 + 参数的大小。 + + + 使用指定的属性初始化 类的新实例。 + 参数名。 + + 值之一。 + 参数的大小。 + + 值之一。 + 若为 true,则指示参数接受 null 值,否则为 false。 + 用于表示值的位数。 + 值所解析的小数位数。 + 源列的名称。 + + 值之一。 + 参数的值。 + + + 使用指定的属性初始化 类的新实例。 + 参数名。 + + 值之一。 + 参数的大小。 + 源列的名称。 + + + 获取或设置参数的 + + 值之一。 + + + 获取或设置参数的方向。 + + 值之一。 + + + 获取或设置表示为 EdmType 的参数类型。 + 表示为 EdmType 的参数的类型。 + + + 获取或设置一个值,该值指示参数是否接受 null 值。 + 如果接受 null 值,则为 true;否则为 false。 + + + 获取或设置实体参数的名称。 + 实体参数的名称。 + + + 获取或设置用于表示 属性的位数。 + 用于表示值的位数。 + + + 重置与 关联的类型。 + + + 获取或设置所解析的 的小数位数。 + 值所解析的小数位数。 + + + 获取或设置列内数据的最大大小。 + 列内数据的最大大小。 + + + 获取或设置源列的名称,该源列映射到 并用于加载或返回 + 映射到数据集并用于加载或返回值的源列的名称。 + + + 获取或设置一个值,该值指示源列是否可以为 null。 + 如果源列可以为 null,则为 true;否则为 false。 + + + 获取或设置在加载值时要使用的 + + 值之一。 + + + 返回参数的字符串表示形式。 + 参数的字符串表示形式。 + + + 获取或设置参数的值。 + 参数的值。 + + + 表示在 EntityCommand 中使用的参数集合的类 + + + 将指定的 对象添加到 中。 + 一个新的 对象。 + 要添加到集合中的 。 + 值参数中指定的 已添加到这个或其他 中。 + 传递的参数不是 + value 参数为 null。 + + + 将指定的对象添加到 中。 + 新的 对象的索引。 + 一个 。 + + + 在给定参数名称和数据类型时向 中添加一个 + 一个新的 对象。 + 参数名。 + + 值之一。 + + + 使用给定的参数名称、数据类型和列长度向 中添加一个 + 一个新的 对象。 + 参数名。 + + 值之一。 + 列的长度。 + + + 的末尾添加一个值数组。 + 要添加的 值。 + + + 的末尾添加一个 值数组。 + 要添加的 值。 + + + 的末尾添加一个值。 + + 对象。 + 参数名。 + 要添加的值。 + + + 中删除所有的 对象。 + + + 确定指定的 是否在此 中。 + 如果 包含该值,则为 true;否则为 false。 + + 值。 + + + 确定指定的 是否在此 中。 + 如果 包含该值,则为 true;否则为 false。 + + 值。 + + + 将当前 的所有元素复制到指定的一维 中,并以指定的目标 索引位置作为复制到的起始位置。 + 作为当前 中的元素的复制目标的一维 。 + 一个 32 位整数,表示 中开始复制的位置的索引。 + + + 将当前 的所有元素复制到指定的 中,并以指定的目标索引位置作为复制到的起始位置。 + 作为当前 中的元素的复制目标的 。 + 一个 32 位整数,表示 中开始复制的位置的索引。 + + + 获取一个包含 中的元素数的整数。 + 以整数形式表示的 中的元素数。 + + + 返回一个循环访问 的枚举器。 + 用于 + + + 获取指定的 在集合中的位置。 + 作为集合中的 的指定 的位置(从零开始)。如果 中不存在该对象,则返回 -1。 + 要查找的 。 + + + 获取指定的 在集合中的位置。 + 作为集合中的 的指定 的位置(从零开始)。如果 中不存在该对象,则返回 -1。 + 要查找的 。 + + + 获取具有指定名称的指定 的位置。 + 具有指定名称(区分大小写)的指定 的位置(从零开始)。如果 中不存在该对象,则返回 -1。 + 要查找的 的名称(区分大小写)。 + + + 中的指定索引处插入一个 对象。 + 应将值插入到的位置的索引(从零开始)。 + 要插入到 中的 对象。 + + + 插入 的指定索引处。 + 应将值插入到的位置的索引(从零开始)。 + 要插入到 中的 。 + + + 获取一个值,指示 是否具有固定大小。 + 如果 具有固定大小,则返回 true;否则返回 false。 + + + 获取一个值,指示 是否是只读的。 + 如果 是只读的,则返回 true;否则返回 false。 + + + 获取一个值,该值指示 是否已同步。 + 如果 已同步,则返回 true;否则返回 false。 + + + 获取位于指定索引处的 + 指定索引处的 + + + 获取具有指定名称的 + 具有指定名称的 + + + 从集合中移除指定的 + 要从集合中移除的 对象。 + 该参数不是 + 集合中不存在该参数。 + + + 从集合中移除指定的参数。 + 要从集合中移除的 对象。 + + + 的指定索引处移除 + 要移除的 对象的索引(从零开始)。 + + + 中移除具有指定参数名称的 + 要移除的 的名称。 + + + 获取可用于同步对 的访问的对象。 + 可用于同步对 的访问的对象。 + + + 类,表示实体客户端提供程序的提供程序工厂 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 引发 。当前不支持该方法。 + 当前不支持该方法。 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 引发 。当前不支持该方法。 + 当前不支持该方法。 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 引发 。当前不支持该方法。 + 当前不支持该方法。 + 当前不支持该方法。 + + + 实体客户端提供程序工厂对象的单一实例对象。这保留一个公共字段(而非属性),因为 DbProviderFactory 应为字段。 + + + 返回请求的 类。 + + 的一个新实例。支持的类型是 。对于所有其他类型均返回 null(在 Visual Basic 中为 Nothing)。 + 要返回的 。 + + + 表示概念层的事务的类 + + + 提交基础事务。 + + + 获取此 + 一个指向基础数据源的 + + + 拥有此事务对象的连接对象 + + + 清除此事务对象 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源 + + + 获取此 的隔离级别。 + 一个 枚举值,表示基础事务的隔离级别。 + + + 回滚基础事务。 + + + 获取基础提供程序事务的 DbTransaction。 + + + 表示 CS 空间中某一 AssociationSet 的映射元数据。 + + + 初始化新的 AssociationSetMapping 实例。 + 要映射的关联集。 + 要映射的存储实体集。 + 父容器映射。 + + + 添加属性映射条件。 + 要添加的条件。 + + + 获取映射的关联集。 + + + 获取包含的关联类型映射。 + + + 获取属性映射条件。 + + + 获取或设置相应的函数映射。可以为 null。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 获取或设置源端属性映射。 + + + 获取映射的存储实体集。 + + + 获取或设置目标端属性映射。 + + + 描述关联集的修改函数映射。 + + + 初始化新的 实例。 + 关联集。 + 删除函数映射。 + 插入函数映射。 + + + 获取关联集。 + 关联集。 + + + 获取删除函数映射。 + 删除函数映射。 + + + 获取插入函数映射。 + 插入函数映射。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 表示 CS 空间中关联类型映射的映射元数据。 + + + 创建 AssociationTypeMapping 实例。 + 包含此 AssociationTypeMapping 的 AssociationSetMapping。 + + + 获取包含此 AssociationTypeMapping 的 AssociationSetMapping。 + + + 获取要映射的关联类型。 + + + 获取单个映射片段。 + + + 复杂属性的映射元数据。 + + + 构造一个新的复杂属性映射对象 + 表示此复杂成员的 MemberMetadata 对象 + + + 添加与嵌套复杂类型对应的类型映射。 + 要添加的复杂类型映射。 + + + 删除与嵌套复杂类型对应的类型映射。 + 要删除的复杂类型映射。 + + + 获取与嵌套复杂类型对应的类型映射的只读集合。 + + + 复杂类型的映射元数据。 + + + 创建 ComplexTypeMapping 实例。 + 要映射的 ComplexType。 + + + 添加属性映射条件。 + 要添加的属性映射条件。 + + + 添加属性映射。 + 要添加的属性映射。 + + + 获取要映射的 ComplexType。 + + + 获取属性映射条件的只读集合。 + + + 获取属性映射的只读集合。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 删除属性映射。 + 要删除的属性映射。 + + + 某一类型上条件属性映射的映射元数据。条件属性映射在 C 侧属性或 S 侧属性上指定条件。 + + + 获取指定已映射列的 EdmProperty。 + + + 获取指定已映射属性的 EdmProperty。 + + + 某一关联的 End 属性的映射元数据。 + + + 创建关联端属性映射。 + 指定要映射的关联端的 AssociationEndMember。 + + + 添加子属性列映射。 + 指定要添加的属性列映射的 ScalarPropertyMapping。 + + + 获取指定映射的关联端的 AssociationEndMember。 + + + 获取指定此关联端属性映射的子级的 ScalarPropertyMapping 的 ReadOnlyCollection。 + + + 删除子属性列映射。 + 指定要删除的属性列映射的 ScalarPropertyMapping。 + + + 表示 CS 空间中 EntityContainer 映射的映射元数据。 + + + 初始化 类的新实例。 + 要映射的概念实体容器。 + 要映射的存储实体容器。 + 父映射项集合。 + 指示是否生成更新视图的标志。 + + + 添加函数导入映射。 + 要添加的函数导入映射。 + + + 添加关联集映射。 + 要添加的关联集映射。 + + + 添加实体集映射。 + 要添加的实体集映射。 + + + 获取关联集映射。 + 关联集映射。 + + + 获取此项的类型种类。 + 此项的类型种类。 + + + 获取概念实体容器。 + 概念实体容器。 + + + 获取实体集映射。 + 实体集映射。 + + + 获取函数导入映射。 + 函数导入映射。 + + + 获取指示是否生成更新视图的标志。 + 若为 true,则生成更新视图;否则为 false。 + + + 获取父映射项集合。 + 父映射项集合。 + + + 删除函数导入映射。 + 要删除的函数导入映射。 + + + 删除关联集映射。 + 要删除的关联集映射。 + + + 删除关联集映射。 + 要删除的关联集映射。 + + + 获取存储实体容器。 + 存储实体容器。 + + + 表示 CS 空间中某一范围的映射元数据。 + + + 获取父容器映射。 + + + 获取或设置与此映射关联的查询视图。 + + + 表示 CS 空间中某一 EnitytSet 的映射元数据。 + + + 初始化新的 EntitySetMapping 实例。 + 要映射的实体集。 + 父容器映射。 + + + 添加函数映射。 + 要添加的函数映射。 + + + 添加类型映射。 + 要添加的类型映射。 + + + 获取映射的实体集。 + + + 获取包含的实体类型映射。 + + + 获取相应的函数映射。 + + + 删除函数映射。 + 要删除的函数映射。 + + + 删除类型映射。 + 要删除的类型映射。 + + + 实体类型的映射元数据。如果 EntitySet 表示多种类型的实体,则对于 EntitySet,我们将具有多个 EntityTypeMapping(例如:如果 PersonSet 实体范围表示 Person 和 Customer 类型的实体,则我们在 PersonSet 的映射下将具有两个 EntityType 映射)。 + + + 创建 EntityTypeMapping 实例。 + 包含此 EntityTypeMapping 的 EntitySetMapping。 + + + 添加映射片段。 + 要添加的映射片段。 + + + 将实体类型层次结构添加到映射中。层次结构由指定的根实体类型表示。 + 要添加的层次结构的根 EntityType。 + + + 将实体类型添加到映射中。 + 要添加的 EntityType。 + + + 获取包含此 EntityTypeMapping 的 EntitySetMapping。 + + + 获取要映射的单个 EntityType。如果发生层次结构类型映射,则引发异常。 + + + 获取映射的实体类型。 + + + 获取映射片段的只读集合。 + + + 获取指示这是否是类型层次结构映射的标志。 + + + 获取层次结构映射的已映射基类型。 + + + 删除映射片段。 + 要删除的映射片段。 + + + 从映射中删除实体类型层次结构。层次结构由指定的根实体类型表示。 + 要删除的层次结构的根 EntityType。 + + + 从映射中删除实体类型。 + 要删除的 EntityType。 + + + 描述实体集内的实体类型的修改函数映射。 + + + 初始化 类的新实例。 + EDM 实体类型。 + 功能删除的映射。 + 功能插入的映射。 + 功能更新的映射。 + + + 获取功能删除的映射。 + 功能删除的映射。 + + + 获取 EDM 实体类型。 + EDM 实体类型。 + + + 获取功能插入的映射。 + 功能插入的映射。 + + + 返回 对象的字符串表示形式。 + + 对象的字符串表示形式。 + + + 获取功能更新的映射。 + 功能更新的映射。 + + + 在设计时创建的、用于存储生成的视图的类型的基类。 + + + 初始化 类的新实例。 + + + 获取或设置 的名称。 + 容器名称。 + + + 返回指定索引处的键/值对,其中包含视图和其键。 + 索引处的键/值对,其中包含视图以及视图的键。 + 视图的索引。 + + + 视图的哈希值。 + 哈希值。 + + + 哈希值。 + 哈希值。 + + + 获取或设置存储架构中的 + 容器名称。 + + + 获取或设置视图计数。 + 视图计数。 + + + 用于标记包含生成的视图类型的程序集的特性。 + + + 初始化 类的新实例。 + 视图的类型。 + + + 获取视图的 T:System.Type。 + 视图的 T:System.Type。 + + + 表示函数导入结果的复杂类型映射。 + + + 初始化新的 FunctionImportComplexTypeMapping 实例。 + 返回类型。 + 函数导入的结果类型的属性映射。 + + + 获取返回类型。 + + + 表示函数导入实体类型映射。 + + + 初始化新的 FunctionImportEntityTypeMapping 实例。 + 要映射的类型层次结构的基础实体类型。 + 要映射的实体类型。 + 函数导入的结果类型的属性映射。 + 映射条件。 + + + 获取映射条件。 + + + 获取要映射的实体类型。 + + + 获取要映射的层次结构的基础实体类型。 + + + 表示函数导入结果的映射条件。 + + + 获取用于计算条件的列的名称。 + 用于计算此条件的列的名称。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 此当前实例的字符串表示形式。 + + + 表示通过检查 null 或非 null 来进行计算的函数导入的结果的映射条件。 + + + 初始化新的 FunctionImportEntityTypeMappingConditionIsNull 实例。 + 用于计算此条件的列的名称。 + 指示是执行 null 还是非 null 检查的标志。 + + + 获取指示是执行 null 还是非 null 检查的标志。 + + + 表示函数导入的结果的映射条件,通过与指定值作比较来计算此条件。 + + + 初始化新的 FunctionImportEntityTypeMappingConditionValue 实例。 + 用于计算此条件的列的名称。 + 要与之作比较的值。 + + + 获取用于比较的值。 + + + 表示从模型函数导入到存储可组合或不可组合函数的映射。 + + + 获取模型函数(或者映射的源) + + + 获取存储函数(或者映射的目标) + + + 表示从模型函数导入到存储可组合函数的映射。 + + + 初始化新的 FunctionImportMappingComposable 实例。 + 模型函数导入。 + 可组合的存储函数。 + 函数导入的结果映射。 + 父容器映射。 + + + 获取函数导入的结果映射。 + + + 表示从模型函数导入到不可组合的存储函数的映射。 + + + 初始化新的 FunctionImportMappingNonComposable 实例。 + 模型函数导入。 + 存储不可组合函数。 + 函数导入结果映射。 + 父容器映射。 + + + 获取函数导入结果映射。 + + + 表示函数导入的结果映射。 + + + 初始化 类的新实例。 + + + 添加类型映射。 + 要添加的类型映射。 + + + 删除类型映射。 + 要删除的类型映射。 + + + 获取类型映射。 + 类型映射。 + + + 用于映射函数导入返回类型的属性的基类。 + + + 将函数导入返回类型属性映射到表列。 + + + 初始化新的 FunctionImportReturnTypeScalarPropertyMapping 实例。 + 映射的属性名称。 + 映射的列名称。 + + + 获取映射的列名称。 + + + 获取映射的属性名称。 + + + 指定函数导入结构类型映射。 + + + 获取函数导入的结果类型的属性映射。 + + + 指定通过检查属性/列的值是否为 null 来进行计算的映射条件。 + + + 创建 IsNullConditionMapping 实例。 + 指定属性或列的 EdmProperty。 + 指示是执行 null 还是非 null 检查的布尔值。 + + + 获取指定是通过执行 null 检查还是非 null 检查来计算条件的布尔值。 + + + 表示所有映射元数据的项基类 + + + 表示映射片段的元数据。一组映射片段构成 Set 映射(EntitySet、AssociationSet 或 CompositionSet)。每个 MappingFragment 都为映射到单个表的类型的这些属性提供映射。 + + + 创建 MappingFragment 实例。 + 与要映射的表或视图对应的 EntitySet。 + 包含此 MappingFragment 的 TypeMapping。 + 指示在生成查询时是否包括“DISTINCT”的标志。 + + + 添加属性映射条件。 + 要添加的属性映射条件。 + + + 添加属性映射。 + 要添加的属性映射。 + + + 获取属性映射条件的只读集合。 + + + 获取指示在生成查询时是否包括“DISTINCT”的标志。 + + + 获取属性映射的只读集合。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 删除属性映射。 + 要删除的属性映射。 + + + 获取与要映射的表或视图对应的 EntitySet。 + + + 获取包含此 MappingFragment 的 TypeMapping。 + + + 表示映射空间 (DataSpace.CSSpace) 中项的基类。 + + + 初始化 类的新实例。 + + + 表示 Edm 空间中映射项的集合的类。 + + + 描述用于实体或关联的更改处理的修改函数绑定。 + + + 初始化 类的新实例。 + 实体或关联集。 + 实体或关联类型。 + 我们应绑定到的函数的元数据。 + 函数参数的绑定。 + 生成受影响行数的输出参数。 + 函数计算结果的绑定 + + + 获取我们应绑定到的函数的元数据。 + 我们应绑定到的函数的元数据。 + + + 获取函数参数的绑定。 + 函数参数的绑定。 + + + 获取函数计算的结果的绑定。 + 函数计算结果的绑定。 + + + 获取生成受影响行数的输出参数。可能为 null。 + 生成受影响行数的输出参数。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的字符串表示形式。 + + + 描述成员在实体或关联类型结构中的位置。 + + + 初始化 类的新实例。 + 从结构的叶(要绑定的成员)到根的路径中的成员。 + 我们通过此成员导航到的关联集。如果值为 null,则这不是导航成员路径。 + + + 获取我们通过此成员导航到的关联集。如果值为 null,则这不是导航成员路径。 + 我们通过此成员导航到的关联集。 + + + 获取从结构的叶(要绑定的成员)到根的路径中的成员。 + 从结构的叶(要绑定的成员)到根的路径中的成员。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 表示将修改函数参数绑定到要修改的实体或关联的成员。 + + + 初始化 类的新实例。 + 采用值的参数。 + 定义值的实体或关联成员的路径。 + 如果绑定当前或原始的成员值,则为 true;否则为 false。 + + + 获取指示是绑定当前的还是原始的成员值的标志。 + 如果绑定了当前或原始的成员值,则为 true;否则为 false。 + + + 获取定义值的实体或关联成员的路径。 + 定义值的实体或关联成员的路径。 + + + 获取采用值的参数。 + 采用值的参数。 + + + 使用指定格式将此实例的值转变为其等效字符串表示形式。 + 格式所指定的此实例的值的字符串表示形式。 + + + 定义从命名结果集列到采用值的成员的绑定。 + + + 初始化 类的新实例。 + 要从函数结果集绑定的列的名称。 + 要在实体上设置的属性。 + + + 获取要从函数结果集绑定的列的名称。 + 要从函数结果集绑定的列的名称。 + + + 获取要在实体上设置的属性。 + 要在实体上设置的属性。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 属性映射的所有类型的映射元数据。 + + + 获取指定已映射属性的 EdmProperty。 + + + 标量属性的映射元数据。 + + + 在简单属性和列之间创建映射。 + 要映射的属性。 + 要映射的列。 + + + 获取指定已映射列的 EdmProperty。 + + + 表示存储映射(CS 映射)空间中的项集合。 + + + 使用指定的 和 XML 读取器初始化 类的新实例。 + 此映射要使用的 。 + 此映射要使用的 。 + 此映射要使用的 XML 读取器。 + + + 使用指定的 以及指示元数据文件路径的字符串的集合初始化 类的新实例。 + 此映射要使用的 。 + 此映射要使用的 。 + 此映射要使用的文件路径。 + + + 计算集合中单个容器映射的哈希值。 + 指定计算出的哈希值的字符串。 + + + 计算由已映射容器的名称指定的容器映射的哈希值。 + 指定计算出的哈希值的字符串。 + 概念模型中容器的名称。 + 存储模型中容器的名称。 + + + 创建一个 + 如果未遇到错误,则为 实例。否则为 null。 + 要映射的 EDM 元数据集合。不得为 null。 + 要映射的存储元数据集合。不得为 null。 + 要加载的 MSL 项目。不得为 null。 + MSL 项目的路径。用于错误消息中。可为 null,在此情况下 XmlReader 的基 Uri 将用作路径。 + 加载时遇到的错误的集合。 + + + 为集合中的单个容器映射创建(范围、生成的视图)字典。 + 用于指定生成的视图()的字典。 + 积累潜在错误的列表。 + + + 为由已映射容器的名称指定的容器映射创建(范围,生成的视图)字典。 + 用于指定生成的视图()的字典。 + 概念模型中容器的名称。 + 存储模型中容器的名称。 + 积累潜在错误的列表。 + + + 获取此 表示的版本。 + 表示的版本。 + + + 获取或设置一个 ,它用于创建在检索预生成的映射视图时使用的 实例。 + 创建用于检索预生成的映射视图的 实例的 + + + 指定结构类型映射。 + + + 初始化 类的新实例。 + + + 添加属性映射条件。 + 要添加的属性映射条件。 + + + 添加属性映射。 + 要添加的属性映射。 + + + 获取属性映射条件的只读集合。 + + + 获取属性映射的只读集合。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 删除属性映射。 + 要删除的属性映射。 + + + 表示 CS 空间中类型映射的映射元数据。 + + + 指定通过将属性或列的值与给定值作比较来进行计算的映射条件。 + + + 创建 ValueConditionMapping 实例。 + 指定属性或列的 EdmProperty。 + 指定要与之作比较的值的对象。 + + + 获取指定要检查的值的对象。 + + + 表示关联类型的端 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 创建一个只读的 AssociationEndMember 实例。 + 新创建的 AssociationEndMember 实例。 + 关联端成员的名称。 + 端的引用类型。 + 端的多重性。 + 指示端的删除行为的标志。 + 要与该实例相关联的元数据属性。 + 指定的名称为 null 或空。 + 指定的引用类型为 null。 + + + 表示关联集的类 + + + 获取此 的 End。 + 一个 类型的集合,其中包含此 的 End。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 从指定的参数创建一个只读 AssociationSet 实例。 + 新创建的 AssociationSet 实例。 + 关联集的名称。 + 关联集中元素的关联类型。 + 源关联集端的实体集。 + 目标关联集端的实体集。 + 要与该实例相关联的元数据属性。 + 指定的名称为 null 或空。 + 指定的关联类型为 null。 + 指定的关联类型的其中一端的实体类型与相应实体集端的实体类型不匹配。 + + + 获取与此 有关的关联。 + 一个 对象,表示与此 有关的关联。 + + + 表示 AssociationSet 端的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取与此 对象相对应的 End 成员。 + 一个 对象,表示与此 对象相对应的 End 成员。 + + + 获取由此 End 角色引用的实体集。 + 一个 对象,表示由此 End 角色引用的实体集。 + + + 获取此 的 End 名称。 + 的 End 名称。 + + + 获取此 的父关联集。 + 一个 对象,表示此 的父关联集。 + + + 获取此 的 End 角色名称。 + 的 End 角色名称。 + + + 返回此 的 End 角色名称。 + 的 End 角色名称。 + + + 描述概念模型中两个实体之间的关联/关系,或者描述存储模型中两个表之间的外键关系。在概念模型中,相关类不一定定义外键属性。如果定义了某一外键,则 属性将为 true,并且 属性将包含外键的详细信息 + + + 获取此 的端的列表。 + 一个 类型的集合,其中包含此 的 End 列表。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取或设置引用约束。 + 引用约束。 + + + 从指定的参数创建一个只读 AssociationType 实例。 + 新创建的 AssociationType 实例。 + 关联类型的名称。 + 关联类型的命名空间。 + 指示外键 (FK) 关系的标志。 + 关联类型的数据空间。 + 源关联端成员。 + 目标关联端成员。 + 一个引用约束。 + 要与该实例相关联的元数据属性。 + 指定的名称为 null 或空。 + 指定的命名空间为 null 或空。 + + + 获取一个布尔属性值,该值指定列是否为外键。 + 一个指定列是否为外键的布尔值。如果为 true,则列是外键。如果为 false(默认值),则列不是外键。 + + + 获取此 的约束列表。 + 一个 类型的集合,其中包含此 的约束列表。 + + + 所有内置类型的列表 + + + 关联类型种类 + + + AssociationSet 种类 + + + AssociationSetEnd 种类 + + + 关联类型种类 + + + 集合种类 + + + 集合类型种类 + + + 复杂类型种类 + + + 文档种类 + + + EdmFunction 种类 + + + EdmMember 类型种类 + + + EdmProperty 类型种类 + + + Edm 类型种类 + + + 实体容器种类 + + + 实体集种类 + + + EntitySetBase 种类 + + + 实体类型种类 + + + 实体类型基种类 + + + 枚举成员种类 + + + 枚举类型种类 + + + 方面种类 + + + 函数参数种类 + + + 全局项类型种类 + + + 元数据项类型种类 + + + 元数据属性种类 + + + 导航属性种类 + + + DeleteAction 类型种类 + + + 参数模式种类 + + + 基元类型种类 + + + 基元类型种类 + + + ProviderManifest 类型种类 + + + 引用约束类型种类 + + + Ref 类型种类 + + + RelationshipEnd 类型种类 + + + 关系多重性类型种类 + + + RelationshipEnd 类型种类 + + + 关系类型 + + + 行类型种类 + + + 简单类型种类 + + + 结构化类型种类 + + + 类型信息种类 + + + 集合的种类(适用于属性) + + + 集合具有包语义(允许未排序和重复项) + + + 集合具有列表语义(顺序明确并且允许重复项) + + + 属性不是集合 + + + 表示 Edm 集合类型 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取 类的一个实例,其中包含此当前 对象所包括的元素的类型以及该类型的各个方面。 + + 类的一个实例,其中包含此当前 对象所包括的元素的类型以及该类型的各个方面。 + + + 表示 Edm 复杂类型。这可用于从概念空间基于模型的约定配置复杂类型。在存储模型中不支持复杂类型。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 创建 类型的新实例。 + + 类型的新实例。 + 复杂类型的名称。 + 复杂类型的命名空间。 + 复杂类型属于的数据空间。 + 复杂类型的成员。 + 要与该实例相关联的元数据属性。 + 在 name、namespace 或 members 参数为 null 时引发。 + + + 获取此 的属性列表。 + 一个 类型的集合,其中包含此 的属性列表。 + + + 属性的并发模式。 + + + 固定并发模式:在写入时间始终验证属性 + + + 默认并发模式:在写入时间从不验证属性 + + + 将符合单个 CSDL 架构文件限制的 序列化到 XML 编写器。要序列化的模型必须包含单个 + + + 初始化 类的新实例。 + + + 当序列化模型过程中遇到错误时发生。 + + + 序列化到 XmlWriter。 + 如果模型有效,则为 true;否则为 false。 + 要序列化的 EdmModel。 + 要序列化到的 XmlWriter。 + 已序列化的模型的命名空间。 + + + 表示有关处理实体框架模型时所发生的错误的信息。 + + + 初始化 类的新实例。 + + + 获取描述所引发的错误的可选描述性消息。 + 描述所引发的错误的可选描述消息。 + + + 获取一个值,用于指示导致引发此事件的 + 如果 可引发此事件,则为 true;否则为 false。 + + + 获取一个可选值,用于指示导致引发此事件的源项的属性。 + 指示导致引发此事件的源项的属性。 + + + DataSpace + + + CSpace 指示 CSpace 中的项 - edm 基元类型 + 在 csdl 中定义的类型 + + + CSpace 和 SSpace 之间的映射 + + + OSpace 和 CSpace 之间的映射 + + + OSpace 指示 clr 空间中的项 + + + SSpace 指示 SSpace 中的项 + + + + 的扩展方法。 + + + 从指定 DbModel 获取概念模型。 + 表示概念模型的 EdmModel 的实例。 + 实现 IEdmModelAdapter 的类的实例(例如DbModel)。 + + + 从指定 DbModel 获取存储模型。 + 表示存储模型的 EdmModel 的实例。 + 实现 IEdmModelAdapter 的类的实例(例如DbModel)。 + + + 表示与某一项相关联的文档的类 + + + 初始化新的 Documentation 实例。 + 摘要字符串。 + 长描述字符串。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取一个值,该值指示此 对象是否只包含一个 null(即空的) 和一个 + 如果此 对象只包含一个 null(即空的) 和一个 ,则为 true;否则为 false。 + + + 获取有关此 的详细说明。 + 有关此 的详细说明。 + + + 获取此 的摘要。 + 的摘要。 + + + 返回此 的摘要。 + 的摘要。 + + + 此类包装有关一般性 EDM 错误的错误信息。 + + + 获取错误消息。 + 错误消息。 + + + 表示某一函数的类 + + + 向此函数添加参数。 + 要添加的参数。 + + + 获取此函数的聚合特性。 + + + 获取一个值,该值指示此函数中是否存在内置特性。 + 如果存在内置特性,则为 true;否则为 false。 + + + 获取此 的内置类型种类。 + + 枚举的枚举值之一。 + + + 获取采用数据库管理系统或存储模型所使用的语言的查询。 + 采用数据库管理系统或存储模型所使用语法的一个字符串值,其中包含 的查询或更新语句。 + + + 构造该 对象的工厂方法。 + + 类型的新的只读实例。 + 函数的名称。 + 函数的命名空间。 + 函数所属的命名空间。 + 其他函数特性和属性。 + 将添加到该函数的元数据属性。可以为 null。 + + + 返回此类型的全名(命名空间加名称)。 + 类型的全名。 + + + 获取是将此实例映射到函数还是映射到存储过程的信息。 + 如果将此实例映射到函数,则为 true;如果将此实例映射到存储过程,则为 false。 + + + 获取一个值,该值指示此实例是否来自提供程序清单。 + 如果此实例来自提供程序清单,则为 true;否则为 false。 + + + 获取一个值,该值指示此函数是否为 niladic 函数(不接受任何参数的函数)。 + 如果此函数为 niladic 函数,则为 true;否则为 false。 + + + 获取此 的参数。 + 一个 类型的集合,其中包含此 的参数。 + + + 获取此函数的参数类型语义特性。 + + + 获取此 的返回参数。 + 一个 对象,表示此 的返回参数。 + + + 获取此 的返回参数。 + 一个 类型的集合,表示 的返回参数。 + + + 获取或设置与函数关联的架构。 + 与函数关联的架构。 + + + 获取此函数的存储函数名称特性。 + + + 包含 的其他特性和属性。 + + + 初始化 类的新实例。 + + + 获取或设置与函数关联的命令文本。 + 与函数关联的命令文本。 + + + 获取或设置函数的实体集。 + 函数的实体集。 + + + 获取指示这是否为聚合函数的值。 + 如果这是聚合函数,则为 true;否则为 false。 + + + 获取或设置此函数是否为内置函数的信息。 + 如果此函数为内置函数,则为 true;否则为 false。 + + + 获取或设置此函数是否为缓存存储函数的信息。 + 如果此函数为缓存的存储函数,则为 true;否则为 false。 + + + 获取或设置此函数是否可以组合的信息。 + 如果此函数可以组合,则为 true;否则为 false。 + + + 获取或设置此函数是否来自提供程序清单的信息。 + 如果此函数来自提供程序清单,则为 true;否则为 false。 + + + 获取或设置此函数是否为函数导入的信息。 + 如果此函数为函数导入,则为 true;否则为 false。 + + + 获取或设置函数是否不包含参数的信息。 + 如果函数不包含参数,则为 true;否则为 false。 + + + 获取或设置函数参数。 + 函数参数。 + + + 获取或设置参数类型语义。 + 参数类型语义。 + + + 获取或设置返回参数。 + 返回参数。 + + + 获取或设置函数架构。 + 函数架构。 + + + 获取或设置存储函数名称。 + 存储函数名称。 + + + 表示 Edm 空间中项的集合的类。 + + + 使用概念架构定义语言 (CSDL) 文件所在的 XMLReader 对象的集合初始化 类的新实例。 + 概念架构定义语言 (CSDL) 文件所在的 XMLReader 对象的集合。 + + + 初始化 类的新实例。 + 实体数据模型。 + + + 使用概念架构定义语言 (CSDL) 文件所在的路径初始化 类的新实例。 + 概念架构定义语言 (CSDL) 文件所在的路径。 + + + 创建 的工厂方法。 + 如果未遇到错误,则为 实例。否则为 null。 + 要加载的 CSDL 项目。不得是 null。 + CSDL 项目的路径。用于错误消息中。可为 null,在此情况下,XmlReader 的基 Uri 将用作路径。 + 加载时遇到的错误的集合。 + + + 获取此集合的概念模型版本。 + 此集合的概念模型版本。 + + + 返回一个由 对象构成的集合。 + 一个 ReadOnlyCollection 对象,表示 对象的集合。 + + + 返回具有指定的概念模型版本的 对象的集合。 + 一个 ReadOnlyCollection 对象,表示 对象的集合。 + 概念模型版本。 + + + 表示 edm 成员类 + + + 获取已对其声明此成员的类型。 + 一个 对象,表示已对其声明此成员的类型。 + + + 指示此成员是否在 EDM 定义中标记为计算成员 + + + 指示此成员的存储生成的模式是否在 EDM 定义中标记为标识 + + + 获取或设置属性的名称。从存储空间模型约定对此进行设置将更改此属性的数据库列的名称。在概念模型中,这应该与来自实体类的相应属性保持一致并且不应更改。 + 此成员的名称。 + + + 返回此成员的名称。 + 此成员的名称。 + + + 获取既包含此成员的类型又包含该类型的各个方面的 类实例。 + 一个 对象,其中既包含此成员的类型又包含该类型的各个方面。 + + + 表示概念模型或存储模型。该类可用于访问与模型的形状有关的信息以及对其进行配置的方式。 + + + 将关联类型添加到模型中。 + 要添加的 AssociationType 实例。 + + + 将复杂类型添加到模型中。 + 要添加的 ComplexType 实例。 + + + 将函数添加到模型中。 + 要添加的 EdmFunction 实例。 + + + 将实体类型添加到模型中。 + 要添加的 EntityType 实例。 + + + 将枚举类型添加到模型中。 + 要添加的 EnumType 实例。 + + + 获取模型中的关联类型。 + + + 获取此类型的内置类型种类。 + 一个 对象,表示此类型的内置类型种类。 + + + 获取模型中的复杂类型。 + + + 获取存储实体和关联集以及函数导入的容器。 + + + 获取与此模型关联的数据空间,该数据空间指示它是概念模型 (DataSpace.CSpace) 还是存储模型 (DataSpace.SSpace)。 + + + 获取模型中的实体类型。 + + + 获取模型中的枚举类型。 + + + 获取模型中的函数。 + + + 获取与模型关联的全局项。 + 与模型关联的全局项。 + + + 从模型中删除关联类型。 + 要删除的 AssociationType 实例。 + + + 从模型中删除复杂类型。 + 要删除的 ComplexType 实例。 + + + 从模型中删除函数。 + 要删除的 EdmFunction 实例。 + + + 从模型中删除实体类型。 + 要删除的 EntityType 实例。 + + + 从模型中删除枚举类型。 + 要删除的 EnumType 实例。 + + + 在概念空间中,EdmProperty 表示某个实体的属性。在存储空间中,EdmProperty 表示某个表中的列。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取或设置此模型的集合种类。 + 此模型的集合种类。 + + + 获取此属性的复杂类型信息。 + 此属性的复杂类型信息。 + + + 获取或设置属性的并发模式。 + 属性的并发模式。 + + + 创建 EdmProperty 类型的新实例。 + EdmProperty 类型的新实例 + 属性的名称。 + 属性 + + + 新建复杂属性。 + 新创建的属性。 + 属性的名称。 + 属性的类型。 + + + 新建枚举属性。 + 新创建的属性。 + 属性的名称。 + 属性的类型。 + + + 新建基元属性。 + 新创建的属性。 + 属性的名称。 + 属性的类型。 + + + 获取此 的默认值。 + 的默认值。 + + + 获取此属性的枚举类型信息。 + 此属性的枚举类型信息。 + + + 获取属性是否为集合类型属性的信息。 + 如果属性为集合类型属性,则为 true;否则为 false。 + + + 获取此属性是否为复杂类型属性的信息。 + 如果此属性为复杂类型属性,则为 true;否则为 false。 + + + 获取此属性是否为枚举类型属性的信息。 + 如果此属性为枚举类型属性,则为 true;否则为 false。 + + + 获取或设置此属性的长度是否是固定的信息。 + 如果此属性的长度是固定的,则为 true;否则为 false。 + + + 获取固定长度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取或设置此属性是否使用提供程序支持的最大长度的信息。 + 如果此属性使用提供程序支持的最大长度,则为 true;否则为 false。 + + + 获取最大长度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取精度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取此属性是否为基元类型的信息。 + 如果此属性为基元类型,则为 true;否则为 false。 + + + 获取小数位数方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取此属性是否为基础基元类型的信息。 + 如果此属性为基础基元类型,则为 true;否则为 false。 + + + 获取或设置此属性是否为 Unicode 属性的信息。 + 如果此属性为 Unicode 属性,则为 true;否则为 false。 + + + 获取 Unicode 方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获得或设置属性的最大长度。 + 属性的最大长度。 + + + 获取一个值,该值指示此 的值是否可以为 null。 + 如果此 的值可以为 null,则为 true;否则为 false。 + + + 获取或设置此属性的精度。 + 此属性的精度。 + + + 获取此属性的基元类型信息。 + 此属性的基元类型信息。 + + + 获取或设置此属性的小数位数。 + 此属性的小数位数。 + + + 设置元数据属性。 + 要设置的元数据属性。 + + + 获取或设置与此属性相关联的数据库列的生成方法 + 属性的存储生成模式。 + + + 获取属性的类型名称。 + 属性的类型名称。 + + + 获取此属性的基础基元类型信息。 + 此属性的基础基元类型信息。 + + + 该类包装已遇到的架构错误的错误信息。 + + + 构造 EdmSchemaError 对象。 + 该错误的说明。 + 与此错误关联的代码。 + 错误的严重级别。 + + + 获取发生错误的列。 + 发生错误的列。 + + + 获取错误代码。 + 错误代码。 + + + 获取发生错误的行号。 + 发生错误的行号。 + + + 获取包含错误的架构的位置。此字符串还包括位于末尾的架构的名称。 + 包含错误的架构所在的位置。 + + + 获取包含错误的架构的名称。 + 包含错误的架构的名称。 + + + 获取错误的严重级别。 + + 值之一。默认值为 + + + 获取发生错误时的堆栈跟踪的字符串表示形式。 + 发生错误时的堆栈跟踪的字符串表示形式。 + + + 返回错误消息。 + 错误消息。 + + + 定义在验证实体框架模型时可能出现的错误的不同严重级别。 + + + 导致无法使用模型的错误。 + + + 不会导致无法使用模型的警告。 + + + 用于所有模型类型的 EdmType 基类 + + + 获取一个值,该值指示此类型是否为抽象的。 + 如果此类型是抽象的,则为 true;否则为 false。 + + + 获取此类型的基类型。 + 此类型的基类型。 + + + 获取此类型的全名。 + 此类型的全名。 + + + 返回其元素类型属于此类型的 的实例。 + 其元素类型属于此类型的 对象。 + + + 获取此类型的名称。 + 此类型的名称。 + + + 获取此类型的命名空间。 + 此类型的命名空间。 + + + 返回此类型的全名。 + 此类型的全名。 + + + 表示某一实体容器的类 + + + 创建具有指定名称和数据空间的实体容器。 + 实体容器名称。 + 实体容器数据空间。 + name 参数为 null 时引发。 + name 参数为空字符串时引发。 + + + 将指定的实体集添加到容器。 + 要添加的实体集。 + + + 将函数导入添加到容器中。 + 要添加的函数导入。 + + + 获取此实体容器的关联集。 + 此实体容器的关联集。 + + + 获取此 包括的实体集和关联集的列表。 + 一个 对象,其中包含此 包括的实体集和关联集的列表。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 用于构造 EntityContainer 对象的工厂方法。 + EntityContainer 对象。 + 要创建的实体容器的名称。 + 此实体容器所属的 DataSpace。 + 将包含在新容器中的实体集。可以为 null。 + 将包含在新容器中的函数。可以为 null。 + 要与该实例相关联的元数据属性。 + 在名称参数为 null 或是空字符串时引发。 + + + 获取此实体容器的实体集。 + 此实体容器的实体集。 + + + 指定 元素的集合。每个函数都包含数据库中存在的存储过程的详细信息,或映射到实体及其属性的等效 CommandText 的详细信息。 + 一个包含 元素的 + + + 使用实体集的指定名称返回一个 对象。 + 一个 对象,表示具有指定名称的实体集。 + 要搜索的实体集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用关系集的指定名称返回一个 对象。 + 一个 对象,表示具有指定名称的关系集。 + 要搜索的关系集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 获取此 的名称。 + 的名称。 + + + 从容器中删除特定实体集。 + 要删除的实体集。 + + + 返回此 的名称。 + 的名称。 + + + 使用实体集的指定名称返回一个 对象。 + 如果存在与搜索条件匹配的实体集,则为 true;否则为 false。 + 要搜索的实体集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,包含一个 对象。如果不存在实体集,此输出参数将包含 null。 + + + 使用关系集的指定名称返回一个 对象。 + 如果存在与搜索条件匹配的关系集,则为 true;否则为 false。 + 要搜索的关系集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,包含一个 对象。 + + + 表示在 EntityType 中定义的结构的特定用法。在概念模型中,这表示可以查询和存储实体的集。在存储模型中,它表示一个表。从存储空间模型约定中,它可用来通过 属性配置表名称,通过 属性配置表架构。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 EntitySet 对象的工厂方法。 + EntitySet 对象。 + EntitySet 的名称。 + db 架构。可以为 null。 + db 表。可以为 null。 + 应该用于检索此 EntitySet 的数据的提供程序特定的查询。可以为 null。 + 此实体集类型包含的实体的实体类型。 + 将添加到新创建的 EntitySet 的元数据属性。可以为 null。 + 在名称参数为 null 或是空字符串时引发。 + + + 获取此 的实体类型。 + 一个 对象,表示此 的实体类型。 + + + 表示某一实体集的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取描述此实体集的已转义提供程序特定的 SQL。 + + + 获取此 的实体类型。 + 一个 对象,表示此 的实体类型。 + + + 获取当前实体集或关系集的实体容器。 + 一个 对象,表示当前实体集或关系集的实体容器。 + + + 获取或设置当前实体集或关系集的名称。如果从存储空间更改此属性,则也必须更新映射层,以便反映新名称。若要更改存储空间 的表名称,请使用 Table 属性。 + 当前实体集或关系集的名称。 + + + 获取或设置此实体集的数据库架构。 + + + 获取或设置此实体集的数据库表名称。 + + + 返回当前实体集或关系集的名称。 + 当前实体集或关系集的名称。 + + + 表示 的结构。在概念模型中,这表示某一实体的形状和结构。在存储模型中,这表示表的结构。若要更改架构和表名称,请使用 EntitySet。 + + + 将指定的导航属性添加到此类型的成员。添加导航属性,而与只读标志无关。 + 要添加的导航属性。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 EntityType 对象的工厂方法。 + EntityType 对象。 + 实体类型的名称。 + 此实体类型的命名空间。 + 此 EntityType 属于的数据空间。 + 该类型的键成员的名称。 + 该实体类型的成员(基元和导航属性)。 + 要与该实例相关联的元数据属性。 + 在 name 或 namespace 参数为 null 时引发。 + + + 构造该 EntityType 对象的工厂方法。 + EntityType 对象。 + 实体类型的名称。 + 此实体类型的命名空间。 + 此 EntityType 属于的数据空间。 + 基类型。 + 该类型的键成员的名称。 + 该实体类型的成员(基元和导航属性)。 + 要与该实例相关联的元数据属性。 + 在 name 或 namespace 参数为 null 时引发。 + + + 获取实体类型的已声明成员的集合。 + 实体类型的已声明成员的集合。 + + + 获取与实体类型关联的已声明导航属性。 + 与实体类型关联的已声明导航属性。 + + + 获取实体类型的已声明属性的列表。 + 实体类型的已声明属性。 + + + 返回一个引用此 对象。 + 一个引用此 对象。 + + + 获取此 的导航属性。 + 一个 类型的集合,其中包含此 的导航属性列表。 + + + 获取此 的属性列表。 + 一个 类型的集合,其中包含此 的属性列表。 + + + 表示实体类型 + + + 将指定的属性添加到当前实体的键的列表。 + 要添加的属性。 + 如果成员参数为 null + 在 EntityType 具有另一个 EntityTypeBase 的基类型时引发。在此情形下,KeyMembers 应该作为基类型添加 + 如果 EntityType 实例处于 ReadOnly 状态 + + + 获取当前实体或关系类型的所有键成员的列表。 + 一个 对象,表示当前实体或关系类型的键成员的列表。 + + + 获取此实体类型的所有键属性的列表。 + 此实体类型的所有键属性的列表。 + + + 从集合中删除指定的键成员。 + 要删除的键成员。 + + + 表示一个枚举成员。 + + + 获取此类型的种类。 + 此类型的种类。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 获取该枚举成员的名称。 + 此枚举成员的名称。 + + + 重写 System.Object.ToString 以提供针对此类型的更好的字符串表示形式。 + 此枚举成员的名称。 + + + 获取该枚举成员的值。 + 此枚举成员的值。 + + + 表示一个枚举类型。 + + + 返回类型的种类 + + + 创建一个只读的 EnumType 实例。 + 新创建的 EnumType 实例。 + 枚举类型的名称。 + 枚举类型的命名空间。 + 枚举类型的基础类型。 + 指示是否可以将枚举类型视为位域;即标志集。 + 枚举类型的成员。 + 要与枚举类型相关联的元数据属性。 + underlyingType 为 null。 + name 为 null 或为空。-或- namespaceName 为 null 或为空。-或- underlyingType 不是支持的基础类型。-或- 指定成员的名称不唯一。-或- 指定成员的值不在基础类型的范围内。 + + + 获取一个值,该值指示 enum 类型是否已定义为标志(即,可被视为位域) + + + 获取此枚举类型的枚举成员的集合。 + + + 获取此枚举类型的基础类型。 + + + 表示某一 Facet 对象的类。此对象是不可变的(不是仅设置为只读)并且系统的某些部分正依赖于该行为 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取有关此 的说明。 + + 对象,表示有关此 的说明。 + + + 获取此 的类型。 + + 对象,表示此 的类型。 + + + 获取一个值,该值指示是否未绑定方面的值。 + 如果未绑定方面的值,则为 true;否则为 false。 + + + 获取此 的名称。 + 的名称。 + + + 返回此 的名称。 + 的名称。 + + + 获取此 的值。 + 的值。 + + + 表示 FacetDescription 对象的类 + + + 获取具有此方面说明的方面的默认值。 + 具有此方面说明的方面的默认值。 + + + 获取此方面的名称。 + 此方面的名称。 + + + 获取此方面的类型。 + 一个 对象,表示此方面的类型。 + + + 获取一个值,该值指示此方面的值是否为常量。 + 如果此方面是一个常量,则为 true;否则为 false。 + + + 获取一个值,该值指示此方面是否为必需的方面。 + 如果此方面是必需的方面,则为 true;否则为 false。 + + + 获取此方面的最大值。 + 此方面的最大值。 + + + 获取此方面的最小值。 + 此方面的最小值。 + + + 返回此方面的名称。 + 此方面的名称。 + + + 表示函数参数的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 对象的工厂方法。 + + 类型的新的只读实例。 + 参数名。 + 参数的 EdmType。 + 参数的 。 + + + 获取已对其声明此参数的 + 一个 对象,表示已对其声明此参数的函数。 + + + 获取此参数是否使用数据库提供程序支持的最大长度的信息。 + 如果此参数使用数据库提供程序支持的最大长度,则为 true;否则为 false。 + + + 获取最大长度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取精度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取小数位数方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取参数的最大长度。 + 参数的最大长度。 + + + 获取此 的模式。 + + 值之一。 + + + 获取此 的名称。 + 的名称。 + + + 获取参数的精度值。 + 参数的精度值。 + + + 获取参数的小数位数值。 + 参数的小数位数值。 + + + 返回此 的名称。 + 的名称。 + + + 获取此参数的类型名称。 + 此参数的类型名称。 + + + 获取既包含该参数的类型又包含该类型的各个方面的 类实例。 + 一个 对象,其中既包含该参数的类型又包含该类型的各个方面。 + + + 表示所有元数据的项基类 + + + 用于获取 的基础存储和概念模型的接口。 + + + 获取概念模型。 + + + 获取存储模型。 + + + 表示项的集合的类。该集合的实际维护的大部分实现由 MetadataCollection 完成 + + + 获取与此项集合关联的数据模型。 + 与此项集合关联的数据模型。 + + + 使用指定的实体容器名称返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + + + 使用指定的实体容器名称返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的名称从此项集合中返回所有函数重载。 + 一个 ReadOnlyCollection 类型的集合,其中包含具有指定名称的所有函数。 + 一个函数字典。 + 函数的全名。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的名称从此项集合中返回所有函数重载。 + 一个 类型的集合,其中包含具有指定名称的所有函数。 + 函数的全名。 + + + 使用指定的名称从此项集合中返回所有函数重载。 + 一个 类型的集合,其中包含具有指定名称的所有函数。 + 函数的全名。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的标识返回一个强类型的 对象。 + 由标识指定的项。 + 项的标识。 + 由方法返回的类型。 + + + 通过使用指定的标识进行区分大小写或不区分大小写的搜索,返回一个强类型的 对象。 + 由标识指定的项。 + 项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 由方法返回的类型。 + + + 从此项集合中返回属于指定类型的所有项。 + 一个 类型的集合,其中包含属于指定类型的所有项。 + 由方法返回的类型。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 一个 对象,表示此项集合中与指定的类型名称和命名空间名称匹配的类型。如果不存在匹配的类型,此方法将返回 null。 + 类型名称。 + 类型的命名空间。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 一个 对象,表示此项集合中与指定的类型名称和命名空间名称匹配的类型。如果不存在匹配的类型,此方法将返回 null。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的实体容器名称返回一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将包含第一个实体容器。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 它在此方法返回时会包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将包含第一个实体容器。 + + + 使用指定的实体容器名称返回一个 对象。如果不存在实体容器,该输出参数将包含 null;否则,它将包含第一个实体容器。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 它在此方法返回时会包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将包含第一个实体容器。 + + + 使用指定的标识从此项集合中返回一个强类型的 对象。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,此输出参数会包含一个 对象。如果项集合中不存在具有指定标识的全局项,此输出参数将包含 null。 + 由方法返回的类型。 + + + 使用指定的标识从此项集合中返回一个强类型的 对象。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 项的标识。 + 在此方法返回时,此输出参数会包含一个 对象。如果项集合中不存在具有指定标识的全局项,此输出参数将包含 null。 + 由方法返回的类型。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,此输出参数会包含一个 对象。如果此项集合中不存在具有指定的名称和命名空间名称的类型,此输出参数将包含 null。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 在此方法返回时,此输出参数会包含一个 对象。如果此项集合中不存在具有指定的名称和命名空间名称的类型,此输出参数将包含 null。 + + + 表示所有元数据的项基类 + + + 添加或更新具有指定名称和值的批注。 + 批注属性的名称。 + 批注属性的值。 + + + 获取此类型的内置类型种类。 + 一个 对象,表示此类型的内置类型种类。 + + + 获取或设置与此类型关联的文档。 + 一个 对象,表示介绍此类型的文档。 + + + 返回一个与 值之一匹配的概念模型内置类型。 + 一个 对象,表示 EDM 中的内置类型。 + + 值之一。 + + + 返回有关指定类型的常规方面的说明列表。 + 一个 对象,表示有关指定类型的常规方面的说明列表。 + + + 获取当前类型的属性列表。 + 一个 类型的集合,其中包含当前类型的属性列表。 + + + 删除具有指定名称的批注。 + 如果删除了批注,则为 true;否则为 false。 + 批注属性的名称。 + + + 表示某一项的元数据特性的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 MetadataProperty 对象的工厂方法。 + MetadataProperty 对象。 + 元数据属性的名称。 + 该元数据属性的类型用法。 + 元数据属性的值。 + + 为 null 时引发。 + + + 创建具有指定名称和值的元数据批注。 + 表示创建的批注的 MetadataProperty 实例。 + 批注名称。 + 批注值。 + + + 获取指示元数据属性是否为注释的布尔值。 + + + 获取此 的名称。 + 的名称。 + + + 获取此 的值。 + 的值。 + + + 获取既包含此 的类型又包含该类型的各个方面的 类实例。 + 一个 对象,其中既包含此 的类型又包含该类型的各个方面。 + + + 获取此 的值。 + 的值。 + + + 运行时元数据工作区 + + + 初始化 类的新实例。 + + + 使用指定的路径和程序集初始化 类的新实例。 + 工作区元数据的路径。 + 用于构造工作区的程序集的名称。 + + + 使用来自传统 EDMX 映射的所有项集合 () 的加载程序构造一个 。将使用默认的 o-space 和 o/c 映射集合。首次使用给定集合时,会惰式执行项集合委托。可以传递一个委托,以便在集合从不会被使用时返回 null,但极少这样做,因为在这种情况下,EF 使用集合的任何尝试都将导致异常。 + 委托以返回 c-space (CSDL) 项集合。 + 委托以返回 s-space (SSDL) 项集合。 + 委托以返回 c/s 映射 (MSL) 项集合。 + + + 使用 EF 所需的所有项集合 () 的加载程序构造一个 ,o/c 映射除外,将基于给定的 o-space 和 c-space 加载程序自动创建该映射。首次使用给定集合时,会惰式执行项集合委托。可以传递一个委托,以便在集合从不会被使用时返回 null,但极少这样做,因为在这种情况下,EF 使用集合的任何尝试都将导致异常。 + 委托以返回 c-space (CSDL) 项集合。 + 委托以返回 s-space (SSDL) 项集合。 + 委托以返回 c/s 映射 (MSL) 项集合。 + 委托以返回 o-space 项集合。 + + + 清除所有的元数据缓存条目。 + + + 创建配置为使用 数据空间的 + 创建的分析器对象。 + + + 基于指定的查询表达式,创建限定为此元数据工作区的新 + 使用指定表达式作为其 属性的新 + 一个定义查询的 。 + 如果 为 null + 如果 包含在此元数据工作区无法解析的元数据 + 如果 因为包含无法解析的变量引用导致结构无效 + + + 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 一个表示 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个在对象空间中提供类型的 。 + + + 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 一个表示 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个在对象空间中提供类型的 。 + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索实体容器的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + 要从中搜索实体容器的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的名称、命名空间名称和数据模型返回所有函数重载。 + 一个 类型的集合,其中包含给定命名空间和数据模型中与指定名称匹配的所有函数。 + 函数的名称。 + 函数的命名空间。 + 要从中搜索函数的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的名称、命名空间名称和数据模型返回所有函数重载。 + 一个 类型的集合,其中包含给定命名空间和数据模型中与指定名称匹配的所有函数。 + 函数的名称。 + 函数的命名空间。 + 要从中搜索函数的概念模型。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的标识和数据模型返回一个项。 + 指定的数据模型中与给定标识匹配的项。 + 项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 由方法返回的类型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的标识和数据模型返回一个项。 + 指定的数据模型中与给定标识匹配的项。 + 项的标识。 + 要从中搜索项的概念模型。 + 由方法返回的类型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 获取 项。 + + 项。 + 要从其中检索项的 。 + + + 获取指定数据模型中的所有项。 + 一个 类型的集合,其中包含指定数据模型中的所有项。 + 需要其项列表的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 获取指定数据模型中的所有项。 + 一个 类型的集合,其中包含指定数据模型中的所有项。 + 需要其项列表的概念模型。 + 由方法返回的类型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 返回一个 对象,该对象表示与参数 edmSpaceType 提供的类型匹配的对象空间类型。 + 一个表示对象空间类型的 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个表示 对象。 + + + 返回一个 对象,该对象表示与参数 edmSpaceType 提供的类型匹配的对象空间类型。 + 一个表示对象空间类型的 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个表示 对象。 + + + 返回指定数据模型中的基元类型列表。 + 一个 类型的集合,其中包含指定数据模型中的所有基元类型。 + 需要获取其基元类型列表的数据模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 返回在修改实体时需要对其使用原始值的给定 / 的成员。 + 需要原始值的 + 属于 C-Space 的 。 + 参与给定 。 + 如果可以部分更新实体,则为 true;否则为 false。 + + + 从实体集和实体类型获取原始值成员。 + 实体集和实体类型中的原始值成员。 + 从中检索原始值的实体集。 + 对其检索原始值的实体类型。 + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 一个 对象。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索类型的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 一个 对象,表示指定的数据模型中与给定的类型名称和命名空间名称匹配的类型。如果不存在匹配的类型,此方法将返回 null。 + 类型名称。 + 类型的命名空间。 + 要从中搜索类型的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + 用于记录加载消息的委托。 + + + 运行时将支持的最高 EDM 版本。 + + + 在每个关联的数据模型中注册项集合。 + 需要填充的输出参数集合。 + + + 通过输出参数 edmSpaceType 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 如果成功,则为 true;如果失败,则为 false。 + 一个表示对象空间类型的 对象。 + 在此方法返回时,包含一个表示 对象。此参数未经初始化即被传递。 + + + 通过输出参数 edmSpaceType 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示对象空间类型的 对象。 + 在此方法返回时,包含一个表示 对象。此参数未经初始化即被传递。 + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索实体容器的概念模型。 + 在此方法返回时,包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将返回第一个实体容器。此参数未经初始化即被传递。 + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 要从中搜索实体容器的概念模型。 + 在此方法返回时,包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将返回第一个实体容器。此参数未经初始化即被传递。 + + + 使用指定的标识和数据模型返回一个项。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + 由方法返回的类型。 + + + 使用指定的标识和数据模型返回一个项。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 要从中搜索项的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + 由方法返回的类型。 + + + 测试对 的检索。 + 如果检索成功,则为 true,否则为 false。 + 从中尝试 检索的 。 + 在此方法返回时,包含项集合。此参数未经初始化即被传递。 + + + 通过输出参数 objectSpaceType 返回一个 对象,该对象表示与参数 edmSpaceType 提供的 匹配的类型。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示 对象。 + 此方法返回时,包含一个 对象,该对象表示对象空间类型。此参数未经初始化即被传递。 + + + 通过输出参数 objectSpaceType 返回一个 对象,该对象表示与参数 edmSpaceType 提供的 匹配的类型。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示 对象。 + 此方法返回时,包含一个 对象,该对象表示对象空间类型。此参数未经初始化即被传递。 + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索类型的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 要从中搜索类型的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + + + 表示 edm 导航属性类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 从指定的参数创建一个 NavigationProperty 实例。 + 新创建的 NavigationProperty 实例。 + 导航属性的名称。 + 指定导航属性类型及其方面。 + 导航的关系类型。 + 导航中的源端成员。 + 导航中的目标端成员。 + 导航属性的元数据属性。 + + + 获取此导航中的“源”关系 End 成员。 + 此导航中的“源”关系 End 成员。 + + + 在给定的导航属性位于引用约束的依赖端时,返回外键属性。否则,返回空集。我们将按主体端键属性的顺序返回这些成员。 + 外键属性的集合。 + + + 获取此导航属性操作的关系类型。 + 此导航属性操作的关系类型。 + + + 获取此导航的“目标”关系 End 成员。 + 此导航的“目标”关系 End 成员。 + + + 表示对象层的项集合的类。该集合的实际维护的大部分实现由 ItemCollection 完成 + + + 初始化 类的新实例。 + + + 该方法返回指定 OSpace 类型参数的基础 CLR 类型。如果该参数的 DataSpace 不为 OSpace,则引发 ArgumentException。 + OSpace 参数的 CLR 类型。 + 要查找的 OSpace 类型。 + + + 返回与 objectSpaceType 参数提供的 相对应的 CLR 类型。 + OSpace 参数的 CLR 类型。 + 一个表示对象空间类型的 。 + + + 从此项集合中返回属于指定类型的所有项。 + 一个 类型的集合,其中包含属于指定类型的所有项。 + 由方法返回的类型。 + + + 返回基元类型对象集合。 + 基元类型对象的集合。 + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + + + 从指定的程序集加载元数据。 + 将加载其元数据的程序集。 + O space 元数据的 EDM 元数据源。 + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + O space 元数据的 EDM 元数据源。 + 将向其发送日志消息的委托。 + + + 返回指定的枚举类型参数的基础 CLR 类型。如果该参数的 DataSpace 不为 OSpace,则此方法返回 false 并将 out 参数设置为 null。 + 如果成功,则为 true;如果失败,则为 false + 要查找的 OSpace 枚举类型 + OSpace 参数的 CLR 枚举类型 + + + 返回与 objectSpaceType 参数提供的 相对应的 CLR 类型。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示对象空间类型的 。 + CLR 类型。 + + + 表示针对删除操作的可能操作的列表 + + + 级联到其他端 + + + 不执行任何操作 + + + 定义参数的模式的枚举 + + + In 参数 + + + in 和 out 参数 + + + Out 参数 + + + 返回参数 + + + 定义用于解析函数重载的类型语义的枚举。这些标志是在提供程序清单中根据函数定义来定义的。 + + + 允许在给定参数类型和形参类型(默认值)之间进行隐式转换。 + + + 允许在给定参数类型和形参类型之间进行类型提升。 + + + 仅使用严格等效。 + + + 表示基元类型的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 返回与此 等效的公共语言运行时 (CLR) 类型。请注意, 属性始终返回不可以为 null 的类型值。 + 一个 对象,表示与此 等效的公共语言运行时 (CLR) 类型。 + + + 获取有关此 各方面的说明列表。 + 一个 类型的集合,其中包含有关此 的方面说明列表。 + + + 返回与此 等效的 + 一个与此 等效的 对象。 + + + 返回 的等效 + 一个 对象,该对象是指定的 的等效项。 + 一个 类型的值。 + + + 返回基元类型的列表。 + 一个 类型的集合,其中包含基元类型的列表。 + + + 获取一个 枚举值,该值指示此 的基元类型。 + 一个指示此 的基元类型的 枚举值。 + + + EDM 定义的基元类型 + + + Binary 类型种类 + + + Boolean 类型种类 + + + Byte 类型种类 + + + DateTime 类型种类 + + + DateTimeOffset 类型种类 + + + Decimal 类型种类 + + + Double 类型种类 + + + Geography 类型种类 + + + Geographic 集合类型种类 + + + Geographic 线性环类型种类 + + + Geographic 多线性环类型种类 + + + Geographic 多点类型种类 + + + Geographic 多多边形类型种类 + + + Geographic 单点类型种类 + + + Geographic 多边形类型种类 + + + Geometry 类型种类 + + + Geometric 集合类型种类 + + + Geometric 线性环类型种类 + + + Geometric 多线性环类型种类 + + + Geometric 多点类型种类 + + + Geometric 多多边形类型种类 + + + Geometric 单点类型种类 + + + Geometric 多边形类型种类 + + + Guid 类型种类 + + + Int16 类型种类 + + + Int32 类型种类 + + + Int64 类型种类 + + + SByte 类型种类 + + + Single 类型种类 + + + String 类型种类 + + + Time 类型种类 + + + 指定概念模型中项特性的种类。 + + + 一个指示项特性为 Extended 的枚举成员。 + + + 一个指示项特性为 System 的枚举成员 + + + 表示 MetadataCollection 周围的只读包装的类 + 此集合中项的类型 + + + 确定集合中是否包含具有指定标识的项。 + 如果集合中包含要搜索的项,则为 true;否则为 false。默认值为 false。 + 项的标识。 + + + 返回一个可循环访问此集合的枚举器。 + 一个可用于循环访问此 + + + 使用指定的标识从此集合中检索一个项。 + 此集合中的一个项。 + 要搜索的项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 返回指定的值在此集合中的索引。 + 指定的值在此集合中的索引。 + 要搜寻的值。 + + + 获取一个值,该值指示此集合是否是只读的。 + 如果此集合是只读的,则为 true;否则为 false。 + + + 使用指定的标识从此集合中获取一个项。 + 此集合中的一个项。 + + + 使用指定的标识从此集合中检索一个项。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 要搜索的项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,此输出参数会包含集合中的一个项。如果不存在匹配的项,此输出参数将包含 null。 + + + MetadataCollection 的枚举器 + + + 获取位于当前位置的成员。 + 位于当前位置的成员。 + + + 释放此枚举器。 + + + 移至 类型的集合中的下一个成员。 + 如果枚举器在 类型的集合中发生了移动,则为 true;否则为 false。 + + + 将枚举器定位在 类型的集合中的第一个位置之前。 + + + 获取位于当前位置的成员 + + + 该类表示指定关系的“to”和“from”端的两个实体之间的引用约束。 + + + 在该关系上构造一个新约束 + 该关系源自的角色 + 该关系链接到/针对的角色 + 参与约束的目标角色的实体类型上的属性 + 参与约束的源角色的实体类型上的属性 + 如果任何参数为 null,则引发参数 Null 异常 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取定义此 时使用的“源角色”的属性列表。 + 一个 类型的集合,其中包含定义此 时使用的“源角色”的属性列表。 + + + 获取参与此 的“源角色”。 + 一个 对象,表示参与此 的“源角色”。 + + + 获取定义此 时使用的“目标角色”的属性列表。 + 一个 类型的集合,其中包含定义此 时使用的“目标角色”的属性列表。 + + + 获取参与此 的“目标角色”。 + 一个 对象,表示参与此 的“目标角色”。 + + + 返回 的名称组合。 + + 的名称组合。 + + + 表示引用类型的类。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取此 引用的实体类型。 + 一个 对象,表示此 引用的实体类型。 + + + 确定指定对象等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 初始化 RelationshipEndMember 类的新实例 + + + 获取此关系 End 成员的操作行为。 + + 值之一。默认值为 + + + 访问关联中的 EndMember 的 EntityType。 + 关联中的 EndMember 的 EntityType。 + + + 获取此关系 End 成员的重数。 + + 值之一。 + + + 表示与关系类型的端有关的多重性信息 + + + 下限为 0,上限为 null + + + 下限和上限均为 1 + + + 下限为 0,上限为 1 + + + 表示关系集的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取此 的关系类型。 + 一个 对象,表示此 的关系类型。 + + + 表示关系类型 + + + 获取此关系类型的 End 列表。 + 一个 类型的集合,其中包含此关系类型的 End 列表。 + + + 表示 Edm 行类型 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 对象的工厂方法。 + + 对象的新的只读实例。 + 行类型对象的属性。 + 将添加到该函数的元数据属性。可以为 null。 + + + 获取由当前类型定义的属性集合。 + 由当前类型定义的属性集合。 + + + 获取此 的属性列表。 + 一个 类型的集合,其中包含此 的属性列表。 + + + 表示简单类型的类 + + + 提供用于将 的存储(数据库)部分序列化到 XML 的方法。 + + + 初始化 类的新实例。 + + + 当序列化模型过程中遇到错误时发生。 + + + 序列化到 + 如果模型可以序列化,则为 true;否则为 false。 + 要序列化的 EdmModel。 + 架构元素上的命名空间名称。 + 架构元素上的提供程序信息。 + 架构元素上的 ProviderManifestToken 信息。 + 要序列化到的 XmlWriter。 + 指示在将可为空的属性设置为默认值时是否对其进行序列化的值。 + + + 序列化到 + 如果模型可以序列化,则为 true;否则为 false。 + 要序列化的 EdmModel。 + 架构元素上的提供程序信息。 + 架构元素上的 ProviderManifestToken 信息。 + 要序列化到的 XmlWriter。 + 指示在将可为空的属性设置为默认值时是否对其进行序列化的值。 + + + 服务器生成的属性的模式。 + + + 执行 INSERT 和 UPDATE 时都将生成一个值。 + + + 执行 INSERT 时生成一个值,但在执行 UPDATE 时保持不变。 + + + 不是服务器生成的属性。这是默认值。 + + + 表示存储空间中项的集合的类。 + + + 使用指定的 XMLReader 初始化 类的新实例。 + 用于创建元数据的 XMLReader。 + + + 初始化 类的新实例。 + + 的模型。 + + + 使用指定的文件路径初始化 类的新实例。 + 用于创建元数据的文件路径。 + + + 创建 的工厂方法。 + 如果未遇到错误,则为 实例。否则为 null。 + 要加载的 SSDL 项目。不得是 null。 + SSDL 项目的路径。用于错误消息中。可为 null,在此情况下,XmlReader 的基 Uri 将用作路径。 + 自定义解析程序。目前用于解析 DbProviderServices 实现。如果为 null,将使用默认解析程序。 + 加载时遇到的错误的集合。 + + + 返回一个由 对象构成的集合。 + 一个 对象,表示 对象的集合。 + + + 获取 StoreItemCollection 的提供程序工厂。 + StoreItemCollection 的提供程序工厂。 + + + 获取 StoreItemCollection 的固定名称。 + StoreItemCollection 的固定名称。 + + + 获取 StoreItemCollection 的提供程序清单。 + StoreItemCollection 的提供程序清单。 + + + 获取 StoreItemCollection 的清单标记。 + StoreItemCollection 的清单标记。 + + + 获取此集合的存储架构版本。 + 此集合的存储架构版本。 + + + 表示结构化类型 + + + 向此类型添加成员 + 要添加的成员 + + + 获取此类型的成员列表。 + 一个 类型的集合,其中包含此类型的一组成员。 + + + 从此类型删除成员。 + 要删除的成员。 + + + 表示某一项的类型信息的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 用于创建具有指定 EdmType 和方面的 TypeUsage 的工厂方法 + 新的 TypeUsage 实例 + 要为其创建类型用法的 EdmType + 要复制到新的 TypeUsage 中的方面 + + + 创建一个使用指定方面值描述二进制类型的 对象。 + 一个使用指定方面值描述二进制类型的 对象。 + 要为其创建 对象的 。 + 如果将二进制类型的长度设置为固定数值,则为 true;否则为 false。 + + + 创建一个使用指定方面值描述二进制类型的 对象。 + 一个使用指定方面值描述二进制类型的 对象。 + 要为其创建 对象的 。 + 如果将二进制类型的长度设置为固定数值,则为 true;否则为 false。 + 二进制类型的最大长度。 + + + 创建参数所描述类型的 对象。 + + 对象。 + 用于定义偏移的度量单位的简单类型。 + 用秒的小数部分(基于支持的小数位数)表示的 DateTimeOffset 的粒度。例如,精度为 3 表示支持的粒度为毫秒。 + + + 创建参数所描述类型的 对象。 + + 对象。 + 用于定义 DateTime 对象的度量单位的简单类型。 + 用秒的小数部分(基于支持的小数位数)表示的 DateTimeOffset 的粒度。例如,精度为 3 表示支持的粒度为毫秒。 + + + 创建一个用无限精度和小数位数方面值描述十进制类型的 对象。 + 一个使用无限精度和小数位数方面值描述十进制类型的 对象。 + 要为其创建 对象的 。 + + + 创建一个使用指定方面值描述十进制类型的 对象。 + 一个使用指定方面值描述十进制类型的 对象。 + 要为其创建 对象的 。 + 十进制类型(以 类型表示)的精度。 + 十进制类型(以 类型表示)的小数位数。 + + + 创建一个具有指定概念模型类型的 对象。 + 一个具有指定 的默认方面值的 对象。 + 要为其创建 对象的 。 + + + 创建一个使用指定方面值和无限 MaxLength 描述字符串类型的 对象。 + 一个使用指定方面和无限 MaxLength 描述字符串类型的 对象。 + 要为其创建 对象的 。 + 如果将字符串类型的字符编码标准设置为 Unicode,则为 true;否则为 false。 + 如果将字符串类型的长度设置为固定数值,则为 true;否则为 false + + + 创建一个使用指定方面值描述字符串类型的 对象。 + 一个使用指定方面值描述字符串类型的 对象。 + 要为其创建 对象的 。 + 如果将字符串类型的字符编码标准设置为 Unicode,则为 true;否则为 false。 + 如果将字符串类型的字符编码标准设置为 Unicode,则为 true;否则为 false。 + 如果将字符串类型的长度设置为固定数值,则为 true;否则为 false。 + + + 创建参数所描述类型的 对象。 + + 对象。 + 用于定义 DateTime 对象的度量单位的简单类型。 + 用秒的小数部分(基于支持的小数位数)表示的 DateTimeOffset 的粒度。例如,精度为 3 表示支持的粒度为毫秒。 + + + 获取由此 描述的类型信息。 + 一个 对象,表示由此 描述的类型信息。 + + + 获取由此 描述的类型的方面列表。 + 一个 类型的集合,其中包含由此 描述的类型的方面列表。 + + + 检查此 是否为指定 的子类型。 + 如果此 是指定 的子类型,则为 true;否则为 false。 + 要检查的 对象。 + + + 返回某一提供程序类型的模型类型用法 + 模型 (CSpace) 类型用法 + + + 返回由此 描述的类型的全名。 + 描述的类型的全名(采用字符串的形式)。 + + + 缓存 ELinq 查询 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg13 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg13 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg14 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg13 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg14 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg15 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 当前赋给实体的各个属性的值。 + + + 提供对对象数据的原始值的访问。DbUpdatableDataRecord 实现可用于更新对象的原始值的方法。 + + + 获取数据记录信息。 + + 对象。 + + + 获取记录中的字段数。 + 整数值字段数。 + + + 检索布尔值形式的字段值。 + 布尔值形式的字段值。 + 字段的序号。 + + + 检索字节形式的字段值。 + 字节形式的字段值。 + 字段的序号。 + + + 检索字节数组形式的字段值。 + 已复制的字节数。 + 字段的序号。 + 开始复制数据的位置的索引。 + 将数据复制到其中的目标缓冲区。 + 目标缓冲区中开始复制的位置的索引。 + 要复制的字节数。 + + + 检索字符形式的字段值。 + 字符形式的字段值。 + 字段的序号。 + + + 检索字符数组形式的字段值。 + 已复制的字符数。 + 字段的序号。 + 开始复制数据的位置的索引。 + 将数据复制到其中的目标缓冲区。 + 目标缓冲区中开始复制的位置的索引。 + 要复制的字符数。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索字段数据类型的名称。 + 字段数据类型的名称。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索十进制形式的字段值。 + 十进制形式的字段值。 + 字段的序号。 + + + 检索双精度值形式的字段值。 + 双精度值形式的字段值。 + 字段的序号。 + + + 检索字段的类型。 + 字段类型。 + 字段的序号。 + + + 检索浮点形式的字段值。 + 浮点形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索字段的名称。 + 字段的名称。 + 字段的序号。 + + + 使用字段名检索字段的序号。 + 字段的序号。 + 字段的名称。 + + + 检索字段的值。 + 字段值。 + 字段的序号。 + + + 检索字符串形式的字段值。 + 字段值。 + 字段的序号。 + + + 检索字段的值。 + 字段值。 + 字段的序号。 + + + 使用当前记录的字段值来填充对象数组。 + 返回的字段值的数目。 + 用于存储字段值的对象数组。 + + + 返回指定字段是否设置为 + 如果字段设置为 ,则为 true;否则为 false。 + 字段的序号。 + + + 返回具有给定字段序号的值。 + 具有给定字段序号的值。 + + + 获取具有给定字段名称的值。 + 字段值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 将一个字段设置为 值。 + 字段的序号。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中的字段值。 + 已设置的字段数。 + 字段的值。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 提供在 LINQ to Entities 查询中使用的公开 EDM 规范函数的公共语言运行时 (CLR) 方法。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为非 Unicode 字符串处理的运算符。 + 作为非 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为 Unicode 字符串处理的运算符。 + 作为 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTime EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTimeOffset EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + 新日期的时区偏移量部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateTime EDM 函数以创建新的 对象。 + 新的时间跨度。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个时间跨度间隔的小时数。 + 第一个时间跨度和第二个时间跨度间隔的小时数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个时间跨度间隔的微秒数。 + 第一个时间跨度和第二个时间跨度间隔的微秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个时间跨度间隔的毫秒数。 + 第一个时间跨度和第二个时间跨度间隔的毫秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个时间跨度间隔的分钟数。 + 第一个时间跨度和第二个时间跨度间隔的分钟数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个时间跨度间隔的纳秒数。 + 第一个时间跨度和第二个时间跨度间隔的纳秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个时间跨度间隔的秒数。 + 第一个时间跨度和第二个时间跨度间隔的秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 GetTotalOffsetMinutes EDM 函数以返回指定的日期/时间偏移 UTC 的分钟数。该值通常介于 +780 到 -780 之间(+ 或 - 13 小时)。 + 输入对 UTC 的偏移量。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Left 函数以返回字符串中最左侧指定数目的字符。 + 包含从输入字符串左侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Reverse 函数以返回其字符顺序反转的指定字符串。 + 以反转字符顺序显示的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Right 函数以返回字符串中最右侧指定数目的字符。 + 包含从输入字符串右侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 表示查询执行的选项。 + + + 创建 的新实例。 + 要用于实体结果的合并选项。 + + + 创建 的新实例。 + 要用于实体结果的合并选项。 + 如果流式处理查询,则为 true;否则为 false。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取用于实体结果的合并选项。 + 要用于实体结果的合并选项。 + + + 确定指定的对象是否相等。 + 如果两个对象相等,则为 true;否则为 false。 + 要比较的左侧对象。 + 要比较的右侧对象。 + + + 确定指定的对象是否不相等。 + 如果两个对象不相等,则为 true;否则为 false。 + 要比较的左侧对象。 + 要比较的右侧对象。 + + + 获取指示查询是否是流式处理还是缓存的一个值。 + 如果查询是流式处理,则为 true;否则为 false。 + + + 定义 IQueryable 实现的行为,该实现允许修改结果集的成员资格。 + 从查询返回的实体类型。 + + + 通知对象集,必须将表示新实体的对象添加到该集中。 + 要添加到集中的新对象。 + + + 通知对象集,必须将表示现有实体的对象添加到该集中。 + 要添加到集中的现有对象。 + + + 通知对象集,必须从中删除表示现有实体的对象。 + 要从集中删除的现有对象。 + + + 通知对象集,必须从中分离表示现有实体的对象。 + 要从对象集中分离的对象。 + + + 可将从数据库加载的新对象与内存中现有对象合并的不同方法。 + + + 将仅追加新的(顶级唯一)行。这是默认行为。 + + + 将不修改缓存。 + + + 与 LoadOption.OverwriteChanges 的行为相同。 + + + 与 LoadOption.PreserveChanges 的行为相同。 + + + ObjectContext 是封装 CLR 和数据库之间的连接的顶级元素,充当“创建”、“读取”、“更新”和“删除”操作的网关。 + + + 使用给定的连接初始化 类的新实例。在构造过程中,从 对象提取元数据工作区。 + 一种包含对模型和数据源连接的引用的 。 + connection 为 null。 + connection 无效或元数据工作区无效。 + + + 使用给定的连接和元数据工作区创建 ObjectContext。 + 与存储区的连接 + 如果设置为 true,则释放上下文时将释放该连接;否则调用方必须释放该连接。 + + + 使用给定连接和实体容器名称初始化 类的新实例。 + 一种包含对模型和数据源连接的引用的 。 + 默认实体容器的名称。通过此方法设置 defaultContainerName 时,该属性为只读属性。 + connection 为 null。 + connection、defaultContainerName 或元数据工作区无效。 + + + 使用给定连接字符串和默认实体容器名称初始化 类的新实例。 + 连接字符串,该连接字符串还提供对元数据信息的访问。 + connectionString 为 null。 + connectionString 无效或元数据工作区无效。 + + + 使用给定连接字符串和实体容器名称初始化 类的新实例。 + 连接字符串,该连接字符串还提供对元数据信息的访问。 + 默认实体容器的名称。通过此方法设置 defaultContainerName 时,该属性为只读属性。 + connectionString 为 null。 + connectionString、defaultContainerName 或元数据工作区无效。 + + + 接受在对象上下文中对对象所做的所有更改。 + + + 将对象添加到对象上下文。 + 表示实体集名称,可以选择通过实体容器名称对它进行限定。 + 要添加的 。 + entity 参数为 null 或 entitySetName 未限定。 + + + 将标量值从提供的对象复制到 中具有相同键的对象中。 + 已更新的对象。 + 对象所属实体集的名称。 + 其属性更新将应用于原始对象的已分离对象。currentEntity 的实体键必须与 中某个项的 属性相匹配。 + 对象的实体类型。 + entitySetName 或 current 为 null。 + 来自 entitySetName 的 与对象 不匹配,或对象不在 中,或对象处于 状态,或所提供对象的实体键无效。 + entitySetName 为空字符串。 + + + 将标量值从提供的对象复制到 中具有相同键的对象的原始值集中。 + 已更新的对象。 + 对象所属实体集的名称。 + 具有要应用于对象的原始值的已分离对象。originalEntity 的实体键必须与 中某个项的 属性相匹配。 + 实体对象的类型。 + entitySetName 或 original 为 null。 + 来自 entitySetName 的 与对象 不匹配,或在 中找不到对象的 ,或对象处于 状态,或所提供对象的实体键无效或属性发生了更改。 + entitySetName 为空字符串。 + + + 将已分离对象的属性更改应用于已附加到对象上下文的对象。 + 对象所属实体集的名称。 + 其属性更新将应用于原始对象的已分离对象。 + 当 entitySetName 为 null 或空字符串时,或当 changed 为 null 时。 + 当来自 entitySetName 的 与对象 不匹配时,或实体未处于 状态时,或原始对象未附加到上下文时。 + 当 changed 对象的类型与原始对象的类型不同时。 + + + 在对象具有实体键时将对象或对象图附加到对象上下文。 + 要附加的对象。 + entity 为 null。 + 无效的实体键。 + + + 将特定实体集中的对象或对象图附加到对象上下文。 + 表示实体集名称,可以选择通过实体容器名称对它进行限定。 + 要附加的 。 + entity 为 null。 + 实体集无效,或对象具有临时键,或对象具有 与作为方法参数传入的实体集不匹配,或对象没有 且未提供任何实体集,或对象图的任意对象具有临时 ,或对象图的任意对象具有无效的 (例如,键中的值与对象中的值不匹配),或无法根据给定的 entitySetName 名称和实体容器名称找到实体集,或对象图的任意对象已存于其他状态管理器中。 + + + 获取或设置所有对象上下文操作的超时值(以秒为单位)。null 值指示将使用基础提供程序的默认值。 + 作为超时值的 值(以秒为单位)。 + + + 获取对象上下文使用的连接。 + 一个作为连接的 对象。 + + + 获取 实例,该实例包含影响 行为的选项。 + + 实例,该实例包含影响 的行为的选项。 + + + 使用当前数据源连接和 中的元数据创建数据库。 + + + 生成数据定义语言 (DDL) 脚本,该脚本为 中的元数据创建架构对象(表、主键、外键)。 用于加载存储架构定义语言 (SSDL) 文件中的元数据。 + 一个 DDL 脚本,该脚本为 中的元数据创建架构对象。 + + + 为特定对象创建实体键,如果实体键已存在,则返回该键。 + 对象的 + 实体对象所属实体集的完全限定名称。 + 要为其检索实体键的对象。 + 当任一参数为 null 时。 + 当 entitySetName 为空时,或实体对象的类型在实体集中不存在时,或 entitySetName 没有完全限定时。 + 当无法根据提供的参数成功构造实体键时。 + + + 创建并返回所请求的类型的实例。 + 所请求类型 T 的实例,或一个使得 T 能够与实体框架一起使用的派生类型的实例。返回的对象是所请求类型的实例或使得请求的类型能够与实体框架一起使用的派生类型的实例。 + 要返回的对象的类型。 + + + 创建新的 实例,该实例用于查询、添加、修改和删除指定实体类型的对象。 + 新的 实例。 + 所请求的 的实体类型。 + 未在 上设置 属性,或指定的类型属于多个实体集。 + + + 创建新的 实例,该实例用于查询、添加、修改和删除具有指定类型和指定实体集名称的对象。 + 新的 实例。 + 返回的 的实体集的名称。如果未在 上设置 属性,则字符串必须使用默认容器名称进行限定。 + 所请求的 的实体类型。 + 来自 entitySetName 的 与对象 不匹配,或未在 上设置 属性且名称未限定为 entitySetName 参数的一部分,或指定的类型属于多个实体集。 + + + 为提供的枚举中的每个类型生成可与实体框架一同使用的等效类型。 + + 对象的枚举,这些对象表示映射到概念模型的自定义数据类。 + + + 使用指定查询字符串在当前对象上下文中创建 + 具有指定类型的 + 要执行的查询字符串。 + 要传递给查询的参数。 + 返回的 的实体类型。 + queryString 或 parameters 参数为 null。 + + + 检查在当前存储连接中指定为数据库的数据库是否在存储区上存在。大部分实际工作由当前存储连接的 DbProviderServices 实现完成。 + 如果数据库存在,则为 true;否则为 false。 + + + 获取或设置默认容器名称。 + 作为默认容器名称的 + + + 删除在当前数据源连接中指定为数据库的数据库。 + + + 标记对象以备删除。 + 指定待删除实体的对象。该对象可以为任何状态( 除外)。 + + + 从对象上下文移除对象。 + 要分离的对象。仅移除实体;如果存在任何由相同 跟踪的相关对象,则不会自动分离这些对象。 + entity 为 null。 + 实体不与此 关联(例如,是新创建的,仍未与任何上下文关联,或是通过其他上下文获取,或是已分离)。 + + + 确保 更改与由 跟踪的所有对象中的更改进行同步。 + + + 释放对象上下文使用的资源。 + + + 释放对象上下文使用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 对默认容器执行给定的函数。 + 一个表示执行此函数的结果的对象。 + 函数的名称。可能包含容器名称(例如 ContainerName.FunctionName),如果知道 DefaultContainerName,也可以仅包含函数名称。 + 用于执行此函数的选项。 + 要用于函数的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 函数结果的元素类型。 + 如果函数为 null 或为空 + 如果函数无效(语法错误、不存在或引用其返回类型与 T 不兼容的函数) + + + 使用指定的参数和合并选项,执行在数据源中定义并在概念模型中表示的给定存储过程或函数。返回一个类型化的 + 存储过程返回的数据的 + 存储过程或函数的名称。该名称可以包含容器名称,如 <容器名称>.<函数名称>。如果默认容器名称已知,则只需要函数名称。 + 要在执行查询时使用的 。 + 一个 对象数组。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 对数据源执行函数时,将返回 的实体类型。该类型必须实现 + function 为 null 或为空,或未找到 function。 + 实体读取器不支持此函数或读取器和函数的类型不匹配。 + + + 使用指定的参数,执行在数据源中定义并在概念模型中映射的存储过程或函数。返回一个类型化的 + 存储过程返回的数据的 + 存储过程或函数的名称。该名称可以包含容器名称,如 <容器名称>.<函数名称>。如果默认容器名称已知,则只需要函数名称。 + 一个 对象数组。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 对数据源执行函数时,将返回 的实体类型。该类型必须实现 + function 为 null 或为空,或未找到 function。 + 实体读取器不支持此函数或读取器和函数的类型不匹配。 + + + 执行在数据源中定义并在概念模型中表示的存储过程或函数,丢弃该函数返回的任何结果,并返回执行该函数影响的行数。 + 受影响的行数。 + 存储过程或函数的名称。该名称可以包含容器名称,如 <容器名称>.<函数名称>。如果默认容器名称已知,则只需要函数名称。 + 一个 对象数组。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + function 为 null 或为空,或未找到 function。 + 实体读取器不支持此函数或读取器和函数的类型不匹配。 + + + 使用现有连接对数据源直接执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 受影响的行数。 + 对于此命令控制事务的创建。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 受影响的行数。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 对于此命令控制事务的创建。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 对于此命令控制事务的创建。 + 使用服务器的本机查询语言指定的命令。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 使用服务器的本机查询语言指定的命令。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 要在执行查询时使用的 。默认值为 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 用于执行此查询的选项。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 用于执行此查询的选项。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 终结 类的实例。 + + + 返回所有现有代理类型。 + 所有现有代理类型的 + + + 返回具有指定实体键的对象。 + 一个 ,它是实体类型的实例。 + 要查找的对象的键。 + key 参数为 null。 + 和数据源中都未找到对象。 + + + 返回与指定类型的代理对象关联的 POCO 实体的实体类型。 + 关联的 POCO 实体的 + 代理对象的 。 + + + 返回用于此上下文的 + + + 通过指定的导航属性并使用默认合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的实体。 + 可返回要加载的相关对象的导航属性的名称。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 通过指定的导航属性并使用指定的合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的实体。 + 可返回要加载的相关对象的导航属性的名称。 + 在加载相关对象时要使用的 值。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 通过指定的 LINQ 查询并使用默认合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的源对象。 + 定义要加载的相关对象的 LINQ 表达式。 + 实体的类型。 + selector 未提供有效的输入参数。 + selector 为 null。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 通过指定的 LINQ 查询并使用指定的合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的源对象。 + 定义要加载的相关对象的 LINQ 表达式。 + 在加载相关对象时要使用的 值。 + 实体的类型。 + selector 未提供有效的输入参数。 + selector 为 null。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 获取对象上下文使用的元数据工作区。 + 与此 关联的 对象。 + + + 当使用数据源中的数据创建新的实体对象(作为查询或加载操作的一部分)时发生。 + + + 获取对象上下文用于跟踪对象更改的对象状态管理器。 + 使用的 + + + 获取与此对象上下文关联的 LINQ 查询提供程序。 + 由此对象上下文使用的 实例。 + + + 使用数据库中的数据更新对象上下文中的对象集合。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象的 集合。 + collection 为 null。 + refreshMode 无效。 + collection 为空或对象未附加到上下文。 + + + 使用数据库中的数据更新对象上下文中的对象。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象。 + entity 为 null。 + refreshMode 无效。 + 实体未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象集合。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象的 集合。 + collection 为 null。 + refreshMode 无效。 + collection 为空或对象未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象集合。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象的 集合。 + 等待任务完成期间要观察的 。 + collection 为 null。 + refreshMode 无效。 + collection 为空或对象未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象。 + entity 为 null。 + refreshMode 无效。 + 实体未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象。 + 等待任务完成期间要观察的 。 + entity 为 null。 + refreshMode 无效。 + 实体未附加到上下文。 + + + 将所有更新保存到数据库并重置对象上下文中的更改跟踪。 + 在调用 时处于 状态的对象数。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新保存到数据库并可选择重置对象上下文中的更改跟踪。 + 在调用 时处于 状态的对象数。 + 客户端事务支持需要此参数。如果为 true,则所有对象上的更改跟踪都会在 完成后重置。如果为 false,则必须在 之后调用 方法。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新保存到数据库并可选择重置对象上下文中的更改跟踪。 + 在调用 时处于 状态的对象数。 + 一个确定操作的行为的 值。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并可选择重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 一个确定操作的行为的 值。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并可选择重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 一个确定操作的行为的 值。 + 等待任务完成期间要观察的 。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 等待任务完成期间要观察的 。 + 保存更改时发生了开放式并发冲突。 + + + 在将更改保存到数据源时发生。 + + + 返回自身。ObjectContext 实现 以便为 和 ObjectContext(这两者将返回基础 ObjectContext)提供通用接口。 + + + 获取正由此上下文使用的事务处理程序。如果尚未启动任何事务,则可能为 null。 + 事务处理程序。 + + + 将包含实体数据行的 转换为请求的实体类型的对象。 + 类型为 TResult 的对象的枚举。 + 包含要转换为实体对象的实体数据的 。 + 实体类型。 + 当 reader 为 null 时。 + + + 在特定的实体集中,使用指定的合并选项将包含实体数据行的 转换为请求的实体类型的对象。 + 类型为 TResult 的对象的枚举。 + 包含要转换为实体对象的实体数据的 。 + TResult 类型的实体集。 + 在将转换后的对象添加到对象上下文时要使用的 。默认值为 。 + 实体类型。 + 当 reader 为 null 时。 + 当提供的 mergeOption 不是有效的 值时。 + 当提供的 entitySetName 不是 TResult 类型的有效实体集时。 + + + 返回具有指定实体键的对象。 + 如果成功检索到对象,则为 true。如果 key 是临时的、connection 为 null 或值为 null,则为 false。 + 要查找的对象的键。 + 在此方法返回时包含对象。 + 元数据对 key 不兼容。 + key 为 null。 + + + 定义影响 ObjectContext 的行为的选项。 + + + 获取或设置某值,该值确定是否应在事务中始终执行 SQL 函数和命令。 + 默认事务行为。 + + + 获取或设置一个布尔值,该值确定在访问导航属性时是否自动加载相关对象。 + 如果启用了延迟加载,则为 true;否则为 false。 + + + 获取或设置一个布尔值,该值确定是否为持久性未知的自定义数据类创建代理实例。 + 如果创建了代理,则为 true;否则为 false。默认值为 true。 + + + 获取或设置一个布尔值,该值确定是否要使用一致的 NullReference 行为。 + 如果应使用一致的 NullReference 行为,则为 true;否则为 false。 + + + 获取或设置一个布尔值,该值确定是否要使用 C# NullComparison 行为。 + 如果应使用 C# NullComparison 行为,则为 true;否则为 false。 + + + 获取或设置一个布尔值,该值确定是否要使用旧式 PreserveChanges 行为。 + 如果应使用旧式 PreserveChanges 行为,则为 true;否则为 false。 + + + ObjectMaterialized 事件的 EventArgs。 + + + 获取已创建的实体对象。 + 已创建的实体对象。 + + + ObjectMaterialized 事件的委托。 + + + 此类表示对象层的查询参数,它包含 Name、Type 和 Value。 + + + 使用指定的名称和值初始化 类的新实例。 + 参数名称。此名称不应包含“@”参数标记(它用在实体 SQL 语句中),只能为实际名称。表达式的第一个字符必须为字母。表达式中的所有后续字符都必须为字母、数字或下划线 (_) 字符。 + 参数的初始值(及固有类型)。 + 如果任一参数的值为 null。 + 如果名称参数的值无效。参数名称必须以字母开头,并且只能包含字母、数字和下划线。 + + + 利用指定的名称和类型初始化 类的新实例。 + 参数名称。此名称不应包含“@”参数标记(它用在实体 SQL 语句中),只能为实际名称。表达式的第一个字符必须为字母。表达式中的所有后续字符都必须为字母、数字或下划线 (_) 字符。 + 参数的公共语言运行库 (CLR) 类型。 + 如果任一参数的值为 null。 + 如果名称参数的值无效。参数名称必须以字母开头,并且只能包含字母、数字和下划线。 + + + 获取参数名称,该名称只能通过构造函数进行设置。 + 参数名称,它只能通过构造函数进行设置。 + + + 获取参数类型。 + 参数的 + + + 获取或设置参数值。 + 参数值。 + + + 表示对象层上的查询参数集合。 + + + 将指定的 添加到集合。 + 要添加到集合的参数。 + parameter 参数为 null。 + parameter 参数已存在于集合中。此行为与允许重复项的大多数集合的行为不同。-或-与实参同名的另一个形参已存在于集合中。注意,查找是区分大小写的。此行为与大多数集合的行为不同,更类似于 的行为。 + parameter 的类型无效。 + + + 删除集合中的所有 实例。 + + + 按引用检查集合中是否存在指定的 + 如果在集合中找到参数对象,则返回 true;否则返回 false。 + 要在集合中查找的 。 + parameter 参数为 null。 + + + 确定集合中是否存在具有指定名称的 + 如果在集合中找到具有指定名称的参数,则返回 true;否则为 false。 + 要在集合中查找的参数的名称。此名称不应包含“@”参数标记(它用在实体 SQL 语句中),只能为实际名称。 + name 参数为 null。 + + + 允许将集合中的参数复制到提供的数组中(从指定索引处的对象开始)。 + 要将参数复制到其中的数组。 + 数组中开始复制参数的位置的索引。 + + + 获取集合中当前存在的参数的数量。 + 集合中当前存在的 对象的数量。 + + + 返回枚举器实例,这些实例允许循环访问和遍历集合。 + 可用于循环访问集合的 对象。 + + + 获取供调用方按名称检索参数的索引器。 + 供调用方按名称检索参数的索引器。 + 项名称。 + + + 按引用从集合中移除 的实例(如果集合中存在该实例)。 + 如果从集合中找到并删除参数对象,则返回 true;否则为 false。 + 要从集合中移除的对象。 + parameter 参数为 null。 + + + 获取一个值,该值指示 是否为只读。 + 如果 是只读的,则为 true;否则为 false。 + + + 返回集合上的非类型化枚举器。 + 一个 实例。 + + + 此类在对象层实现非类型化的查询。 + + + 返回查询的命令文本。 + 一个字符串值。 + + + 获取与此对象查询相关联的对象上下文。 + 与此 实例关联的 + + + 获取或设置一个值,该值指示是否应缓存查询计划。 + 一个指示是否应缓存查询计划的值。 + + + 使用指定合并选项执行非类型化对象查询。 + 一个 ,它包含查询返回的实体对象的集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定合并选项异步执行非类型化对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定合并选项异步执行非类型化对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + 等待任务完成期间要观察的 。 + + + 返回有关查询的结果类型的信息。 + 一个 值,它包含有关查询的结果类型的信息。 + + + 获取或设置从查询返回的对象添加到对象上下文的方式。 + 查询 + + + 获取此对象查询的参数集合。 + 的参数集合。 + + + 查询是流式处理还是缓存 + + + 返回一个循环访问集合的枚举器。 + 可用于循环访问集合的 + + + 获取一个值,该值指示此查询是否包含查询对象的集合。 + 如果此查询包含查询对象的集合,则为 true;否则为 false。 + + + 返回 形式的集合用于数据绑定。 + 实体对象的 + + + 返回 ,被枚举时它将针对数据库执行给定的 SQL 查询。 + 查询结果。 + + + 获取此查询实例的结果元素类型。 + + + 获取描述此查询的表达式。对于使用 LINQ 生成器模式生成的查询,会返回完全 LINQ 表达式树;否则,返回包装此查询的常量表达式。请注意,默认表达式不进行缓存。这允许用户区分 LINQ 和 Entity-SQL 查询。 + + + 获取与此查询实例关联的 + + + 返回对数据源执行的命令。 + 一个 string,表示查询对数据源执行的命令。 + + + ObjectQuery 在对象层实现强类型化的查询。使用 Entity-SQL 字符串指定查询并可以通过调用由 ObjectQuery 声明的基于 Entity-SQL 的查询生成器方法来创建它们。 + 此 ObjectQuery 的结果类型 + + + 使用指定的实体 SQL 命令作为初始查询来创建新的 实例。 + 实体 SQL 查询。 + 对其执行查询的 。 + + + 使用指定的实体 SQL 命令(作为初始查询)和指定的合并选项创建新的 实例。 + 实体 SQL 查询。 + 对其执行查询的 。 + 指定此查询所检索的实体应如何与以前对同一 的查询所返回的实体合并。 + + + 将查询限制为唯一结果。 + 一个新的 实例,等效于应用了 SELECT DISTINCT 的原始实例。 + + + 此查询生成器方法创建其结果是此查询的所有结果(除了那些也是指定另一个查询结果的一部分之外)的新查询。 + 新的 ObjectQuery 实例。 + 表示要排除的结果的查询。 + 如果查询参数是 null。 + + + 使用指定的合并选项执行对象查询。 + 一个 ,它包含查询返回的实体对象的集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定的合并选项异步执行对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定的合并选项异步执行对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + 等待任务完成期间要观察的 。 + + + 按指定的条件对查询结果进行分组。 + 一个 类型的新 实例,等效于应用了 GROUP BY 的原始实例。 + 作为结果分组依据的键列。 + 用于定义投影的所选属性的列表。 + 此方法中使用的零个或多个参数。 + query 参数为 null 或空字符串,或 projection 参数为 null 或空字符串。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在查询结果中返回的相关对象的列表(以点分隔)。 + path 为 null。 + path 为 empty。 + + + 此查询生成器方法创建其结果同时包含在此查询和指定的另一查询的结果中的新查询。 + 新的 ObjectQuery 实例。 + 表示结果要与其相交的查询。 + 如果查询参数是 null。 + + + 获取或设置此对象查询的名称。 + 一个字符串值,它是此 的名称。 + + + 将查询限制为仅包括特定类型的结果。 + 一个新的 实例,等效于应用了 OFTYPE 的原始实例。 + 使用应用筛选器执行查询时, 的类型返回。 + 指定的类型无效。 + + + 按指定条件对查询结果进行排序。 + 一个新的 实例,等效于应用了 ORDER BY 的原始实例。 + 作为结果排序依据的键列。 + 此方法中使用的零个或多个参数。 + keys 或 parameters 参数为 null。 + key 为空字符串。 + + + 将查询结果限制为仅包含在指定投影中定义的属性。 + 一个 类型的新 实例,等效于应用了 SELECT 的原始实例。 + 用于定义投影的所选属性的列表。 + 此方法中使用的零个或多个参数。 + projection 为 null 或 parameters 为 null。 + projection 为空字符串。 + + + 将查询结果限制为仅包含投影中指定的属性。 + 一个类型与特定投影兼容的新 。返回的 等效于应用了 SELECT VALUE 的原始实例。 + 投影列表。 + 在分析时应在作用域内的一组可选查询参数。 + 方法返回的 的类型。 + projection 为 null 或 parameters 为 null。 + projection 为空字符串。 + + + 按指定条件对查询结果进行排序并跳过指定数目的结果。 + 一个新 实例,等效于同时应用了 ORDER BY 和 SKIP 的原始实例。 + 作为结果排序依据的键列。 + 要跳过的结果数。它可以是常量或参数引用。 + 在分析时应在作用域内的一组可选查询参数。 + 任何参数为 null。 + keys 为空字符串或 count 为空字符串。 + + + 返回 ,被枚举时它将针对数据库执行给定的 SQL 查询。 + 查询结果。 + + + 返回 ,被枚举时它将针对数据库执行给定的 SQL 查询。 + 查询结果。 + + + 将查询结果限制为指定的项数。 + 一个新的 实例,等效于应用了 TOP 的原始实例。 + 字符串形式的结果项数。 + 在分析时应在作用域内的一组可选查询参数。 + count 为 null。 + count 为空字符串。 + + + 此查询生成器方法创建其结果是此查询的所有结果加上另一个查询的所有结果但是不允许重复(即结果是唯一的)的新查询。 + 新的 ObjectQuery 实例。 + 表示要添加的结果的查询。 + 如果查询参数是 null。 + + + 此查询生成器方法创建其结果是此查询的所有结果加上另一个查询的所有结果且包括所有重复项(即结果不一定是唯一的)的新查询。 + 新的 ObjectQuery 实例。 + 表示要添加的结果的查询。 + 如果查询参数是 null。 + + + 将查询限制为包含与指定筛选条件匹配的结果。 + 一个新的 实例,等效于应用了 WHERE 的原始实例。 + 筛选谓词。 + 此方法中使用的零个或多个参数。 + predicate 为 null 或 parameters 为 null。 + predicate 为空字符串。 + + + 此类实现 IEnumerable 和 IDisposable。从 ObjectQuery.Execute 方法返回此类的实例。 + + + 仅当创建将重写具有模拟或伪造行为的成员的测试替身时,才使用此构造函数。将此构造函数用于其他目的可能导致意外的行为,包括但不限于引发 + + + 执行与释放 (free)、释放 (release) 或重置资源关联的任务。 + + + 释放对象结果使用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 在派生类中重写时,获取泛型 的类型。 + 泛型 的类型。 + + + 获取存储过程的下一个结果集。 + 枚举下一个结果集的值的 ObjectResult。如果没有其他值,或 ObjectResult 不是存储过程调用的结果,则为 Null。 + 元素的类型。 + + + 返回一个循环访问查询结果的枚举器。 + 一个循环访问查询结果的枚举器。 + + + IListSource.ContainsListCollection 实现。始终返回 false。 + + + 以数据绑定所用的格式返回结果。 + 实体对象的 + + + 返回一个循环访问查询结果的异步枚举器。 + 一个循环访问查询结果的异步枚举器。 + + + 此类表示 方法的结果。 + 结果的类型。 + + + 仅当创建将重写具有模拟或伪造行为的成员的测试替身时,才使用此构造函数。将此构造函数用于其他目的可能导致意外的行为,包括但不限于引发 + + + 释放由 占用的非托管资源,还可以释放托管资源。 + 如果为 true,则释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 获取 的类型。 + 一个 ,它是 的类型。 + + + 返回一个循环访问查询结果的枚举器。 + 一个循环访问查询结果的枚举器。 + + + 异步获取循环访问 的枚举器。 + 循环访问 的枚举器。 + + + 表示用于执行创建、读取、更新和删除操作的类型化实体集。 + 实体的类型。 + + + 将对象添加到当前实体集中的对象上下文。 + 要添加的对象。 + + + 将标量值从提供的对象复制到 中具有相同键的对象中。 + 已更新的对象。 + 其属性更新将应用于原始对象的已分离对象。currentEntity 的实体键必须与 中某个项的 属性相匹配。 + + + 属性设置为与所提供对象的属性值相匹配。 + 已更新的对象。 + 其属性更新将应用于原始对象的已分离对象。originalEntity 的实体键必须与 中某个项的 属性相匹配。 + + + 将对象或对象图附加到当前实体集中的对象上下文。 + 要附加的对象。 + + + 创建指定类型的实例。 + 所请求类型 T 的实例,或与类型 T 对应的代理类型的实例。 + 要返回的对象的类型。 + + + 创建一个新的实体类型对象。 + 新的实体类型对象,或与实体类型对应的代理类型的实例。 + + + 标记对象以备删除。 + 表示要删除的实体的对象。该对象可以为任何状态( 除外)。 + + + 从对象上下文移除对象。 + 要分离的对象。仅移除实体;如果存在任何由相同 跟踪的相关对象,则不会自动分离这些对象。 + + + 获取用此 实例表示的实体集的元数据。 + 一个 对象。 + + + 表示实体、实体存根或关系 + + + 接受当前值作为原始值。 + + + 设置项的当前值,使其与所提供对象的属性值相匹配。 + 具有要应用于对象的更新值的已分离对象。currentEntity 还可以是对象的实体键。 + + + 设置项的原始值,使其与所提供对象的属性值相匹配。 + 具有要应用于对象的原始值的已分离对象。originalEntity 还可以是对象的实体键。 + + + 将该项的状态更改为指定的 值。 + 要为该项的 属性设置的 值。 + + + 获取与此 关联的对象或关系的当前属性值。 + 一个 ,它包含与此 关联的对象或关系的当前值。 + + + 将实体标记为已删除。 + + + 获取实体对象。 + 实体对象。 + + + 获取实体键。 + 实体键。 + + + 获取该对象或关系的 + 用于对象或关系的 + + + 返回自上次调用 以来已更改的对象属性的名称。 + 一个 集合,包含字符串形式的名称。 + + + 获取与此 关联的对象的原始值的可更新版本。 + 对象数据的可更新原始值。 + + + 使用 DetectChanges 确定具有给定名称的属性的当前值与原始值是否不同。请注意这可能不同于正在标记为“已修改”的属性,因为尚未更改的属性仍可能标记为“已修改”。 + 如果属性已更改,则为 true;否则为 false。 + 属性的名称。 + + + 获取一个值,该值指示 是否表示一个关系。 + 如果 表示一个关系,则为 true;否则为 false。 + + + 获取 + + + + + 获取与此的对象或关系关联的原始值的只读版本。 + 关系集项或实体的原始值的只读版本。 + + + 拒绝自上次加载、附加或保存属性以来对具有给定名称的属性所做的任何更改,或接受更改。存储属性的原始值,且属性将不再标记为“已修改”。 + 要更改的属性的名称。 + + + 获取项所表示的对象的 实例。 + + 对象。 + + + 将对象或关系的状态设置为 modify。 + 如果状态不为“已修改”或“未更改” + + + 将指定属性标记为已修改。 + 属性的名称。 + 如果状态不为“已修改”或“未更改” + + + 获取 的状态。 + + 的状态。 + + + 用于报告复杂属性已更改。现在将在 EntityMemberChanging 期间缓存的属性值添加到 OriginalValues + 已更改的顶级实体属性的名称 + 包含已更改属性的复杂对象 + complexObject 上更改的属性的名称 + + + 用于报告将要更改复杂属性。在调用此方法时,缓存指定属性的当前值。 + 要更改的顶级实体属性的名称 + 包含要更改的属性的复杂对象 + complexObject 上要更改的属性的名称 + + + 用于报告标量实体属性已更改。现在将在 EntityMemberChanging 期间缓存的属性值添加到 OriginalValues + 要更改的实体属性的名称 + + + 用于报告将要更改标量实体属性。在调用此方法时,缓存指定属性的当前值。 + 要更改的实体属性的名称 + + + 从 ObjectStateEntry 返回 EntityState + + + 维护实体类型实例和关系实例的对象状态和标识管理。 + + + 初始化 类的新实例。 + 提供映射和元数据信息的 。 + + + 将特定对象的 状态更改为指定的 entityState。 + 所提供实体的 + 必须更改状态的对象。 + 对象的新状态。 + 当 entity 为 null 时。 + 当对象未分离且在状态管理器没有任何项时,或当您尝试将状态从任何其他 更改为 时,或状态为无效的 值时。 + + + 更改两个实体对象之间的指定关系的状态,其中的关系状态根据两个相关对象和导航属性的名称来指定。 + 已更改的关系的 + 位于关系一端的对象实例或源实体的 。 + 位于关系另一端的对象实例或目标实体的 。 + 源上可返回指定目标的导航属性的名称。 + 请求的所指定关系的 。 + 当 source 或 target 为 null 时。 + 当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当状态为无效的 值时。 + + + 更改两个实体对象之间的指定关系的状态,其中的关系状态根据两个相关对象和关系属性来指定。 + 已更改的关系的 + 位于关系一端的对象实例或源实体的 。 + 位于关系另一端的对象实例或目标实体的 。 + 关系的名称。 + 关系的目标端的角色名称。 + 请求的所指定关系的 。 + 当 source 或 target 为 null 时。 + 当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当状态为无效的 值时。 + + + 更改两个实体对象之间的指定关系的状态,根据两个相关对象和用于定义导航属性的 LINQ 表达式来指定关系。 + 已更改的关系的 + 位于关系一端的对象实例或源实体的 。 + 位于关系另一端的对象实例或目标实体的 。 + 一个 LINQ 表示式,用于选择返回指定 target 的 source 的导航属性。 + 请求的所指定关系的 。 + 源对象的实体类型。 + 当 source、target 或 selector 为 null 时。 + selector 格式不正确或无法返回导航属性。 + 当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当状态为无效的 值时。 + + + 返回具有给定状态的对象或关系的 对象的集合。 + 具有给定 对象的集合。 + 用于筛选返回的 对象的 。 + 当状态为 时。 + + + 返回具有指定键的对象或关系项的 + 给定 的对应 + + 。 + 当 key 为 null 时。 + 在状态管理器中找不到指定的 key 时。 + + 中不存在具有指定 的实体。 + + + 返回指定对象的 + 给定 的对应 + 检索到的 所属的 。 + + 中不存在具有指定 的实体。 + + + 返回指定对象所使用的 + 所指定对象的 + 要为其返回 的对象。 + 实体不实现 IEntityWithRelationships 且不由此 ObjectStateManager 跟踪 + + + 获取与此状态管理器关联的 + 与此 关联的 + + + 在从状态管理器中添加或移除实体时发生。 + + + 尝试检索具有指定 的对象或关系的对应 + 一个布尔值,如果给定的 有对应的 ,则为 true;否则为 false。 + 给定的 。 + 此方法返回时,包含给定 。此参数传递时未经初始化。 + 为 key 提供了一个 null(在 Visual Basic 中为 Nothing)值。 + + + 尝试检索指定的 的对应 + 一个布尔值,如果给定的对象有对应的 ,则为 true;否则为 false。 + 检索到的 所属的 。 + 此方法返回时,包含给定 。此参数传递时未经初始化。 + + + 返回指定对象所使用的 + 如果为提供的实体返回了 实例,则为 true;否则为 false。 + 要为其返回 的对象。 + 此方法返回时将包含实体的 。 + + + 从数据库检索实体时,实体各属性的原始值。 + + + 一个 DataContractResolver,它知道如何将为持久未知的类创建的代理类型解析为基类型。它与 DataContractSerializer 一起使用。 + + + 初始化 类的新实例。 + + + 在反序列化过程中,将任何 xsi:type 信息映射到持久性未知对象的实际类型。 + 返回 xsi:type 映射到的类型。如果找不到与 xsi:type 匹配的已知类型,则返回 null。 + 要映射的 xsi:type 信息。 + xsi:type 的命名空间。 + 已声明的类型。 + + 的一个实例。 + + + 在序列化过程中,将实际类型映射到 xsi:type 信息。 + 如果类型已解析,则为 true;否则为 false。 + 持久性未知对象的实际类型。 + 已声明的类型。 + + 的一个实例。 + 此方法返回时,包含 xsi:type 声明的列表。 + 此方法返回时,包含使用的命名空间的列表。 + + + 定义在从数据库刷新内存中数据时处理已修改属性的不同方法。 + + + 对于未修改的客户端对象,行为与 StoreWins 相同。对于已修改的客户端对象,使用存储值刷新原始值,保留客户端对象上的所有值。下次更新时,所有客户端更改单元将被视为“已修改”,需要更新。 + + + 丢弃客户端上的所有更改并使用存储值刷新值。更新客户端原始值以匹配存储值。 + + + 用于修改 ObjectContext.SaveChanges() 行为的标志 + + + 在保存更改后,调用 AcceptAllChangesAfterSave 方法,该方法会在 ObjectStateManager 中重置更改跟踪。 + + + 在保存更改之前,调用 DetectChanges 方法,使用 ObjectStateManager 中的数据同步附加到对象上下文的对象的属性值。 + + + 保存更改,不调用 DetectChanges 或 AcceptAllChangesAfterSave 方法。 + + + 这是表示在 ADO.NET 中成为某一实体所需的最小接口的接口。 + + + 初始化 类的新实例。 + + + 通知更改跟踪器,某个复杂对象的属性已更改。 + 已更改的属性的名称。 + property 为 null。 + + + 通知更改跟踪器,对复杂对象的属性更改挂起。 + 更改的属性的名称。 + property 为 null。 + + + 针对复杂属性的特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 初始化 类的新实例。 + + + 复杂类型的特性 + + + 初始化 类的新实例。 + + + 标识 Edm 基类的特性 + + + 初始化 类的新实例。 + + + 指示枚举类型的特性。 + + + 初始化 类的新实例。 + + + 指示给定的方法是 EDM 函数的代理。 + + + 创建新的 DbFunctionAttribute 实例。 + 特性化方法所表示的 EDM 函数的命名空间名称。 + 特性化方法所表示的 EDM 函数的函数名称。 + + + 映射到存储元素的属性的基特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 定义两个实体类型之间的基于概念性模型中关联的关系。 + + + 创建 类的实例。 + 此实体所参与的关联的命名空间名称。 + 此实体所参与的关系的名称。 + 关联一端的类型的角色名称。 + + 的值,指示在关联一端的重数,例如一重或多重。 + 关联一端的实体类型。 + 关联另一端的类型的角色名称。 + + 的值,指示在关联另一端的重数,例如一重或多重。 + 关联另一端的实体类型。 + + + 初始化 类的新实例。 + 此实体所参与的关联的命名空间名称。 + 此实体所参与的关系的名称。 + 关联一端的类型的角色名称。 + + 的值,指示在关联一端的重数,例如一重或多重。 + 关联一端的实体类型。 + 关联另一端的类型的角色名称。 + + 的值,指示在关联另一端的重数,例如一重或多重。 + 关联另一端的实体类型。 + 一个指示关系是否基于外键值的值。 + + + 获取一个布尔值,该值指示关系是否基于外键值。 + 如果关系基于外键值,则为 true;否则为 false。 + + + 关系的名称。 + 一个 ,表示此 定义的关系的名称。 + + + 关系的命名空间。 + 表示关系命名空间的 + + + 关系一端的重数。 + 指示重数的 值。 + + + 关系一端的角色名称。 + 表示角色名称的 + + + 关系一端的实体类型。 + 表示关联此端对象类型的 + + + 关系另一端的重数。 + 指示重数的 值。 + + + 关系另一端的角色名称。 + 表示角色名称的 + + + 关系另一端的实体类型。 + 表示关联另一端对象类型的 + + + 标识为 RelationshipSet 定义的端的特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 初始化 类的新实例。 + 关系属性的命名空间名称。 + 关系的名称。关系名称不由命名空间限定。 + 关系另一端的角色名称。 + + + 获取非限定的关系名称。 + 关系名。 + + + 导航属性的命名空间名称。 + 表示命名空间名称的 + + + 获取关系另一端的角色名称。 + 目标角色名称由在概念性模型中定义此关系的关联中的另一个 End 元素的 Role 属性指定。有关更多信息,请参见“关联 (EDM)”。 + + + IEntity 中标量属性的特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 初始化 类的新实例。 + + + 获取或设置一个值,该值指示属性是否为实体键的一部分。 + 一个指示属性是否为实体键的一部分的值。 + + + 获取或设置一个值,该值指示属性是否可以具有 null 值。 + 一个值,该值指示属性是否可以具有 null 值。 + + + 静态类型的特性 + + + 初始化 类的新实例。 + + + 使用对程序集引用的每个模型都唯一的值初始化 类的新实例。 + 一个字符串,表示程序集中模型的唯一 GUID 值。 + + + 程式化类型的基特性 + + + 概念性架构中类型的名称,该类型映射到此属性所应用于的类。 + 表示名称的 + + + 概念性架构中映射到此类型的实体对象类型或复杂类型的命名空间名称。 + 表示命名空间名称的 + + + 对某一特定 EDM 构造进行建模的实体(可以是某一特定类型的所有实体或者是参与某一特定关系的实体)的集合。 + 此集合中实体的类型。 + + + 初始化 类的新实例。 + + + 将对象添加到集合。 + 添加到集合的对象。entity 必须实现 。 + entity 为 null。 + + + 定义对象上下文中对象和相关对象集合之间的关系。 + 对象上下文中与源对象相关的对象集合。 + entities 集合为 null。 + 源对象或 entities 集合中的对象为 null 或者不处于 状态。-或-关系不能基于 EDM 元数据定义。这会在概念性架构中的关联不支持两种类型间的关系时发生。 + + + 定义对象上下文中两个附加对象之间的关系。 + 附加的对象。 + 当 entity 为 null 时。 + 当 entity 无法与源对象关联时。这会在概念性架构中的关联不支持两种类型间的关系时发生。-或-当对象为 null 或不处于 状态时。 + + + 从集合中移除所有实体。 + + + 确定特定对象是否存在于集合中。 + 如果在 中找到该对象,则为 true;否则为 false。 + 要在 中定位的对象。 + + + 将集合中的所有内容复制到数组,从目标数组的指定索引处开始。 + 要复制到的数组。 + 数组中从零开始的索引,在此处开始复制。 + + + 获取集合中包含的对象数。 + + 中包含的元素数。 + + + 返回一个对象查询,执行该查询时返回的对象集合与当前集合包含的对象相同。 + 表示实体集合的 + 当对象处于 状态时,或当对象处于 状态且 不为 时。 + + + 返回一个枚举器,用于循环访问集合中的对象。 + 一个 ,循环访问 缓存的值集。 + + + 获取一个值,指示 是否是只读的。 + 始终返回 false。 + + + 使用指定的合并选项将相关对象加载到集合中。 + 指定此集合中的对象应如何与从以前针对相同 的查询中返回的对象合并。 + + + 使用默认合并选项异步将一个或多个相关实体加载到相关端中。 + 表示异步操作的任务。 + 合并选项。 + 等待任务完成期间要观察的 CancellationToken。 + + + 在内部使用,用于反序列化实体对象。 + 流上下文。 + + + 在内部使用,用于序列化实体对象。 + 流上下文。 + + + 从集合移除对象,并标记要删除的关系。 + 如果成功移除该项,则为 true;否则为 false。 + 要从集合中移除的对象。 + 实体对象为 null。 + 实体对象未附加到相同的对象上下文,或者,实体对象没有有效的关系管理器。 + + + 返回一个枚举器,用于循环访问 缓存的值集。 + 一个 ,循环访问 缓存的值集。 + + + IListSource.ContainsListCollection 实现。始终返回 false。这意味着我们返回的 IList 是包含我们的实际数据的 IList,而不是集合的列表。 + + + 返回 形式的集合用于数据绑定。 + 实体对象的 + + + 这是所有描述的 EntityObject 类的基类。 + + + 初始化 类的新实例。 + + + 获取或设置此对象的键。 + 此对象的 + + + 获取对象的实体状态。 + 此对象的 + + + 通知更改跟踪器,属性已更改。 + 已更改的属性的名称。 + property 为 null。 + + + 通知更改跟踪器,属性更改挂起。 + 更改的属性的名称。 + property 为 null。 + + + 由 ObjectStateManager 用来将此 EntityObject 附加到缓存或者分离这两者。 + 对包含此实体的 ObjectStateEntry 的引用 + + + 返回惰式创建的关系导航属性对象、集合和 ref 的容器。 + + + 对多重性为 1 的关系端进行建模。 + + + 返回相关对象的键。 + 一个 ,表示相关对象的键。 + + + 对多重性为 1 的关系端进行建模。 + 要引用的实体类型。 + + + 创建 的新实例。 + + + 在对象上下文中创建两个对象之间的多对一或一对一关系。 + 附加的对象。 + 当 entity 为 null 时。 + 当 entity 无法与当前相关端关联时。这会在概念性架构中的关联不支持两种类型间的关系时发生。 + + + 创建一个返回相关对象的等效对象查询。 + 一个 ,其返回相关对象。 + 当对象处于 状态时,或当对象处于 状态且 不为 时。 + + + 使用指定的合并选项为此 加载相关对象。 + 指定当 中已存在该对象时,应如何返回它。 + + 的源为 null;或一个查询返回多个相关端;或一个查询返回零个相关端,但应返回一个相关端。 + + + 使用默认合并选项异步将一个或多个相关实体加载到相关端中。 + 已加载到相关端的相关实体。 + 合并选项。 + 等待任务完成期间要观察的 CancellationToken。 + + + 此方法在内部使用,用于序列化相关实体对象。 + 序列化的流。 + + + 此方法在内部使用,用于序列化相关实体对象。 + 序列化的流。 + + + 获取或设置此 返回的相关对象。 + 返回的对象。 + + + 此接口由更改跟踪器实现并且由数据类用来报告更改 + + + 通知更改跟踪器,某个复杂类型的属性已更改。 + 已更改的实体类型的复杂属性的名称。 + 包含已更改属性的复杂类型。 + 复杂类型上更改的属性的名称。 + + + 通知更改跟踪器,复杂属性更改挂起。 + 要更改的顶级实体属性的名称。 + 包含要更改的属性的复杂类型。 + 复杂类型上要更改的属性的名称。 + + + 通知更改跟踪器,某个实体类型的属性已更改。 + 已更改的属性的名称。 + + + 通知更改跟踪器即将更改某个实体类型的属性。 + 要更改的属性的名称。 + + + 获取所跟踪对象的当前状态。 + 一个 ,它是所跟踪对象的状态。有关更多信息,请参见“标识解析、状态管理和更改跟踪”和“在 POCO 实体中跟踪更改”。 + + + 数据类必须实现以便由更改跟踪器进行管理的最小接口。 + + + 获取或设置用于报告更改的 + 用于报告更改的 。 + + + 定义包含键的实体的接口。 + + + 为实现此接口的实体类型的实例获取或设置 + 实现此接口的实体类型实例的 + + + 在公开关系时数据类必须实现的接口 + + + 返回关系管理器,该管理器管理实体类型的实例的关系。 + 此实体的 + + + 表示关系的一端。 + + + 将对象添加到相关端。 + 添加到集合的对象。entity 必须实现 。 + + + 将对象添加到相关端。 + 添加到集合的对象。 + + + 定义两个附加对象之间的关系。 + 附加的对象。entity 必须实现 。 + + + 定义两个附加对象之间的关系。 + 附加的对象。 + + + 返回一个 ,它表示属于相关端的对象。 + 一个 ,它表示属于相关端的对象。 + + + 返回一个 ,它循环访问相关对象的集合。 + 一个 ,它循环访问相关对象的集合。 + + + 获取或设置一个值,该值指示是否已从数据库加载实体(对于 )或集合中的所有实体(对于 )。 + 如果加载所有相关实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 使用默认合并选项将一个或多个相关对象加载到此相关端中。 + + + 使用指定合并选项将一个或多个相关对象加载到相关端中。 + 将对象合并到现有 时使用的 。 + + + 使用指定合并选项将一个或多个相关对象异步加载到相关端中。 + 表示异步操作的任务。 + 将对象合并到现有 时使用的 。 + 等待任务完成期间要观察的 。 + + + 使用默认合并选项将一个或多个相关对象异步加载到此相关端中。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取此相关端所参与的关系的名称。 + 所参与的关系的名称。关系名称不由命名空间限定。 + + + 返回对相关端的元数据的引用。 + 包含关系一端的元数据的 对象。 + + + 从相关端的对象的集合中移除一个对象。 + 如果 entity 已成功删除,则为 true;如果 entity 不是 的一部分,则为 false。 + 要从集合中移除的对象。entity 必须实现 。 + + + 从相关端的对象的集合中移除一个对象。 + 如果 entity 已成功删除,则为 true;如果 entity 不是 的一部分,则为 false。 + 要从集合中移除的对象。 + + + 获取关系的源端的角色名称。 + 关系的源端的角色名称。 + + + 获取关系的目标端的角色名称。 + 关系的目标端的角色名称。 + + + EntityCollection 和 EntityReference 的基类 + + + 对相关端进行更改时发生。 + + + 返回一个 ,它循环访问相关对象的集合。 + 一个 ,它循环访问相关对象的集合。 + + + 获取一个值,该值指示是否已加载所有相关对象。 + 如果相关端包含数据库中的所有相关对象,则为 true;否则为 false。 + + + 使用默认合并选项将一个或多个相关对象加载到相关端中。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 使用指定合并选项从相关端加载一个或多个对象。 + 将对象合并到现有 时使用的 。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 使用指定合并选项从相关端异步加载一个或多个对象。 + 表示异步操作的任务。 + 将对象合并到现有 时使用的 。 + 等待任务完成期间要观察的 。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 使用默认合并选项将一个或多个相关对象异步加载到相关端中。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 在内部使用,用于反序列化实体对象及 实例。 + 序列化的流。 + + + 获取此相关端所参与的关系的名称。 + 所参与的关系的名称。关系名称不由命名空间限定。 + + + 获取对相关端的元数据的引用。 + 包含关系一端的元数据的 对象。 + + + 获取关系的源端的角色名称。 + 表示角色名称的 + + + 将实体添加到相关端。此方法与 Add(object) 的工作方式完全相同。保留此方法是为了与以前版本的 IRelatedEnd 向后兼容。 + 要添加到相关端的实体实例 + + + 将实体添加到相关端。如果所有者附加到某一缓存,则所有连接端都添加到该对象缓存,并且其对应关系也添加到 ObjectStateManager。关系的 RelatedEnd 也是固定的。 + 要添加到相关端的实体实例 + + + 将实体附加到相关端。此方法与 Attach(object) 的工作方式完全相同。保留此方法是为了与以前版本的 IRelatedEnd 向后兼容。 + 要附加到相关端的实体 + 为 null 时引发。 + 在无法通过当前关系端与实体相关时引发。 + + + 将实体附加到相关端。如果相关端已经填充或部分填充,则此操作将合并现有实体和给定实体。不假定给定实体为相关实体的完整集。所有者和所有传入的实体必须处于 Unchanged 或 Modified 状态。仅当状态管理器已在跟踪关系实例时,才允许已删除的元素。 + 要附加到相关端的实体 + 为 null 时引发。 + 在无法通过当前关系端与实体相关时引发。 + + + 返回一个 ,它表示属于相关端的对象。 + 一个 ,它表示属于相关端的对象。 + + + 从相关端删除实体。此方法与 Remove(object) 的工作方式完全相同。保留此方法是为了与以前版本的 IRelatedEnd 向后兼容。 + 如果实体已成功删除,则返回 true;如果实体不是 RelatedEnd 的一部分,则返回 false。 + 要从相关端中删除的实体实例 + + + 从相关端删除实体。如果所有者附加到缓存,则将关系标记为待删除;如果关系是复合关系,也将实体标记为待删除。 + 如果实体已成功删除,则返回 true;如果实体不是 RelatedEnd 的一部分,则返回 false。 + 要从相关端中删除的实体实例 + + + 获取关系的目标端的角色名称。 + 表示角色名称的 + + + 标识关系的种类 + + + 该关系为关联 + + + 惰式创建的关系导航属性对象(集合和 ref)的容器。 + + + 创建一个新的 对象。 + 请求的 + 对调用此方法的实体的引用。 + + + 返回关系管理器管理的所有相关端的枚举。 + 实现 的对象的 。如果尚未填充关系,则返回空枚举。 + + + 获取具有指定关系名称和目标角色名称的相关对象的 + 相关对象的 + 要浏览的关系的名称。关系名称不由命名空间限定。 + 要浏览的目标角色的名称。指示在关系中浏览的方向。 + 返回的 的类型。 + 指定角色返回 而不是 + + + 为关系中的指定目标角色返回正确类型的 + 已检索的表示 + 在其中定义 targetRoleName 的关系的名称。关系名称不由命名空间限定。 + 用于检索 relationshipName 的另一端的目标角色. + relationshipName 或 targetRoleName 为 null。 + 源类型不匹配所有者类型。 + targetRoleName 无效或无法在元数据中找到关系类型。 + + + 通过使用关系名称和目标角色名称的指定组合,获取相关对象的 + 相关对象的 + 要浏览的关系的名称。关系名称不由命名空间限定。 + 要浏览的目标角色的名称。指示在关系中浏览的方向。 + 返回的 的类型。 + 指定角色返回 而不是 + + + 采用通过默认构造函数创建的现有 EntityCollection,并且使用提供的关系和目标角色名称初始化它。此方法设计为仅在反序列化期间使用;如果已初始化提供的 EntityCollection 或者关系管理器已附加到某一 ObjectContext,此方法将引发异常。 + 关系名。 + 目标角色名。 + 现有 EntityCollection。 + targetRoleName 表示的实体的类型 + + + 采用通过默认构造函数创建的现有 EntityReference,并且使用提供的关系和目标角色名称初始化它。此方法设计为仅在反序列化期间使用;并且在以下情况下此方法将引发异常:已初始化提供的 EntityReference、关系管理器已包含具有此名称和目标角色的关系或者关系管理器已附加到某一 ObjectContext。 + 关系名。 + 相关端的角色名称。 + 要初始化的 。 + 正在初始化的 的类型。 + 当提供的 已初始化时。-或-当关系管理器已附加到某一 时,或当关系管理器已包含具有此名称和目标角色的关系时。 + + + 在内部使用,用于反序列化实体对象及 实例。 + 序列化的流。 + + + 由对象服务调用,用来准备 以序列化关系进行二进制序列化。 + 说明给定序列化流的源和目标,并提供另一个调用方定义的上下文。 + + + 此类包含某一日期对象所需的公共方法。 + + + 初始化 类的新实例。 + + + 确定指定的字节数组是否包含完全相同的值。 + 如果两个数组具有相同长度且包含相同字节值,或两个数组都为 null,则为 true;否则为 false。 + 要比较的第一个字节数组值。 + 要比较的第二个字节数组。 + + + 返回数据源支持的最小日期时间值。 + 一个 值,表示数据源支持的最小日期时间值。 + + + 用于更改跟踪的公共常量名称。通过提供此定义可允许用户使用此常量,而不是对字符串进行硬编码。这有助于确保属性名称正确,并且允许在我们在查找此特定字符串的位置更快地进行比较。用户仍可以直接使用区分大小写的字符串,而不是常量,只是在比较时速度稍慢。在名称周围包括短划线 (-) 字符将确保这将不会与某一真实的数据属性冲突,因为 -EntityKey- 不是有效的标识符名称 + + + 返回当前字节值的副本。 + 当前 值的副本。 + 当前字节数组值。 + + + 返回指定属性的复杂类型。 + 属性的复杂类型对象。 + 从复杂对象继承的复杂对象。 + 复杂属性的名称,该复杂属性为复杂对象。 + 指示类型是否允许 Null 值。 + 指示类型是否已初始化。 + 正在请求的复杂对象的类型。 + + + 引发 事件。 + 已更改的属性的名称。 + + + 引发 事件。 + 更改的属性的名称。 + + + 属性已更改的通知。 + + + 属性将要更改的通知。 + + + 引发用于报告属性已更改的事件。 + 已更改的属性的名称。 + + + 引发用于报告属性更改挂起的事件。 + 更改的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + 布尔值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + 布尔值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 设置的 值。 + 正在验证的值。 + + + 确保正在为属性设置的 值有效。 + 一个已设置的 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + 正在设置的值。 + 指示属性是否可为 null。 + + + 确保正在为属性设置的 值有效。 + 正在验证的 值。 + 传入属性 setter 中的值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 对于不可为 null 的值如果值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 要检查的 值。 + 指示此属性是否允许为 null 的标志。 + 对于不可以为 null 的属性,该值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 待检查的 值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 对于不可以为 null 的属性,该值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 待检查的 值。 + 指示此属性是否允许为 null 的标志。 + 对于不可以为 null 的属性,该值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 要检查的 值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 对于不可以为 null 的属性,该值为 null。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保要为属性设置的 UInt16 值有效。 + 正在设置的可以为 null 的 UInt16 值。 + 可以为 null 的 UInt16 值。 + + + 确保要为属性设置的 UInt16 值有效。 + 正在设置的可以为 null 的 UInt16 值。 + 可以为 null 的 UInt16 值。 + 要验证的属性的名称。 + + + 确保要为属性设置的 UInt32 值有效。 + 正在设置的可以为 null 的 UInt32 值。 + 可以为 null 的 UInt32 值。 + + + 确保要为属性设置的 UInt32 值有效。 + 正在设置的可以为 null 的 UInt32 值。 + 可以为 null 的 UInt32 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 UInt64 值。 + 可以为 null 的 UInt64 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 UInt64 值。 + 可以为 null 的 UInt64 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保要为属性设置的单精度值有效。 + 正在设置的 值。 + + 值。 + + + 确保要为属性设置的单精度值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 验证的 值。 + 待检查的字符串值。 + 指示此属性是否允许为 null 的标志。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 经过验证的属性。 + 待检查的字符串值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 该字符串值对于不可以为 null 的字符串为 null。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 设置指定属性的复杂对象。 + 从复杂对象派生的复杂类型。 + 属性的原始复杂对象(如果有)。 + 正在设置的复杂对象。 + 正在设置为复杂对象的复杂属性。 + 被替换的对象的类型。 + + + 检验复杂对象是否不为 null。 + 正在验证的复杂对象。 + 正在检验的复杂对象。 + 与 complexObject 关联的父对象上的复杂属性。 + 正在验证的复杂对象的类型。 + + + 在提交 期间出错时引发的异常。 + + + 使用默认值初始化 的新实例。 + + + 使用序列化数据初始化 类的新实例。 + 序列化或反序列化对象时所需的数据。 + 指定序列化流的源和目标的说明。 + + + 使用错误消息初始化 的新实例。 + 异常消息。 + + + 使用错误消息和内部异常初始化 的新实例。 + 异常消息。 + 内部异常。 + + + 表示事务处理程序,该程序允许在事务提交期间通过在数据库中存储事务跟踪信息,来从连接故障中正常恢复。需要使用 注册它。 + + + 使用默认 初始化 类的新实例。 + + + 初始化 类的新实例。 + 事务上下文工厂。 + + + 将新事务的跟踪信息存储到同一事务中的数据库。 + 开始事务的连接。 + 与调用关联的上下文信息。 + + + 生成数据库初始化脚本。 + 数据库初始化脚本。 + + + 删除所有事务历史记录。 + + + 异步删除所有事务历史记录。 + 表示异步操作的任务。 + + + 异步删除所有事务历史记录。 + 表示异步操作的任务。 + 取消标记。 + + + 如果引发了异常,请检查此事务的数据库,如果找不到,则会再次引发异常。否则将提交标记为成功并为将删除的事务信息进行排队。 + 已提交的事务。 + 与调用关联的上下文信息。 + + + 释放此事务对象占用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 停止跟踪已处理的事务。 + 已释放的事务。 + 与调用关联的上下文信息。 + + + 获取与 关联的 (如果存在);否则返回 null。 + 关联的 + 上下文。 + + + 获取与 关联的 (如果存在);否则返回 null。 + 关联的 + 上下文。 + + + 初始化实例的属性。 + 上下文。 + + + 初始化实例的属性。 + 上下文。 + 连接。 + + + 将指定事务添加到可从数据库中删除的事务列表 + 要从数据库中删除的事务。 + + + 删除标记为删除的事务。 + + + 如果标记为删除的事务的数目超出 ,则删除这些事务。 + 如果即使其数量未超出 仍然删除所有旧事务,则为 true;否则为 false。 + 如果使用关联执行来执行操作,则为 true;否则为 false。 + + + 异步删除标记为删除的事务。 + 表示异步操作的任务。 + + + 如果标记为删除的事务的数目超出 ,则删除这些事务。 + 表示异步操作的任务。 + 如果即使其数量未超出 仍然删除所有旧事务,则为 true;否则为 false。 + 如果使用关联执行来执行操作,则为 true;否则为 false。 + 取消标记。 + + + 异步删除标记为删除的事务。 + 表示异步操作的任务。 + 取消标记。 + + + 在清除事务日志之前获取要在上下文中执行的事务数。默认值为 20。 + 在清除事务日志之前要在上下文中执行的事务数。 + + + 停止跟踪回滚的事务。 + 已回滚的事务。 + 与调用关联的上下文信息。 + + + 获取事务上下文。 + 事务上下文。 + + + 的 ChangeTracker 方法返回以提供对与实体的更改跟踪相关的上下文的功能的访问。 + + + 检测对 POCO 实体的属性和关系所做的更改。请注意,某些类型的实体(如更改跟踪代理和派生自 的实体)会自动报告更改,并且这些类型的实体通常不需要调用 DetectChanges。另请注意,通常, 的许多方法及其相关类会自动调用 DetectChanges,这样一来,便很少需要显式调用此方法。但通常出于性能原因,可能需要使用 中的 AutoDetectChangesEnabled 标志来关闭对 DetectChanges 的自动调用。 + + + 获取此上下文跟踪的所有实体的 对象。 + 项。 + + + 获取此上下文跟踪的给定类型的所有实体的 对象。 + 项。 + 实体的类型。 + + + 指定 是否与指定的对象相同。 + 如果 与指定的对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与 关联的哈希代码。 + 关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 检查 是否正在跟踪任何新建、已删除或有更改的实体或关系,这些实体或关系将在调用 时,发送到数据库。 + 如果基础 有更改,则为 true;否则为 false。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 表示非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 集合元素的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 获取此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载此集合的所有实体。 + 如果已加载所有相关实体或 IsLoaded 已显示设置为 true,则为 true;否则为 false。 + + + 从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回将用于从数据库加载此集合的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作,例如,计算数据库中的集合中的实体数,而不实际加载这些实体。 + 针对集合的查询。 + + + 此类的实例从 的 Collection 方法返回,并且允许对实体的集合导航属性执行各种操作(如加载)。 + 此属性所属的实体的类型。 + 实体集合中的元素的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载此集合的所有实体。 + 如果加载所有相关实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回由此对象表示的导航属性的非泛型 类的新实例。 + 非泛型版本。 + 表示导航属性的对象。 + + + 返回将用于从数据库加载此集合的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作,例如,计算数据库中的集合中的实体数,而不实际加载这些实体。 + 针对集合的查询。 + + + 实体数据模型 (EDM) 模型的不可变表示形式,该模型可用于创建 ,也可将该模型传递给 的构造函数。为了提高性能,应缓存和重用此类型的实例以构造上下文。 + + + 创建 ObjectContext 的实例或派生自 ObjectContext 的类的实例。请注意,可使用适当的 DbContext 构造函数来改为创建 DbContext 的实例。如果使用派生的 ObjectContext,则它必须具有带单个 EntityConnection 参数的公共构造函数。传递的连接由创建的 ObjectContext 使用,但不属于上下文。在释放上下文后,调用方必须释放连接。 + 上下文。 + 供上下文使用的数据库的现有连接。 + 要创建的上下文的类型。 + + + 非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 复杂属性的类型。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 此类的实例从 的 ComplexProperty 方法返回,并允许访问复杂属性的状态。 + 此属性所属的实体的类型。 + 属性的类型。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 表示嵌套属性的表达式。 + 嵌套属性的类型。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + 嵌套属性的类型。 + + + 返回由此对象表示的属性的非泛型 类的新实例。 + 非泛型版本。 + 表示属性的对象。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 表示嵌套属性的表达式。 + 嵌套属性的类型。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + 嵌套属性的类型。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 表示有关数据库连接的信息。 + + + 初始化表示应用程序配置文件中指定的连接的 类的新实例。 + 应用程序配置中的连接字符串的名称。 + + + 初始化基于连接字符串的 类的新实例。 + 用于连接的连接字符串。 + 用于连接的提供程序的名称。将“System.Data.SqlClient”用于 SQL Server。 + + + 确定当前 类型是否等于提供的对象类型。 + 如果当前 类型等于指定的对象类型,则为 true;否则为 false。 + 要与当前 对象进行比较的对象。 + + + 生成表示当前连接的值。 + 表示当前连接的值。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 对象转换为字符串。 + 当前驱动器。 + + + 描述与 关联的数据库连接字符串的来源。 + + + 该连接字符串是从外部配置中进行读取的。 + + + 该连接字符串是按约定创建的。 + + + 该连接字符串是由提供给 DbContextInfo 的连接信息重写的。 + + + 该连接字符串是在运行时显式指定的。 + + + 的 Configuration 方法返回以提供对上下文的配置选项的访问。 + + + 获取或设置一个值,该值指示是否通过 和相关类的方法自动调用 方法。默认值为 true。 + 如果应自动调用,则为 true;否则为 false。 + + + 获取或设置某值,该值确定是否应在事务中始终执行 SQL 函数和命令。 + 默认事务行为。 + + + 指定配置是否与指定的对象相同。 + 如果配置与指定的对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与配置关联的哈希代码。 + 与配置关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 获取或设置一个值,该值指示是否启用针对公开为导航属性的关系的延迟加载。延迟加载在默认情况下处于启用状态。 + 如果启用延迟加载,则为 true;否则为 false。 + + + 获取或设置一个值,该值指示框架在创建实体类型的实例时是否会创建动态生成的代理类的实例。请注意,即使使用此标记启用了代理创建,也只会为满足代理设置要求的实体类型创建代理实例。默认情况下启用代理创建。 + 如果启用了代理创建,则为 true;否则为 false。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 获取或设置一个值,该值指示当比较两个操作数,而它们都可能为 null 时,是否展示数据库 null 语义。默认值为 false。例如:如果 UseDatabaseNullSemantics 为 true,则 (operand1 == operand2) 将转换为 (operand1 = operand2);如果 UseDatabaseNullSemantics 为 false,则将转换为 (((operand1 = operand2) AND (NOT (operand1 IS NULL OR operand2 IS NULL))) OR ((operand1 IS NULL) AND (operand2 IS NULL)))。 + 如果启用数据库 null 比较行为,则为 true;否则为 false。 + + + 获取或设置一个值,该值指示在调用 时,是否应自动验证所跟踪的实体。默认值为 true。 + + + 提供有关给定 类型的运行时信息。 + + + 使用指定上下文类型初始化 类的新实例。 + 具体 类型。 + + + 使用指定上下文类型和配置文件初始化 类的新实例。 + 具体 类型。 + 表示配置文件的对象。 + + + 使用指定连接信息、上下文类型和配置文件初始化 类的新实例。 + 派生自 的类型。 + 表示配置文件的对象。 + 要使用的数据库的连接信息。 + + + 使用指定上下文类型、配置文件和提供程序信息初始化 类的新实例。 + 派生自 的类型。 + 表示配置文件的对象。 + 指定要面向的基础 ADO.NET 提供程序的 。 + + + 通过使用指定上下文类型和连接字符串的设置来初始化 类。 + 派生自 的类型。 + 连接字符串的集合。 + + + 使用指定上下文类型和连接信息初始化 类的新实例。 + 派生自 的类型。 + 要使用的数据库的连接信息。 + + + 使用指定上下文类型和提供程序信息初始化 类的新实例。 + 派生自 的类型。 + 指定要面向的基础 ADO.NET 提供程序的 。 + + + 获取基础 类型使用的连接的 ADO.NET 提供程序名称。 + 基础 类型使用的连接的 ADO.NET 提供程序名称。 + + + 获取基础 类型使用的连接字符串。 + 基础 类型使用的连接字符串。 + + + 获取基础 类型使用的连接字符串名称。 + 基础 类型使用的连接字符串名称。 + + + 获取基础 类型使用的连接字符串的来源。 + 基础 类型使用的连接字符串的来源。 + + + 获取具体 类型。 + 具体 类型。 + + + 创建 对象的实例。 + 已创建的实例。 + + + 获取是否可创建基础 类型。 + 如果基础 类型可创建,则为 true;否则为 false。 + + + 获取或设置在 OnModelCreating 已在上下文中运行后将对 DbModelBuilder 执行的操作。 + 在 OnModelCreating 已在上下文中运行后将对 DbModelBuilder 执行的操作。 + + + 非泛型版本的 类。 + + + 返回由此对象表示的跟踪实体的给定泛型类型的泛型 类的新实例。请注意跟踪实体的类型必须与泛型类型兼容,否则将引发异常。 + 泛型版本。 + 实体的类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 复杂属性的名称。 + + + 获取由此对象表示的跟踪实体的当前属性值。 + 当前值。 + + + 获取实体。 + 实体。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 在数据库中查询跟踪实体的值的副本,因为当前它们位于数据库中。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + 等待任务完成期间要观察的 。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码,适合在哈希算法和类似哈希表的数据结构中使用。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此 实例并返回验证结果。 + 实体验证结果。如果重写 方法,则可能为 Null。 + + + 获取表示实体成员的对象。返回的对象的运行时类型将随要求的成员类型的不同而不同。当前支持的成员类型及其返回类型为:引用导航属性:.集合导航属性:.基元/标量属性:.复杂属性: + 表示成员的对象。 + 成员名。 + + + 获取由此对象表示的跟踪实体的原始属性值。原始值通常是实体的属性值,就像上次从数据库查询这些值一样。 + 原始值。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 属性的名称。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取或设置实体的状态。 + 状态。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 此类的实例提供对有关由 跟踪的实体的信息和控制的访问权。使用上下文的 Entity 或 Entities 方法来获取此类型的对象。 + 实体的类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 表示导航属性的表达式。 + 集合中的元素类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + 集合中的元素类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 表示复杂属性的表达式。 + 复杂属性的类型。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 复杂属性的名称。 + 复杂属性的类型。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 复杂属性的名称。 + + + 获取由此对象表示的跟踪实体的当前属性值。 + 当前值。 + + + 获取实体。 + 实体。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 在数据库中查询跟踪实体的值的副本,因为当前它们位于数据库中。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + 等待任务完成期间要观察的 。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码,适合在哈希算法和类似哈希表的数据结构中使用。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此 实例并返回验证结果。 + 实体验证结果。如果重写 方法,则可能为 Null。 + + + 获取表示实体成员的对象。返回的对象的运行时类型将随要求的成员类型的不同而不同。当前支持的成员类型及其返回类型为:引用导航属性:.集合导航属性:.基元/标量属性:.复杂属性: + 表示成员的对象。 + 成员名。 + 成员的类型。 + + + 获取表示实体成员的对象。返回的对象的运行时类型将随要求的成员类型的不同而不同。当前支持的成员类型及其返回类型为:引用导航属性:.集合导航属性:.基元/标量属性:.复杂属性: + 表示成员的对象。 + 成员名。 + + + 返回此对象所表示跟踪实体的非泛型 类的新实例。 + 非泛型版本。 + 表示跟踪实体的对象。 + + + 获取由此对象表示的跟踪实体的原始属性值。原始值通常是实体的属性值,就像上次从数据库查询这些值一样。 + 原始值。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 表示属性的表达式。 + 属性的类型。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 属性的名称。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 属性的名称。 + 属性的类型。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 表示导航属性的表达式。 + 属性的类型。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + 属性的类型。 + + + 从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取或设置实体的状态。 + 状态。 + + + 返回数据库实体值的字符串表示形式。 + 数据库实体值的字符串表示形式。 + + + 为在两次重试之间使用以指数形式增长的延迟时间的不可靠操作和瞬时条件提供重试机制的基实现。 + + + 初始化 类的新实例。 + + + 使用指定的重试次数限制值和两次重试之间的延迟时间初始化 类的新实例。 + 最大重试次数。 + 两次重试之间的最大延迟时间(毫秒)。 + + + 在指定操作满足当前重试策略时重复执行此操作。 + 一个表示不返回任何结果的可执行操作的委托。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 在指定操作满足当前重试策略时重复执行此操作。 + 操作的结果。 + 一个表示返回 类型的结果的可执行操作的委托。 + 从可执行操作预期获得的结果类型。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 在指定异步操作满足当前重试策略时重复执行此操作。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回 类型的已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + 返回的 的结果类型。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 在指定异步操作满足当前重试策略时重复执行此操作。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 确定是否应重试操作以及在下次重试前的延迟时间。 + 如果应重试操作,则返回一个延迟值,它指示在下一次执行尝试前要等待多长时间;否则返回 null。 + 在最后一次执行尝试期间引发的异常。 + + + 获取一个值,该值指示此 在失败后是否可能重试执行。 + 如果 在失败后可能重试执行,则为 true;否则为 false。 + + + 确定指定的异常是否表示可以通过重试解决的瞬态失败。 + 如果指定异常视为瞬态的,则为 true;否则为 false。 + 要验证的异常对象。 + + + 只要它是 ,就以递归方式从 获取 InnerException,并将其传递给 + + 的结果。 + 要取消包装的异常。 + 一个将使用未包装的异常调用的委托。 + 未包装异常的类型。 + + + 这是一个抽象基类,用于表示实体的标量/复杂属性或导航属性。标量和复杂属性使用派生类 ,引用导航属性使用派生类 ,而集合导航属性使用派生类 + + + 初始化 类的新实例。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 属性的类型。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此成员所属的 + 拥有此成员的实体的项。 + + + 确定指定的项是否等于当前项。 + 如果指定的项等于当前项,则为 true;否则为 false。 + 要与当前项进行比较的对象。 + + + 返回此项的哈希函数。 + 此项的哈希函数。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此属性。 + + 对象的集合。绝不会为 null。如果实体有效,则集合将为空。 + + + 获取属性的名称。 + 属性名称。 + + + 返回数据库属性值的字符串表示形式。 + 数据库属性值的字符串表示形式。 + + + 这是一个抽象基类,用于表示实体的标量/复杂属性或导航属性。标量和复杂属性使用派生类 ,引用导航属性使用派生类 ,而集合导航属性使用派生类 + 此属性所属的实体的类型。 + 属性的类型。 + + + 初始化 类的新实例。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此成员所属的 + 拥有此成员的实体的项。 + + + 指定对象是否等于指定的对象。 + 如果对象等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与对象关联的哈希代码。 + 与对象关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此属性。 + + 对象的集合。绝不会为 null。如果实体有效,则集合将为空。 + + + 获取属性的名称。 + 属性的名称。 + + + 返回由此对象表示的属性的非泛型 类的新实例。 + 非泛型版本。 + 表示属性的对象。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 表示由 创建的实体数据模型 (EDM)。Compile 方法,可用来从此 EDM 的表示形式转换到 ,后者是适合缓存和创建 实例的模型的编译快照。 + + + 为此模式创建 ,它是适合缓存和创建 实例的编译快照。 + 已编译的模型。 + + + 获取概念模型。 + + + 获取映射模型。 + + + 获取提供程序信息。 + + + 获取提供程序清单。 + + + 获取存储模型。 + + + 非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 属性的类型。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此属性所属的 + 拥有此属性的实体的项。 + + + 获取或设置一个值,该值指示是否在从数据库加载此属性的值后修改了该值。 + 如果修改此实例,则为 true;否则为 false。 + + + 获取属性名称。 + 属性名称。 + + + 获取或设置此属性的原始值。 + 原始值。 + + + 此属性嵌套在其中的属性的 。此方法仅为复杂对象的属性返回非 null 项;它将为实体本身的属性返回 null。 + 父复杂属性的项,如果这是一个实体属性,则为 null。 + + + 此类的实例从 的 Property 方法返回,并允许访问标量属性或复杂属性。 + 此属性所属的实体的类型。 + 属性的类型。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此属性所属的 + 拥有此属性的实体的项。 + + + 获取或设置一个值,该值指示是否在从数据库加载此属性的值后修改了该值。 + 如果修改此实例,则为 true;否则为 false。 + + + 获取属性名称。 + 属性名称。 + + + 返回由此对象表示的属性的非泛型 类的新实例。 + 非泛型版本。 + 表示属性的对象。 + + + 获取或设置此属性的原始值。 + 原始值。 + + + 此属性嵌套在其中的属性的 。此方法仅为复杂对象的属性返回非 null 项;它将为实体本身的属性返回 null。 + 父复杂属性的项,如果这是一个实体属性,则为 null。 + + + 基础实体或复杂对象的所有属性的集合。 + + + 创建一个包含此字典中所有属性的副本的新字典。对新字典所做的更改不会反映在此字典中,反之亦然。 + 此字典的副本。 + + + 指定 是否等于特定对象。 + 如果 等于特定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与属性值关联的哈希代码。 + 与属性值关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 获取属性的值,正如使用索引属性 getter 但将类型设置为泛型参数的类型一样。这在使用嵌套字典以避免编写包含大量强制转换的表达式时特别有用。 + 属性的值。 + 属性的名称。 + 属性的类型。 + + + 获取或设置带指定属性名称的属性的值。该值可能为此类的嵌套实例。 + 属性的值。 + + + 获取作为只读集的此字典中所有属性的名称集。 + 属性名称。 + + + 通过从其他字典中读取值来设置此字典的值。另一个字典必须基于与此字典相同的类型,或基于此字典的类型所派生的类型。 + 从中读取值的字典。 + + + 通过从给定对象中读取值来设置此字典的值。给定对象可以是任何类型。如果对象具有任何与字典中的属性名称匹配且可读取的名称的属性,则将读取这些属性。其他属性将被忽略。例如,这样便能从简单的数据传输对象 (DTO) 中复制属性。 + 从中读取值的对象。 + + + 为此字典创建一个基础类型对象,并使用此字典中的属性值冻结该对象。 + 已复制到新对象中的此字典的属性。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 分组一对字符串,它们将提供程序和服务器版本一起标识为一个对象。 + + + 为给定的提供程序固定名称和清单标记创建一个新对象。 + 标识该提供程序的字符串。例如,SQL Server 提供程序使用字符串“System.Data.SqlCient”。 + 标识正在使用的数据库服务器版本的字符串。例如,SQL Server 提供程序对 SQL Server 2008 使用字符串“2008”。此值不能为 null 但可以为空。清单标记有时也称为版本提示。 + + + 确定指定的对象是否等于此当前对象。 + 如果指定的对象等于此当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 获取此当前对象的哈希函数。 + 此当前对象的哈希函数。 + + + 标识该提供程序的字符串。例如,SQL Server 提供程序使用字符串“System.Data.SqlCient”。 + + + 标识正在使用的数据库服务器版本的字符串。例如,SQL Server 提供程序对 SQL Server 2008 使用字符串“2008”。此值不能为 null 但可以为空。 + + + 表示针对 DbContext 的非泛型 LINQ to Entities 查询。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 返回等效泛型 对象。 + 泛型集对象。 + 已为其创建查询的元素的类型。 + + + IQueryable 元素类型。 + + + 指定查询是否等于指定的对象。 + 如果查询等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与查询关联的哈希代码。 + 与查询关联的哈希代码。 + + + 获取与查询关联的类型。 + 与查询关联的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 DbQuery&lt;T&gt;,它具有所定义的查询路径。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。相反,用数据填充 DbSet,例如,使用 Load 扩展方法,然后绑定到本地数据。对于 WPF,绑定到 DbSet.Local。对于 Windows 窗体,则绑定到 DbSet.Local.ToBindingList()。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + IQueryable LINQ 表达式。 + + + IQueryable 提供程序。 + + + 返回基础查询的 表示形式。 + 查询字符串。 + + + 表示针对 DbContext 的 LINQ to Entities 查询。 + 要查询的实体的类型。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 确定当前查询是否等于指定的查询。 + 如果当前查询等于指定的查询,则为 true;否则为 false。 + 要与当前查询进行比较的对象。 + + + 返回此查询的哈希函数。 + 此查询的哈希函数。 + + + 获取当前查询的类型。 + 当前查询的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + + + 返回此查询的非泛型 类的新实例。 + 非泛型版本。 + 查询。 + + + 获取此查询的枚举会导致对存储区执行此查询。 + 查询的 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。相反,用数据填充 DbSet,例如,使用 Load 扩展方法,然后绑定到本地数据。对于 WPF,绑定到 DbSet.Local。对于 Windows 窗体,则绑定到 DbSet.Local.ToBindingList()。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + IQueryable 元素类型。 + + + IQueryable LINQ 表达式。 + + + IQueryable 提供程序。 + + + 返回基础查询的 表示形式。 + 查询字符串。 + + + 表示非实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。实体的 SQL 查询是使用 创建的。请参见 了解此类的泛型版本。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 指定查询是否等于指定的对象。 + 如果查询等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要对每个元素执行的操作。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要对每个元素执行的操作。 + 等待任务完成期间要观察的 。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 获取与查询关联的哈希代码。 + 与查询关联的哈希代码。 + + + 获取与查询关联的类型。 + 与查询关联的类型。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含查询的元素。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含查询的元素。 + 等待任务完成期间要观察的 。 + + + 返回一个包含 SQL 字符串的 ,该字符串是在创建查询时设置的。不包括参数。 + 表示此实例的 + + + 表示非实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。实体的 SQL 查询是使用 创建的。请参见 了解此类的非泛型版本。 + 查询所返回元素的类型。 + + + 异步确定查询的所有元素是否满足条件。 + 表示异步操作的任务。如果查询结果的每个元素都通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + + + 异步确定查询的所有元素是否满足条件。 + 表示异步操作的任务。如果查询结果的每个元素都通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + + + 异步确定查询是否包含任何元素。 + 表示异步操作的任务。如果查询结果包含任何元素,则任务结果包含 true;否则包含 false。 + + + 异步确定查询的任何元素是否满足条件。 + 表示异步操作的任务。如果查询结果的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + + + 异步确定查询的任何元素是否满足条件。 + 表示异步操作的任务。如果查询结果的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + + 异步确定查询是否包含任何元素。 + 表示异步操作的任务。如果查询结果包含任何元素,则任务结果包含 true;否则包含 false。 + 等待任务完成期间要观察的 。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 通过使用默认的相等比较器异步确定查询是否包含指定的元素。 + 表示异步操作的任务。如果查询结果包含指定的值,则任务结果包含 true;否则包含 false。 + 要在查询结果中查找的对象。 + + + 通过使用默认的相等比较器异步确定查询是否包含指定的元素。 + 表示异步操作的任务。如果查询结果包含指定的值,则任务结果包含 true;否则包含 false。 + 要在查询结果中查找的对象。 + 等待任务完成期间要观察的 。 + + + 异步返回查询中的元素数。 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 查询结果中的元素数大于 + + + 异步返回满足条件的查询中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回满足条件的查询中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回查询中的元素数。 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 等待任务完成期间要观察的 。 + 查询结果中的元素数大于 + + + 确定当前查询是否等于指定的查询。 + 如果当前查询等于指定的查询,则为 true;否则为 false。 + 要与当前查询进行比较的查询。 + + + 异步返回查询的第一个元素。 + 表示异步操作的任务。任务结果包含查询结果中的第一个元素。 + 查询结果为空。 + + + 异步返回满足指定条件的查询的第一个元素。 + 表示异步操作的任务。任务结果包含满足指定条件的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + 查询结果为空。 + + + 异步返回满足指定条件的查询的第一个元素。 + 表示异步操作的任务。任务结果包含满足指定条件的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + 查询结果为空。 + + + 异步返回查询的第一个元素。 + 表示异步操作的任务。任务结果包含查询结果中的第一个元素。 + 等待任务完成期间要观察的 。 + 查询结果为空。 + + + 异步返回查询的第一个元素;如果查询结果不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空,则任务结果包含 default ();否则包含查询结果中的第一个元素。 + + + 异步返回满足指定条件的查询的第一个元素;如果未找到这样的元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + + + 异步返回满足指定条件的查询的第一个元素;如果未找到这样的元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + + + 异步返回查询的第一个元素;如果查询结果不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空,则任务结果包含 default ();否则包含查询结果中的第一个元素。 + 等待任务完成期间要观察的 。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要执行的操作。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要执行的操作。 + 等待任务完成期间要观察的 。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 返回此查询的哈希函数。 + 此查询的哈希函数。 + + + 获取当前查询的类型。 + 当前查询的类型。 + + + 异步返回表示查询中的总元素数的 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 查询结果中的元素数大于 + + + 异步返回表示满足条件的查询中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回表示满足条件的查询中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回表示查询中的总元素数的 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 等待任务完成期间要观察的 。 + 查询结果中的元素数大于 + + + 异步返回查询的最大值。 + 表示异步操作的任务。任务结果包含查询结果中的最大值。 + + + 异步返回查询的最大值。 + 表示异步操作的任务。任务结果包含查询结果中的最大值。 + 等待任务完成期间要观察的 。 + + + 异步返回查询的最小值。 + 表示异步操作的任务。任务结果包含查询结果中的最小值。 + + + 异步返回查询的最小值。 + 表示异步操作的任务。任务结果包含查询结果中的最小值。 + 等待任务完成期间要观察的 。 + + + 异步返回查询的唯一元素;如果该查询结果并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素。 + 查询结果有多个元素。 + 查询结果为空。 + + + 异步返回满足指定条件的查询的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回满足指定条件的查询的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回查询的唯一元素;如果该查询结果并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素。 + 等待任务完成期间要观察的 。 + 查询结果有多个元素。 + 查询结果为空。 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 查询结果有多个元素。 + + + 异步返回满足指定条件的查询的唯一元素;如果这类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素;如果没有找到这样的元素,则任务结果包含 default ()。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + 多个元素满足 中的条件。 + + + 异步返回满足指定条件的查询的唯一元素;如果这类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素;如果没有找到这样的元素,则任务结果包含 default ()。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + 多个元素满足 中的条件。 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 等待任务完成期间要观察的 。 + 查询结果有多个元素。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 通过异步枚举从查询创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + + + 通过异步枚举从查询创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + 等待任务完成期间要观察的 。 + + + 通过异步枚举它根据指定的键选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + + 返回的键类型。 + + + 通过异步枚举它根据指定的键选择器函数和比较器从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + + 返回的键类型。 + + + 通过异步枚举它根据指定的键选择器函数和比较器从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + + 通过异步枚举它根据指定的键选择器函数和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从查询选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数、比较器和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数、比较器和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从查询选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 等待任务完成期间要观察的 。 + + + 返回一个包含 SQL 字符串的 ,该字符串是在创建查询时设置的。不包括参数。 + 表示此实例的 + + + 非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 属性的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载该实体。 + 如果加载了该实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 从数据库加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回将用于从数据库加载此实体的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作。 + 针对实体的查询。 + + + 此类的实例从 的 Reference 方法返回,并且允许对实体的引用导航属性执行各种操作(如加载)。 + 此属性所属的实体的类型。 + 属性的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载该实体。 + 如果加载了该实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 从数据库加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回由此对象表示的导航属性的非泛型 类的新实例。 + 非泛型版本。 + 表示导航属性的对象。 + + + 返回将用于从数据库加载此实体的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作。 + 针对实体的查询。 + + + 表示实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从该实体类型的 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。非实体的 SQL 查询是使用 创建的。请参见 了解此类的泛型版本。 + + + 从派生类的构造函数中进行调用时,创建一个 实例,它将用作 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking 和 AsStreaming,它们的默认实现是空操作。 + + + 返回一个新查询,其中查询的结果将不由关联的 跟踪。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要与当前实例进行比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取与查询关联的类型。 + 与查询关联的类型。 + + + 返回一个包含 SQL 字符串的 ,该字符串是在创建查询时设置的。不包括参数。 + 表示此实例的 + + + 表示实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从该实体类型的 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。非实体的 SQL 查询是使用 创建的。请参见 了解此类的非泛型版本。 + 查询所返回实体的类型。 + + + 从派生类的构造函数中进行调用时,创建一个 实例,它将用作 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking 和 AsStreaming,它们的默认实现是空操作。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取与此实例关联的类型。 + 与此实例关联的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 当预期实体的 SaveChanges 将导致数据库更新而实际上未影响数据库中的任何行时 引发的异常。这通常指示,当前已并发更新数据库,使得应匹配的并发标记实际上并不匹配。请注意为了安全起见,不会序列化此异常引用的状态项,并且在序列化后对状态项的访问将返回 null。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 消息。 + + + 初始化 类的新实例。 + 消息。 + 内部异常。 + + + 将更改保存到数据库失败时,由 引发的异常。请注意为了安全起见,不会序列化此异常引用的状态项,并且在序列化后对状态项的访问将返回 null。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 消息。 + + + 初始化 类的新实例。 + 消息。 + 内部异常。 + + + 获取表示无法保存到数据库的实体的 对象。 + 表示无法保存的实体的项。 + + + 表示如果失败不重试操作的默认 + + + 初始化 类的新实例。 + + + 执行一次指定的操作。 + 一个表示不返回任何结果的可执行操作的委托。 + + + 执行一次指定的操作并返回结果。 + 操作的结果。 + 一个表示返回 类型的结果的可执行操作的委托。 + + 的返回类型。 + + + 执行一次指定的异步操作,失败时不重试。 + 如果原始任务成功完成将要运行以完成的任务。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + 返回的 的结果类型。 + + + 执行一次指定的异步操作,失败时不重试。 + 如果原始任务成功完成将要运行以完成的任务。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + + 获取 在失败后是否将重试执行。 + 如果 在失败后将重试执行,则为 true;否则为 false。 + + + 表示使用基础提供程序以获取清单标记的 的默认实现。请注意,为避免多个查询,此实现基于 实例的实际类型、 属性和 属性使用缓存。 + + + 初始化 类的新实例。 + + + 返回要用于给定连接的清单标记。 + 要使用的清单标记。 + 需要清单标记的连接。 + + + 表示用于存储有关数据库中 EDM 的元数据的实体。 + + + 初始化 类的新实例。 + + + 获取或设置元数据实体的 ID,它当前总是为 1。 + ID。 + + + 获取或设置模型哈希,用于检查自从模型中创建数据库后,模型是否发生了更改。 + 模型哈希。 + + + 尝试为给定上下文获取 Code First 计算的模型哈希。如果未在 Code First 模式中使用上下文,则此方法将返回 null。 + 哈希字符串。 + 上下文。 + + + 包含用于访问由 Code First 创建的 EDMX 格式的实体数据模型的方法。通常,在需要查看 Code First 内部创建的模型时,这些方法将用于调试。 + + + 将 Code First 用于给定上下文,然后以 EDMX 形式将生成的实体数据模型写入给定编写器。此方法只能用于使用 Code First 且内部创建模型的上下文实例。此方法不能用于使用 Database First 或 Model First 创建的上下文、使用预先存在的 创建的上下文或使用预先存在的 创建的上下文。 + 上下文。 + 编写器。 + + + 将给定的 表示的实体数据模型以 EDMX 形式写入给定编写器。 + 表示 EDM 的对象。 + 编写器。 + + + 一个用于解析 的键。它包含 ADO.NET 提供程序固定名称和在连接字符串中指定的数据库服务器名称。 + + + 初始化 的新实例。 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + 确定指定的对象是否等于此键。 + 如果指定的对象等于此键,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + + + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + + 接口的异步版本,它允许异步检索元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + + + 获取一个枚举器,它可用于异步枚举序列。 + 用于对序列异步枚举的枚举器。 + + + + 接口的异步版本,它允许异步检索可枚举序列的元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + 要枚举的对象的类型。此类型参数是协变。即可以使用指定的类型或派生程度更高的类型。 有关协变和逆变的详细信息,请参阅。 + + + 获取一个枚举器,它可用于异步枚举序列。 + 用于对序列异步枚举的枚举器。 + + + + 接口的异步版本,它允许异步检索元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + + + 获取迭代中的当前元素。 + + + 将枚举器前移到序列中的下一个元素,异步返回结果。 + 表示异步操作的任务。如果枚举器成功前移到下一个元素,则任务结果包含 true;如果枚举器已过序列末尾,则包含 false。 + 等待任务完成期间要观察的 。 + + + + 接口的异步版本,它允许异步检索元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + 要枚举的对象的类型。此类型参数是协变。即可以使用指定的类型或派生程度更高的类型。 有关协变和逆变的详细信息,请参阅。 + + + 获取迭代中的当前元素。 + + + 定义用于创建和异步执行 对象所描述的查询的方法。此接口用于与实体框架查询交互且不应由自定义类来实现。 + + + 异步执行指定表达式树所表示的强类型查询。 + 表示异步操作的任务。任务结果包含执行指定查询所生成的值。 + 表示 LINQ 查询的表达式树。 + 等待任务完成期间要观察的 。 + 执行查询所生成的值的类型。 + + + 异步执行指定表达式树所表示的查询。 + 表示异步操作的任务。任务结果包含执行指定查询所生成的值。 + 表示 LINQ 查询的表达式树。 + 等待任务完成期间要观察的 。 + + + 此接口的实现用来基于给定的数据库名称创建某个数据库服务器类型的 DbConnection 对象。默认情况下,可在 类上设置一个实例以便创建所有 DbContext 对象(不具有连接信息或只有数据库名称或连接字符串)以使用特定类型的数据库服务器。提供此接口的两种实现: 用于创建与速成版等 Microsoft SQL Server 的连接。 用于创建与 Microsoft SQL Server Compact Edition 的连接。可根据需要添加其他数据库服务器的其他实现。请注意实现应视为是线程安全的或不可变的,因为实现可同时被多个线程访问。 + + + 基于给定的数据库名称或连接字符串创建连接。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 用于创建派生 实例的工厂。实现此接口可为没有公共默认构造函数的上下文类型启用设计时服务。在设计时,可以创建派生的 实例,以启用特定设计时体验,如模型呈现和 DDL 生成。要为没有公共默认构造函数的派生 启用设计时实例化,请实现此接口。设计时服务将自动发现与派生 类型位于同一程序集中的此接口的实现。 + 上下文的类型。此类型参数是协变。即可以使用指定的类型或派生程度更高的类型。 有关协变和逆变的详细信息,请参阅。 + + + 创建派生 类型的新实例。 + TContext 的一个实例 + + + 用于对数据库执行命令或查询的策略,可能具有在失败时进行重试的逻辑。 + + + 执行指定的操作。 + 一个表示不返回任何结果的可执行操作的委托。 + + + 执行指定的操作并返回结果。 + 操作的结果。 + 一个表示返回 类型的结果的可执行操作的委托。 + + 的返回类型。 + + + 执行指定的异步操作并返回结果。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回 类型的已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + 返回的 的结果类型。 + + + 执行指定的异步操作。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + + 指示此 在失败后是否可能重试执行。 + + + 表示一个键值,它唯一地标识已加载到内存中的实体框架模型。 + + + 确定当前缓存的模型键是否等于指定的缓存模型键。 + 如果当前缓存的模型键等于指定的缓存模型键,则为 true;否则为 false。 + 要与当前缓存的模型键比较的缓存模型键。 + + + 返回此缓存模型键的哈希函数。 + 此缓存模型键的哈希函数。 + + + 对您的上下文实现此接口,使用自定义逻辑来计算在缓存中查找已创建模型时所用的键。此接口允许您具有可与同一 AppDomain 中不同模型一起使用的单个上下文类型,或是具有使用同一模型的多个上下文类型。 + + + 获取与提供程序关联的缓存键。 + 与提供程序关联的缓存键。 + + + 用于从给定的 获取正确的 的服务。 + + + 返回给定连接的 + 连接的提供程序工厂。 + 连接。 + + + 用于获取给定连接的提供程序清单标记的服务。默认情况下使用 类并利用基础提供程序来获取通常涉及打开连接的标记。通过将 添加到可能使用连接中的任何信息来返回标记的 ,可以改用其他实现。例如,如果已知连接指向 SQL Server 2008 数据库,则可以返回“2008”而无需打开连接。 + + + 返回要用于给定连接的清单标记。 + 要使用的清单标记。 + 需要清单标记的连接。 + + + 实现此接口以允许由 实例表示的自定义注释序列化为 EDMX XML 以及从 EDMX XML 进行序列化。通常,使用 方法设置序列化程序实例。 + + + 将给定字符串反序列化为预期的注释值。 + 反序列化的注释值。 + 要反序列化的注释的名称。 + 要反序列化的字符串。 + + + 将给定注释值序列化为要存储在 EDMX XML 中的字符串。 + 序列化值。 + 要序列化的注释的名称。 + 要序列化的值。 + + + 约定将导致 DbModelBuilder 在生成模型时包含有关该模型的元数据。当 按约定创建模型时,它会将此约定添加到由 DbModelBuilder 使用的项的列表中。如果使用 DbContext 创建数据库,则会导致将模型元数据写入数据库中。然后,可使用它来快速检查自上次对数据库使用模型后,模型是否发生了更改。可通过重写派生 DbContext 类的 OnModelCreating 方法,从 约定中移除此约定。 + + + 初始化 类的新实例。 + + + 由可提供 实例的对象实现的接口。 类实现此接口以提供对基础 ObjectContext 的访问。 + + + 获取对象上下文。 + 对象上下文。 + + + 解析提供程序固定名称时由 使用。 + + + 获取提供程序的名称。 + 提供程序的名称。 + + + 此类的实例用来基于给定的数据库名称或连接字符串创建 SQL Server LocalDb 的 DbConnection 对象。 + + + 为给定版本的 LocalDb 创建连接工厂的新实例。对于 SQL Server 2012 LocalDb,请使用“v11.0”。对于 SQL Server 2014 及更高版本 LocalDb,请使用“mssqllocaldb”。 + 要使用的 LocalDb 版本。 + + + 为给定版本的 LocalDb 创建连接工厂的新实例。对于 SQL Server 2012 LocalDb,请使用“v11.0”。对于 SQL Server 2014 及更高版本 LocalDb,请使用“mssqllocaldb”。 + 要使用的 LocalDb 版本。 + 用于“初始目录”、“数据源”和“AttachDbFilename”之外的数据库选项的连接字符串。调用 CreateConnection 时,将基于数据库名称在此字符串前添加“初始目录”和“AttachDbFilename”。将基于 LocalDbVersion 参数设置“数据源”。 + + + 用于“初始目录”、“数据源”和“AttachDbFilename”之外的数据库选项的连接字符串。调用 CreateConnection 时,将基于数据库名称在此字符串前添加“初始目录”和“AttachDbFilename”。将基于 LocalDbVersion 参数设置“数据源”。默认值为“Integrated Security=True;”。 + + + 基于给定的数据库名称或连接字符串为 SQL Server LocalDb 创建连接。如果给定的字符串包含“=”字符,则将其视为一个完整的连接字符串,否则仅将其视为数据库名称。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 约定将派生的 类的名称用作由 Code First 生成的概念模型的容器。 + + + 将此约定应用到给定的模型。 + 要将约定应用到的容器。 + 模型。 + + + 约定将派生的 类的命名空间用作由 Code First 生成的概念模型的命名空间。 + + + 使用引用相等性比较对象。 + + + 初始化 类的新实例。 + + + 获取默认实例。 + 默认实例。 + + + 确定指定对象实例是否相等。 + 如果对象相等,则为 true;否则为 false。 + 第一个要比较的对象。 + 第二个要比较的对象。 + + + 获取指定对象的哈希代码。 + 指定对象的哈希代码。 + 对象。 + + + 此类的实例用于内部创建 的常量表达式,这些表达式将插入表达式树中以替换对 的引用。 + 元素的类型。 + + + LINQ 表达式树中应有的公共属性。 + 查询。 + + + 当操作重试了配置的次数后再次失败时引发的异常。 + + + 使用无错误消息初始化 类的新实例。 + + + 使用指定的错误消息初始化 类的新实例。 + 描述错误的消息。 + + + 初始化 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常。 + + + 此类的实例用来基于给定的数据库名称或连接字符串创建 SQL Server Compact Edition 的 DbConnection 对象。 + + + 使用空的(默认)DatabaseDirectory 和 BaseConnectionString 属性创建新的连接工厂。 + 应使用指定 SQL Server Compact Edition 版本的提供程序固定名称。 + + + 使用给定的 DatabaseDirectory 和 BaseConnectionString 属性创建新的连接工厂。 + 应使用指定 SQL Server Compact Edition 版本的提供程序固定名称。 + 用于添加到数据库名称前面的路径,SQL Server Compact Edition 在创建或读取数据库文件时将使用它来构成文件名。空字符串意味着 SQL Server Compact Edition 将其默认位置用作数据库文件位置。 + 要用于“数据源”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置数据源。 + + + 要用于“数据源”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置数据源。默认值为空字符串,即表示不使用任何其他选项。 + + + 基于给定的数据库名称或连接字符串为 SQL Server Compact Edition 创建连接。如果给定的字符串包含“=”字符,则将其视为一个完整的连接字符串,否则仅将其视为数据库名称。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 用于添加到数据库名称前面的路径,SQL Server Compact Edition 在创建或读取数据库文件时将使用它来构成文件名。默认值为“|DataDirectory|”,即表示文件将放置在指定的数据目录中。 + + + 应使用指定 SQL Server Compact Edition 版本的提供程序固定名称。 + + + 此类的实例用来基于给定的数据库名称或连接字符串创建 SQL Server 的 DbConnection 对象。默认情况下,将建立与“.\SQLEXPRESS”的连接。在构造工厂实例时,可通过更改基础连接字符串来更改此设置。 + + + 使用默认的 BaseConnectionString 属性“Data Source=\SQLEXPRESS; Integrated Security=True; MultipleActiveResultSets=True;”创建新的连接工厂。 + + + 使用给定的 BaseConnectionString 属性创建新的连接工厂。 + 要用于“初始目录”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置“初始目录”。 + + + 要用于“初始目录”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置“初始目录”。默认值为“Data Source=.\SQLEXPRESS; Integrated Security=True;”。 + + + 基于给定的数据库名称或连接字符串为 SQL Server 创建连接。如果给定的字符串包含“=”字符,则将其视为一个完整的连接字符串,否则仅将其视为数据库名称。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 此特性可应用于整个派生的 类或该类上的单个 属性。应用此特性后,任何发现的 属性仍将包含在模型中,但将不再自动进行初始化。 + + + 初始化 类的新实例。 + + + 由实体框架提供程序实现,用于检查给定的数据库中是否存在表。当确定是否将现有数据库作为空库处理以便应创建表时,数据库初始化程序使用该类。 + + + + 在派生类中重写时,检查给定的表在给定连接的数据库中存在的位置。 + 如果任意模型表或 EdmMetadata 表存在,则为 true。 + 正在执行表检查的上下文,通常用于获取合适的 。 + 到数据库的一个连接。可能打开或关闭;如果打开,应再次关闭它。不释放。 + 要检查是否存在的表。 + 要检查是否存在的 EdmMetadata 表的名称。 + + + 要获取给定 s 空间 的表名称的帮助器方法。 + 表名称。 + 表的 s 空间实体集。 + + + + 使用此类向数据库中写入和从中读取事务跟踪信息。要自定义事务表的定义,您可以从此类派生并重写 。可以使用 注册派生类。 + + + 初始化 类的新实例。 + 将为其记录事务的上下文所使用的连接。 + + + 初始化派生上下文的模型后调用此方法。 + 定义要创建的上下文的模型的生成器。 + + + 获取或设置可用于读取和写入 实例的 + 可用于读取和写入 实例的 + + + 表示处理事务操作的侦听器的基类。可使用 注册派生类。 + + + 初始化 类的新实例。 + + + 可在派生类中实现。 + 开始事务的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 开始事务的连接。 + 与调用关联的上下文信息。 + + + 在派生类中实现后,返回脚本来为此事务处理程序准备数据库。 + 用于为此事务处理程序更改数据库架构的脚本。 + + + 可在派生类中实现。 + 已关闭的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要关闭的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 已提交的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要提交的事务。 + 与调用关联的上下文信息。 + + + 获取将对其处理事务操作的连接。 + 将为其处理事务操作的 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 获取将对其处理事务操作的连接。 + 将为其处理事务操作的 。可以为 null。 + + + 释放此事务处理程序占用的资源。 + + + 释放此事务处理程序占用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 可在派生类中实现。 + 已释放的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 已释放的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要释放的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要释放的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 使用指定的上下文初始化此实例。 + 将为其处理事务操作的上下文。 + + + 使用指定的上下文初始化此实例。 + 将为其处理事务操作的上下文。 + 用于初始化的连接。 + + + 获取或设置一个值,以指示是否释放了此事务处理程序。 + 如果释放此事务处理程序,则为 true;否则为 false。 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 检查提供的侦听上下文是否包含目标上下文,或提供的连接与目标上下文使用的连接相同。 + 如果提供的侦听上下文包含目标上下文或者在提供的侦听上下文不包含任何上下文时提供的连接与目标上下文使用的连接相同,则为 true;否则为 false。 + 连接。 + 侦听上下文。 + + + 获取将对其处理事务操作的连接。 + 将为其处理事务操作的 + + + 可在派生类中实现。 + 已打开的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要打开的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 已回滚的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要回滚的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 表示一个事务。 + + + 初始化 类的新实例。 + + + 获取或设置事务开始的当地时间。 + 此事务开始的本地时间。 + + + 指示指定对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取或设置分配给事务对象的唯一 ID。 + 分配给事务对象的唯一 ID。 + + + 当上下文从 Database First 或 Model First 模式中的 模板生成,并在 Code First 模式中使用时引发的异常。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 保存序列化对象数据的对象。 + 有关源或目标的上下文信息。 + + + 初始化 类的新实例。 + 消息。 + + + 初始化 类的新实例。 + 消息。 + 内部异常。 + + + 表示创建允许在为迁移搭建基架时为自定义注释生成代码的服务。应在 中设置的派生类。 + + + 初始化 类的新实例。 + + + 为给定注释值生成代码。 + 要为其生成值的注释的名称。 + 批注值。 + 应向其中写入生成的代码的编写器。 + + + 返回应包括在为已搭建基架的迁移生成的代码中的其他命名空间。默认实现返回空枚举。 + 要包括的其他命名空间的列表。 + 要包括在生成的代码中的注释的名称。 + + + 表示已搭建基架的或已手工编码的 中的一对注释值。 + + + 创建一对新注释值。 + 注释的旧值,如果刚创建注释,则此值可能为 null。 + 注释的新值,如果已删除注释,则此值可能为 null。 + + + 确定指定对象是否等于此实例对象。 + 如果指定对象等于此实例对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索哈希代码。 + 哈希代码。 + + + 获取注释的新值,如果已删除注释,则此值可能为 null。 + 注释的新值,如果已删除注释,则此值可能为 null。 + + + 获取注释的旧值,如果刚创建注释,则此值可能为 null。 + 注释的旧值,如果刚创建注释,则此值可能为 null。 + + + 如果两个注释对包含相同值,则返回 true;否则返回 false。 + 如果两对包含相同值,则为 true。 + 一对注释值。 + 一对注释值。 + + + 如果两个注释对包含不同的值,则返回 true;否则返回 false。 + 如果对包含不同值,则为 true。 + 一对注释值。 + 一对注释值。 + + + 和相关方法返回,以指示某个对象是否与另一个对象不冲突,以便这两个对象可以组合成一个对象。 + + + 创建一个新的 实例。 + 指示这两个测试对象是否兼容。 + 指示对象如何不兼容的错误消息。如果 isCompatible 为 true,则应为 null。 + + + 如果 为 true,则返回指示两个测试对象如何不兼容的错误消息。 + + + 如果两个测试对象兼容,则为 true;否则为 false。 + + + 隐式转换为布尔值以允许在检查中直接使用结果对象。 + 如果结果兼容,则为 true;否则为 false。 + 要转换的对象。 + + + 用作自定义注释的类型可以实现此接口,以指示通过将多个注释合并为一个注释,可以尝试在给定表或列上使用多个同名注释。 + + + 如果此注释与给定注释不冲突,则返回 true,以便可以使用 方法将二者组合在一起。 + 指示此注释是否与另一个注释兼容的 CompatibilityResult。 + 要比较的注释。 + + + 将此注释与给定注释合并,并返回新合并的注释。仅当 返回 true 时,此方法才会成功。 + 新合并的注释。 + 要与此注释合并的注释。 + + + 表示用于表示实体框架模型中数据库索引的自定义注释。 + + + 使用索引的给定集合初始化 类的新实例。 + 表示一个或多个索引的索引属性。 + + + 使用索引的给定集合初始化 类的新实例。 + 表示索引的索引属性。 + + + 在将此注释存储在实体框架元数据中或序列化到 SSDL/EDMX 文件中时使用的名称。 + + + 获取此注释表示的索引。 + 此注释表示的索引。 + + + 如果此注释与给定注释不冲突,则返回 true,以便可以使用 方法将二者组合在一起。 + 指示此注释是否与另一个注释兼容的 CompatibilityResult。 + 要比较的注释。 + + + 将此注释与给定注释合并,并返回包含已合并索引的新注释。 + 具有所合并的两个注释的索引的新注释。 + 要与此注释合并的注释。 + 其他注释包含与此注释中的索引不兼容的索引。 + + + 返回 对象的字符串表示形式。 + + 对象的字符串表示形式。 + + + 此类用于序列化和反序列化 对象,以便它们可以存储在 EDMX 形式的实体框架模型中。 + + + 初始化 类的新实例。 + + + 将给定字符串反序列化为 对象。 + 反序列化的注释值。 + 要反序列化的注释的名称。 + 要反序列化的字符串。 + 如果在读取序列化值时出错。 + + + 将给定 序列化为要存储在 EDMX XML 中的字符串。 + 序列化值。 + 要序列化的注释的名称。 + 要序列化的、必须是 IndexAnnotation 对象的值。 + + + 表示传递到 事件处理程序的时间参数。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。与 AddDependencyResolver 方法不同,此方法将解析程序放置于责任链的底部,这样,该解析程序将仅用于解析任何其他解析程序无法解析的依赖项。 + 要添加的解析程序。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。 + 要添加的解析程序。 + 如果为 true,则添加的解析程序将优先于配置文件中的设置。 + + + 获取将要锁定的 的快照。对此对象使用 GetService 方法可获取已注册的服务。 + 将要锁定的 的快照。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取此实例的类型。 + 此实例的类型。 + + + 将一个包装解析程序添加到将要锁定的配置中。包装解析程序是这样一种解析程序:它截取解析程序链已返回的服务并且用相同类型的另一个服务包装或替换它。 + 获取未包装的服务和键并返回已包装或替换的服务的委托。 + 要包装或替换的服务的类型。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 用来调用使用泛型类型参数和/或不带名称的 方法的扩展方法。 + + + 调用 ,将该方法的泛型类型作为类型参数传递并为名称参数传递 null。 + 解析的依赖项;如果解析程序无法解析它,则为 null。 + 要使用的解析程序。 + 要解析的协定类型。 + + + 调用 ,将该方法的泛型类型和给定名称作为参数传递。 + 解析的依赖项;如果解析程序无法解析它,则为 null。 + 要使用的解析程序。 + 要解析的依赖项的键。 + 要解析的协定类型。 + + + 调用 ,以传递给定类型参数并对名称参数使用 null。 + 解析的依赖项;如果解析程序无法解析它,则为 null。 + 要使用的解析程序。 + 要解析的协定类型。 + + + 调用 ,将该方法的泛型类型作为类型参数传递并为名称参数传递 null。 + 所有已解析的依赖项,如果没有解析任何服务,则为 + 要使用的解析程序。 + 要解析的协定类型。 + + + 调用 ,将该方法的泛型类型和给定名称作为参数传递。 + 所有已解析的依赖项,如果没有解析任何服务,则为 + 要使用的解析程序。 + 要解析的依赖项的键。 + 要解析的协定类型。 + + + 调用 ,以传递给定类型参数并对名称参数使用 null。 + 所有已解析的依赖项,如果没有解析任何服务,则为 + 要使用的解析程序。 + 要解析的协定类型。 + + + 用于解析 工厂的 实现。 + 解析的执行策略的类型。 + + + 初始化 的新实例。 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 将与连接字符串中的服务器名称进行匹配的字符串。null 将匹配任意内容。 + 返回执行策略的新实例的函数。 + + + 如果给定类型为 ,则此解析程序将尝试返回要使用的服务,否则它将返回 null。在给定类型为 Func{IExecutionStrategy} 时,键应该是 + + 或 null。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 如果给定类型为 ,则此解析程序将尝试返回要使用的服务,否则它将返回空枚举。在给定类型为 Func{IExecutionStrategy} 时,键应该是 + 可枚举的 或空枚举。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 此接口由可以解析依赖项(直接解析或通过使用外部容器进行解析)的任何对象实现。 + + + 尝试为给定的协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回 null 并且不引发。这允许解析程序用于责任链模式中,以便可以请求多个解析程序解析某一依赖项,直到其中一个解析程序最终解析了该依赖项。 + 解析的依赖项,它必须是给定协定类型的实例;如果无法解析该依赖项,则为 null。 + 定义要解析的依赖项的接口或抽象基类。返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 尝试为给定协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回空枚举并且不引发。此方法与 不同,因为它返回给定类型和键组合的所有注册服务。 + 解析依赖项的所有服务,它们必须是给定协定类型的实例,如果无法解析依赖项,则为空枚举。 + 定义要解析的依赖项的接口或抽象基类。每个返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 实现 以便解析某一依赖项,使其可以始终返回相同的实例。 + 定义将解析的依赖项的协定的类型。 + + + 构造一个新的解析程序,该解析程序将返回协定类型的给定实例,而与传递给 Get 方法的键无关。 + 要返回的实例。 + + + 构造一个新解析程序,如果给定键与基于给定谓词传递给 Get 方法的键匹配,该解析程序将返回协定类型的给定实例。 + 要返回的实例。 + 采用键对象并在当且仅当它匹配时才返回 true 的谓词。 + + + 构造一个新的解析程序,如果给定键完全匹配传递给 Get 方法的键,该解析程序将返回协定类型的给定实例。 + 要返回的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 尝试为给定的协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回 null 并且不引发。这允许解析程序用于责任链模式中,以便可以请求多个解析程序解析某一依赖项,直到其中一个解析程序最终解析了该依赖项。 + 解析的依赖项,它必须是给定协定类型的实例;如果无法解析该依赖项,则为 null。 + 定义要解析的依赖项的接口或抽象基类。返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 尝试为给定协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回空枚举并且不引发。 + 解析依赖项的所有服务,它们必须是给定协定类型的实例,如果无法解析依赖项,则为空枚举。 + 定义要解析的依赖项的接口或抽象基类。每个返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 表示用于解析 工厂的 实现。 + + + 初始化 类的新实例。 + 一个返回事务处理程序的新实例的函数。 + ADO.NET 提供程序固定名称,指示将使用事务处理程序的 ADO.NET 连接的类型。null 将匹配任意内容。 + 将与连接字符串中的服务器名称进行匹配的字符串。null 将匹配任意内容。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索对象实例的哈希代码。 + 对象实例的哈希代码。 + + + 如果给定类型为 ,则此方法将尝试返回要使用的服务,否则它将返回 null。在给定类型为 时,键应该是 + + 或 null。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 如果给定类型为 ,则此解析程序将尝试返回要使用的服务,否则它将返回空枚举。在给定类型为 时,键应该是 + 可枚举的 或空枚举。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 提供用于从 App.config 或 Web.config 文件读取的实用工具方法。 + + + 初始化 的新实例。 + 要从中读取的配置。 + + + 从配置获取指定的提供程序服务。 + 提供程序服务类型名称或 null(如果未找到)。 + 提供程序服务的固定名称。 + + + 表示映射视图。 + + + 创建具有指定实体 SQL 的 实例。 + 一个指定实体 SQL 的字符串。 + + + 获取实体 SQL。 + + + 表示映射视图缓冲实现的抽象基类。派生类如果与 一起使用,则必须具有无参数构造函数。 + + + 初始化 类的新实例。 + + + 获取与指定范围对应的视图。 + 一个指定映射视图的 ,如果范围不与映射视图关联,则为 null。 + 一个指定范围的 。 + + + 获取通过映射结束计算出的哈希值。 + 通过映射结束计算出的哈希值。 + + + 指定用于创建具体的 实例的方法。 + + + 初始化 类的新实例。 + + + 为由已映射容器的名称指定的容器映射创建生成的视图缓存实例。 + 一个指定生成的视图缓存的 + 概念模型中容器的名称。 + 存储模型中容器的名称。 + + + 定义指定与上下文类型( 的子类)关联的映射视图缓存类型( 的子类)的自定义属性。缓存类型在运行时实例化并用于在相应上下文中检索预先生成的视图。 + + + 创建将上下文类型与映射视图缓存类型相关联的 实例。 + + 的子类。 + 缓存类型的程序集限定的全名。 + + + 创建将上下文类型与映射视图缓存类型相关联的 实例。 + + 的子类。 + + 的子类。 + + + 表示 要使用的自定义复数形式术语 + + + 创建一个新实例 + 表示单数的非 null 或空字符串。 + 表示复数的非 null 或空字符串。 + + + 获取复数。 + + + 获取单数。 + + + 要由实体框架使用的默认复数形式服务实现。此复数形式服务基于英文区域设置。 + + + 构造实体框架中使用的默认复数形式服务的新实例。 + + + 构造实体框架中使用的默认复数形式服务的新实例。 + 要由此服务使用的用户字典项的集合。这些输入信息可以根据用户需要对服务进行自定义。 + + + 返回指定单词的复数形式。 + 输入参数的复数形式。 + 要改为复数形式的单词。 + + + 返回指定单词的单数形式。 + 输入参数的单数形式。 + 要改为单数形式的单词。 + + + 要由 EF 运行时使用的复数形式服务实现此接口。默认情况下,使用 ,但是可以在从 派生的类中设置要使用的复数形式服务。 + + + 使用服务使单词变为复数形式。 + 已变为复数形式的单词 + 要变为复数形式的单词。 + + + 使用服务使单词变为单数形式。 + 已变为单数形式的单词。 + 要变为单数形式的单词。 + + + 表示基于代码的迁移的基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。 + + + 添加将列添加到现有表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列将添加到的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要添加的列的名称。 + 一个指定要添加的列的操作。例如,c =&gt; c.Int(nullable:false, defaultValue:3) + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 此外键引用的列。如果未提供任何值,则将引用主体表的主键。 + 指示是否应针对外键关系配置级联删除的值。如果未提供任何值,则将关闭级联删除。 + 数据库中的外键约束的名称。如果未提供任何值,则将生成唯一名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 此外键引用的列。如果未提供任何值,则将引用主体表的主键。 + 指示是否应针对外键关系配置级联删除的值。如果未提供任何值,则将关闭级联删除。 + 数据库中的外键约束的名称。如果未提供任何值,则将生成唯一名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 主键列。 + 数据库中的主键的名称。如果未提供任何值,则将生成唯一名称。 + 指示此键是否是聚集的主键。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于多列创建新主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 主键列。 + 数据库中的主键的名称。如果未提供任何值,则将生成唯一名称。 + 指示此键是否是聚集的主键。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加更改现有列的定义的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所在的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要更改的列的名称。 + 一个指定列的新定义的操作。例如,c =&gt; c.String(nullable:false, defaultValue:"none") + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加更改存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定存储过程参数的操作。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + 此更改存储过程操作中的参数。无需指定此类型,将根据您提供的 参数推断此类型。 + + + 添加更改存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + + + 添加一项操作以处理表中所定义的注释的更改。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定表中要包含的列的操作。例如,t =&gt; new { Id = t.Int(identity:true), Name = t.String() } + 表中已更改的自定义注释。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + 此操作中的列。无需指定此类型,将根据您提供的 columnsAction 参数推断此类型。 + + + 添加在单列上创建索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要在其上创建索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要在其上创建索引的列的名称。 + 指示此索引是否是唯一索引的值。如果未提供任何值,则将创建非唯一索引。 + 用于数据库中的索引的名称。如果未提供任何值,则将生成唯一名称。 + 指示此索引是否是聚集索引的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加在多列上创建索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要在其上创建索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要在其上创建索引的列的名称。 + 指示此索引是否是唯一索引的值。如果未提供任何值,则将创建非唯一索引。 + 用于数据库中的索引的名称。如果未提供任何值,则将生成唯一名称。 + 指示此索引是否是聚集索引的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定存储过程参数的操作。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + 此存储过程创建操作中的参数。无需指定此类型,将根据您提供的 参数推断此类型。 + + + 添加创建新存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + + + 添加创建新表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 允许进一步配置表创建操作的对象。 + 表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定表中要包含的列的操作。例如,t =&gt; new { Id = t.Int(identity:true), Name = t.String() } + 要创建的表中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + 此表中的列创建表操作。无需指定此类型,将根据您提供的 columnsAction 参数推断此类型。 + + + 添加创建新表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 允许进一步配置表创建操作的对象。 + 表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定表中要包含的列的操作。例如,t =&gt; new { Id = t.Int(identity:true), Name = t.String() } + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + 此表中的列创建表操作。无需指定此类型,将根据您提供的 columnsAction 参数推断此类型。 + + + 要在降级过程中执行的操作。 + + + 添加删除现有列的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除列的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的列的名称。 + 要删除的列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除现有列的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除列的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的列的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束名称删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 数据库中的外键约束的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束面向的列删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束面向的列删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 此外键引用的列。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束面向的列删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于索引名称删除索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的索引的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于索引面向的列删除索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 索引面向的列的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除使用默认名称创建的现有主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除没有默认名称的现有主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的主键的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加一个操作,以删除具有使用指定名称的现有存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的表的各列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 要删除的表的各列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 确定此实例是否等于指定对象。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要与当前实例进行比较的对象。 + + + 返回当前对象的哈希函数。 + 当前对象的哈希函数。 + + + 返回当前实例的运行时类型。 + 当前实例的运行时类型。 + + + 创建当前对象的浅表副本。 + 当前对象的浅表副本。 + + + 添加将存储过程移至新架构的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要将存储过程移到其中的架构。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加将表移至新架构的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 表将移至的架构。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加重命名列的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含要重命名的列的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要重命名的列的名称。 + 列的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加一项重命名索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含要重命名的索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要重命名的索引的名称。 + 索引的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加重命名存储过程的操作。若要更改存储过程的架构,请使用 MoveStoredProcedure 实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 存储过程的新名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加重命名表的操作。若要更改表的架构,请使用 MoveTable。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 表的新名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加执行 SQL 命令的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL。 + 指示是否应在用于迁移过程的事务之外执行 SQL 的值。如果未提供任何值,则将在事务内执行 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加要执行 SQL 文件的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL 文件。相对路径假定相对于当前 AppDomain 的 BaseDirectory。 + 指示是否应在用于迁移过程的事务之外执行 SQL 的值。如果未提供任何值,则将在事务内执行 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加要执行 SQL 资源文件的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL 资源文件的清单资源名称。 + 包含资源文件的程序集。如果未提供,采用调用的程序集。 + 指示是否应在用于迁移过程的事务之外执行 SQL 的值。如果未提供任何值,则将在事务内执行 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加迁移操作。 + 要添加的迁移操作。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 要在升级过程中执行的操作。 + + + 与对给定模型使用迁移相关的配置。通常将创建派生自 的配置类,而不是使用此类。 + + + 初始化 DbMigrationsConfiguration 类的新实例。 + + + 获取或设置指示是否可接受自动迁移期间的数据丢失的值。如果设置为 false,则将在数据丢失可能作为自动迁移一部分出现时引发异常。 + + + 获取或设置指示迁移数据库时是否可使用自动迁移的值。 + + + 获取或设置为迁移搭建基架时要使用的代码生成器。 + + + 获取或设置在迁移中用于单个命令的超时值。null 值指示将使用基础提供程序的默认值。 + + + 获取或设置字符串,它可用于区分属于此配置的迁移和属于其他使用同一数据库的配置的迁移。该属性使来自多个不同模型的迁移能够应用于一个数据库。 + + + 获取或设置表示要迁移的模型的派生 DbContext。 + + + 存储迁移的默认目录。 + + + 获取设置为与给定数据库提供程序结合使用的历史记录上下文工厂。 + 为数据库提供程序设置的历史记录上下文工厂。 + 要为其获取工厂的数据库提供程序的名称。 + + + 获取设置为用于给定数据库提供程序的 SQL 生成器。 + 为数据库提供程序设置的 SQL 生成器。 + 要为之获取 SQL 生成器的数据库提供程序的名称。 + + + 获取或设置包含基于代码的迁移的程序集。 + + + 获取或设置其中存储基于代码的迁移的子目录。请注意,此属性必须设置为 Visual Studio 项目根目录下子目录的相对路径;它不能设置为绝对路径。 + + + 获取或设置用于基于代码的迁移的命名空间。 + + + 添加一个新工厂,以便创建要用于给定数据库提供程序的 实例。 + 要为之设置 SQL 生成器的数据库提供程序的名称。 + 一个工厂,用于为表示默认架构的给定 创建 实例。 + + + 添加新的要同于给定数据库提供程序的 SQL 生成器。 + 要为之设置 SQL 生成器的数据库提供程序的名称。 + 要使用的 SQL 生成器。 + + + 获取或设置用于重写要迁移的数据库的连接的值。 + + + 与对给定模型使用迁移相关的配置。 + 表示此配置应用于的模型的上下文。 + + + 初始化 DbMigrationsConfiguration 类的新实例。 + + + 确定当前配置是否等于指定的对象。 + 如果当前配置等于指定的对象,则为 true;否则为 false。 + 要与当前配置进行比较的对象。 + + + 获取此实例的哈希函数。 + 此实例的哈希函数。 + + + 返回当前实例的运行时类型。 + 当前实例的运行时类型。 + + + 创建当前对象的浅表副本。 + 当前对象的浅表副本。 + + + 在升级到最新迁移以允许更新种子数据后运行。 + 要用于更新种子数据的上下文。 + + + 返回此配置的字符串表示形式。 + 此配置的字符串表示形式。 + + + DbMigrator 用于将现有迁移应用于数据库。DbMigrator 可用于升级和降级到任何给定迁移。若要基于对模型的更改为迁移搭建基架,请使用 + + + 初始化 DbMigrator 类的新实例。 + 用于迁移过程的配置。 + + + 获取要用于迁移过程的配置。 + + + 获取已应用于目标数据库的所有迁移。 + 迁移的列表。 + + + 获取已在配置的迁移程序集中定义的所有迁移。 + 迁移的列表。 + + + 获取已在程序集中定义但尚未应用于目标数据库的所有迁移。 + 迁移的列表。 + + + 表示应用任何迁移前数据库的状态的迁移 Id。 + + + 将目标数据库更新到给定迁移。 + 要升级/降级到的迁移。 + + + + 的一组扩展方法 + + + 调用 SaveChanges 时,按自定义标识表达式添加或更新实体。等效于数据库术语中的“upsert”操作。此方法在使用迁移设置数据的种子时很有用。 + 实体所属的集。 + 指定在确定是应执行添加操作还是更新操作时应使用的属性的表达式。 + 要添加或更新的实体。 + 要添加或更新的实体类型。 + + + 调用 SaveChanges 时,按键添加或更新实体。等效于数据库术语中的“upsert”操作。此方法在使用迁移设置数据的种子时很有用。 + 实体所属的集。 + 要添加或更新的实体。 + 要添加或更新的实体类型。 + + + 用于配置列的帮助器类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。 + + + 创建新的列定义以存储二进制数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 数组数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 指示是否应将此列配置为时间戳的值。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储布尔数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储字节数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 DateTime 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的精度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 DateTimeOffset 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的精度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Decimal 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的数值精度。 + 列的数值刻度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 指示插入过程中数据库是否会为此列生成值的值。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Double 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 指示指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 创建新的列定义以存储 geography 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 geometry 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 创建新的列定义以存储 GUID 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Integer 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Long 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 创建新的列定义以存储 Short 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Single 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储字符串数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 字符串数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 指示列是否支持 Unicode 内容的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Time 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的精度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 表示用于配置参数的类。 + + + 初始化 类的新实例。 + + + 创建新参数定义以传递 Binary 数据。 + 新构造的参数定义。 + 数组数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 用作此参数的默认值的常量值。 + 用作此参数的默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Boolean 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Byte 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 DateTime 数据。 + 新构造的参数定义。 + 参数的精度。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 DateTimeOffset 数据。 + 新构造的参数定义。 + 参数的精度。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Decimal 数据。 + 新构造的参数定义。 + 参数的数值精度。 + 参数的小数位数。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Double 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 创建新参数定义以传递 geography 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 geometry 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 创建新参数定义以传递 GUID 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Integer 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Long 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 创建新参数定义以传递 Short 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Single 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 String 数据。 + 新构造的参数定义。 + 字符串数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 指示参数是否支持 Unicode 内容的值。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Time 数据。 + 新构造的参数定义。 + 参数的精度。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 用于进一步配置从 上的 CreateTable 调用创建的表的帮助器类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 标识表的列的类型。 + + + 初始化 TableBuilder 类的新实例。 + 要进一步配置的表创建操作。 + 其中创建了表的迁移。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 指定要在表上创建的外键约束。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 对象自身,以便多个调用可以链接在一起。 + 该外键约束面向的表的名称。 + 表示外键属性的 lambda 表达式。C#:t =&gt; t.PropertyOne VB.Net:Function(t) t.PropertyOne 如果外键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.PropertyOne, t.PropertyTwo } VB.Net:Function(t) New With { t.PropertyOne, t.PropertyTwo } + 指示是否应在外键约束上配置级联删除的值。 + 此外键约束的名称。如果未提供名称,则将计算默认名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取当前对象的哈希代码。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 指定要在表上创建的索引。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 对象自身,以便多个调用可以链接在一起。 + 表示要编制索引的属性的 lambda 表达式。C#:t =&gt; t.PropertyOne VB.Net:Function(t) t.PropertyOne 如果要对多个属性编制索引,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.PropertyOne, t.PropertyTwo } VB.Net:Function(t) New With { t.PropertyOne, t.PropertyTwo } + 索引的名称。 + 指示此索引是否是唯一索引的值。 + 指示此索引是否是聚集索引的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 指定表的主键。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 对象自身,以便多个调用可以链接在一起。 + 表示要用作主键的属性的 lambda 表达式。C#:t =&gt; t.Id VB.Net:Function(t) t.Id 如果主键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.Id1, t.Id2 } VB.Net:Function(t) New With { t.Id1, t.Id2 } + 主键的名称。如果未提供,则将生成默认名称。 + 指示此键是否是聚集的主键。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 返回当前对象的字符串表示形式。 + 当前对象的字符串表示形式。 + + + 为基于代码的迁移生成 C# 代码。 + + + 初始化 类的新实例。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成用户可查看和编辑的主代码文件。 + 生成的代码。 + 迁移要执行的操作。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定使用 lambda 表达式的一组列名称。 + 要为之生成代码的列。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码。 + 应为其生成代码的操作。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以指定 的定义。 + 要为之生成代码的列定义。 + 生成的代码要添加到的文本编写器。 + 指示定义中是否包含列名称的值。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以指定 的定义。 + 要为之生成代码的参数定义。 + 生成的代码要添加到的文本编写器。 + 指示定义中是否包含列名称的值。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定数据类型未知的列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 使用 生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 要为之生成代码的操作。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 使用迁移元数据生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 为可能为 null 的给定注释值生成代码。默认行为是使用 (如果已注册一个),否则将对注释值调用 ToString。 + 需要代码的注释的名称。 + 要生成的注释值。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 使用相应的转义将标识符用引号引起来以允许它存储在字符串中。 + 保存的标识符。 + 要用引号引起来的标识符。 + + + 从数据库体系结构名称中删除所有无效字符。 + 已擦除的名称。 + 要擦除的名称。 + + + 获取用于给定数据类型的列的类型名称。 + 要在生成的迁移中使用的类型名称。 + 要转换的数据类型。 + + + 生成类特性。 + 生成的代码要添加到的文本编写器。 + 指示是否应为代码隐藏文件生成此类的值。 + + + 为以 WriteClassStart 开头的类生成结束代码。 + 其中应生成代码的命名空间。 + 生成的代码要添加到的文本编写器。 + + + 使用语句和类定义生成命名空间。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + 生成的代码要添加到的文本编写器。 + 生成的类的基类。 + 指示是否应为代码隐藏文件生成此类的值。 + 将为其添加 using 指令的命名空间。如果为 null,则将使用从 GetDefaultNamespaces 返回的命名空间。 + + + 生成属性以在代码隐藏文件中返回源或目标模型。 + 属性的名称。 + 要返回的值。 + 生成的代码要添加到的文本编写器。 + + + 为基于代码的迁移生成代码的提供程序的基类。 + + + 初始化 类的新实例。 + + + 获取所使用的 实例。 + + + 生成应添加到用户项目的代码。 + 生成的代码。 + 迁移的唯一标识符。 + 迁移要执行的操作。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 为生成的所有代码获取必须输出为“using”或“Imports”指令的默认命名空间。 + 命名空间名称的有序列表。 + 指示是否应为代码隐藏文件生成此类的值。 + + + 获取必须输出为可处理给定操作生成的代码的“using”或“Imports”指令的命名空间。 + 命名空间名称的有序列表。 + 将为其生成代码的操作。 + + + 为基于代码的迁移搭建基架以将挂起的模型更改应用于数据库。 + + + 初始化 MigrationScaffolder 类的新实例。 + 要用于搭建基架的配置。 + + + 获取或设置迁移生成的代码中使用的命名空间。默认情况下,此命名空间与传入构造函数的迁移配置对象上的 MigrationsNamespace 相同。对于 VB.NET 项目,此命名空间将需要更新为将项目的根命名空间考虑进去。 + + + 为基于代码的迁移搭建基架以将挂起的所有模型更改应用于数据库。 + 已搭建基架的迁移。 + 要用于已搭建基架的迁移的名称。 + + + 为基于代码的迁移搭建基架以将挂起的所有模型更改应用于数据库。 + 已搭建基架的迁移。 + 要用于已搭建基架的迁移的名称。 + 是否包括模型更改。 + + + 为与之前运行的数据库初始值设定项对应的基于代码的初始迁移搭建基架。 + 已搭建基架的迁移。 + + + 表示已搭建基架并准备写入文件的基于代码的迁移。 + + + 初始化 类的新实例。 + + + 获取或设置应存储在代码隐藏文件中的已搭建基架的迁移代码。 + + + 获取或设置此迁移应保存在其中的用户项目中的子目录。 + + + 获取或设置迁移是否已重新搭建基架。 + + + 获取或设置用于此迁移的编程语言。通常用于生成的代码的文件扩展名。 + + + 获取或设置此迁移的唯一标识符。通常用于生成的代码的文件名。 + + + 获取要添加到迁移资源文件中的字符串资源的字典。 + + + 获取或设置用户可编辑的已搭建基架的迁移代码。 + + + 设计时工具用于运行需要与正在 Visual Studio 中编辑的应用程序进行交互的迁移相关命令的帮助器类。由于应用程序处于编辑状态,因此需要在单独的 AppDomain 中加载程序集以确保始终加载的是最新版本。还将复制启动项目中的 App/Web.config 文件以确保应用所有配置。 + + + 初始化 ToolingFacade 类的新实例。 + 包含要使用的迁移配置的程序集的名称。 + 包含要使用的 DbContext 的程序集的名称。 + 要使用的迁移配置的命名空间限定名称。 + 包含已编译程序集的工作目录。 + 启动项目中的配置文件的路径。 + 启动项目中的应用程序数据目录的路径。通常,App_Data 目录用于 Web 应用程序,或者工作目录用于可执行文件。 + 与要迁移的数据库的连接。如果未提供,则将使用上下文的默认连接。 + + + 释放 类的当前实例所使用的资源。 + + + 释放由外观使用的所有资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 释放由 facade 使用的所有非托管资源。 + + + 获取派生自 的类型的完全限定名。 + 找到的上下文类型。 + 上下文类型的名称。如果为 nul,将返回在程序集中找到的单个上下文类型。 + + + 获取派生自 的所有类型的完全限定名。 + 找到的所有上下文类型。 + + + 获取已应用于数据库的所有迁移的列表。 + 已应用迁移的 ID。 + + + 获取尚未应用于数据库的所有迁移的列表。 + 挂起的迁移的 ID。 + + + 获取或设置要运行以记录信息的操作。 + + + 获取或设置要运行以记录详细信息的操作。 + + + 获取或设置要运行以记录警告的操作。 + + + 为基于代码的迁移搭建基架以应用所有挂起的模型更改。 + 已搭建基架的迁移。 + 生成的迁移的名称。 + 生成的迁移的编程语言。 + 迁移将添加到的项目的根命名空间。 + 是否包括模型更改。 + + + 为与之前运行的数据库初始值设定项对应的基于代码的初始迁移搭建基架。 + 已搭建基架的迁移。 + 生成的迁移的编程语言。 + 迁移将添加到的项目的根命名空间。 + + + 生成 SQL 脚本以在两个迁移之间进行迁移。 + 生成的 SQL 脚本。 + 要从其进行更新的迁移。如果未提供,则将生成更新当前数据库的脚本。 + 要更新到的迁移。如果未提供,则将生成更新到最新迁移的脚本。 + 指示是否可接受自动迁移期间的数据丢失的值。 + + + 将数据库更新到指定的迁移。 + 要迁移到的迁移的 ID。如果未提供,则会将数据库更新到最新迁移。 + 指示是否可接受自动迁移期间的数据丢失的值。 + + + 为基于代码的迁移生成 VB.Net 代码。 + + + 初始化 类的新实例。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成用户可查看和编辑的主代码文件。 + 生成的代码。 + 迁移要执行的操作。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定使用 lambda 表达式的一组列名称。 + 要为之生成代码的列。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码。 + 应为其生成代码的操作。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以指定 的定义。 + 要为之生成代码的列定义。 + 生成的代码要添加到的文本编写器。 + 指示定义中是否包含列名称的值。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为其生成代码的参数模型定义。 + 生成的代码要添加到的文本编写器。 + 为 true 则在定义中包含列名称;否则为 false。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定数据类型未知的列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 使用迁移元数据生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 迁移要执行的操作。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 使用迁移元数据生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 为可能为 null 的给定注释值生成代码。默认行为是使用 (如果已注册一个),否则将对注释值调用 ToString。 + 需要代码的注释的名称。 + 要生成的注释值。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以便重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以便重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 使用相应的转义将标识符用引号引起来以允许它存储在字符串中。 + 保存的标识符。 + 要用引号引起来的标识符。 + + + 从数据库体系结构名称中删除所有无效字符。 + 已擦除的名称。 + 要擦除的名称。 + + + 获取用于给定数据类型的列的类型名称。 + 要在生成的迁移中使用的类型名称。 + 要转换的数据类型。 + + + 生成类特性。 + 生成的代码要添加到的文本编写器。 + 指示是否应为代码隐藏文件生成此类的值。 + + + 为以 WriteClassStart 开头的类生成结束代码。 + 其中应生成代码的命名空间。 + 生成的代码要添加到的文本编写器。 + + + 使用语句和类定义生成命名空间。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + 生成的代码要添加到的文本编写器。 + 生成的类的基类。 + 指示是否应为代码隐藏文件生成此类的值。 + 将为其添加 Imports 指令的命名空间。如果为 null,则将使用从 GetDefaultNamespaces 返回的命名空间。 + + + 生成属性以在代码隐藏文件中返回源或目标模型。 + 属性的名称。 + 要返回的值。 + 生成的代码要添加到的文本编写器。 + + + 此类由 Code First 迁移用于读取和写入数据库中的迁移历史记录。要对迁移历史记录表进行自定义,您可以从此类派生并重写 OnModelCreating。派生的实例可以使用 基于每个迁移配置注册,或使用 全局注册。 + + + 初始化 HistoryContext 类的新实例。如果要创建派生历史记录上下文,通常将公开一个构造函数,接受这同样的这些参数,然后将它们传递给此基构造函数。 + 要用于新的上下文的现有连接。 + 要迁移的模型的默认架构。如果未在 OnModelCreating 中配置另一架构,则此架构将用于迁移历史记录表。 + + + 获取用于查找以前为此上下文生成的模型的键。这用于避免在每次创建新的上下文实例时处理 OnModelCreating 并计算模型。默认情况下,此属性返回默认架构。在多数情况下,您不需要重写此属性。但是,如果您的 OnModelCreating 实现包含导致为同一数据库提供程序和默认架构生成不同模型的条件逻辑,应重写此属性并计算相应的键。 + + + 获取要迁移的模型的默认架构。如果未在 OnModelCreating 中配置另一架构,则此架构将用于迁移历史记录表。 + + + 用于迁移历史记录表的默认名称。 + + + 获取或设置可用于读取和写入 实例的 + + + 应用迁移历史记录表的默认配置。如果重写此方法,建议在应用您的自定义配置前调用这个基实现。 + 定义要创建的上下文的模型的生成器。 + + + 此类由 Code First 迁移用于读取和写入数据库中的迁移历史记录。 + + + 初始化 类的新实例。 + + + 获取或设置一个键,该键表示行应用的上下文。 + + + 获取或设置此行表示的迁移的 ID。 + + + 获取或设置此迁移应用后模型的状态。 + + + 获取或设置创建此条目的实体框架的版本。 + + + 表示自动迁移将导致数据丢失时出现的错误。 + + + 初始化 AutomaticDataLossException 类的新实例。 + + + 初始化 AutomaticDataLossException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 表示在应用最后一个迁移后仍然存在挂起的模型更改并且禁用了自动迁移时出现的错误。 + + + 初始化 AutomaticMigrationsDisabledException 类的新实例。 + + + 初始化 AutomaticMigrationsDisabledException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 显式实现,用于防止某些成员在已搭建基架的迁移的 IntelliSense 中出现。 + + + 将自定义 添加到迁移中。鼓励自定义操作实现人员在 上创建扩展方法,为添加新操作提供 Fluent 样式的 API。 + 要添加的操作。 + + + 提供有关基于代码的迁移的其他元数据。 + + + 获取迁移的唯一标识符。 + + + 获取此迁移运行前模型的状态。 + + + 获取此迁移运行后模型的状态。 + + + 表示 Code First 迁移管道内出现的错误。 + + + 初始化 MigrationsException 类的新实例。 + + + 使用序列化数据初始化 MigrationsException 类的新实例。 + 包含有关正在发生的异常的序列化对象数据的 。 + 包含有关源或目标的上下文信息的 。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 可用于迁移过程的记录器的基类。 + + + 初始化 类的新实例。 + + + 记录信息性消息。 + 要记录的消息。 + + + 记录只应在用户请求详细输出时呈现给他们的一些其他信息。 + 要记录的消息。 + + + 记录用户应了解的警告。 + 要记录的消息。 + + + 当由于某些现有迁移尚未应用到数据库,导致无法执行操作时引发。 + + + 初始化 MigrationsPendingException 类的新实例。 + + + 初始化 MigrationsPendingException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsPendingException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 表示包装核心 的修饰器的基类。 + + + 初始化 类的新实例。 + 此修饰器将包装的迁移程序。 + + + 获取要用于迁移过程的配置。 + 要用于迁移过程的过程。 + + + 获取已应用于数据库的迁移的列表。 + 迁移 ID 的列表。 + + + 获取程序集中定义的迁移的列表。 + 迁移 ID 的列表。 + + + 获取尚未应用于数据库的挂起的迁移的列表。 + 迁移 ID 的列表。 + + + 将目标数据库更新到最新迁移。 + + + 将目标数据库更新到给定迁移。 + 要升级/降级到的迁移。 + + + 在迁移操作期间提供日志记录的修饰器。 + + + 初始化 MigratorLoggingDecorator 类的新实例。 + 此修饰器将包装的迁移程序。 + 消息将写入到的记录器。 + + + 生成 SQL 脚本而不是将更改应用于数据库的修饰器。使用此修饰器包装 将防止 将任何更改应用于目标数据库。 + + + 初始化 MigratorScriptingDecorator 类的新实例。 + 此修饰器将包装的迁移程序。 + + + 生成更新数据库的脚本。 + 生成的 SQL 脚本。 + 要从其进行更新的迁移。如果未提供,则将生成更新当前数据库的脚本。 + 要更新到的迁移。如果未提供,则将生成更新到最新迁移的脚本。 + + + 表示将添加到表中的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AddColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列应添加到的表的名称。 + 将添加的列的详细信息。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将添加的列的详细信息。 + + + 获取表示删除已添加列的操作。 + + + 获取一个值,该值指示更改是否具有破坏性。 + 如果更改具有破坏性,则为 true;否则为 false。 + + + 获取列应添加到的表的名称。 + + + 表示将添加到表中的外键约束。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AddForeignKeyOperation 类的新实例。还应填充 PrincipalTable、PrincipalColumns、DependentTable 和 DependentColumns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取或设置指示是否应在外键约束上配置级联删除的值。 + + + 获取在外键列上创建索引的操作。 + 添加索引的操作。 + + + 获取删除外键约束的操作。 + + + 获取或设置一个值,该值指示此更改是否将导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 外键约束应面向的列的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 表示向表添加主键。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AddPrimaryKeyOperation 类的新实例。还应填充 Table 和 Columns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除主键的操作。 + + + 获取或设置此键是否为聚集主键。 + + + 表示更改现有列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AlterColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所属表的名称。 + 列应更改为的内容的详细信息。 + 指示此更改是否会导致数据丢失的值。 + 还原对此列的更改的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 AlterColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所属表的名称。 + 列应更改为的内容的详细信息。 + 指示此更改是否会导致数据丢失的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取列的新定义。 + + + 获取表示还原更改的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此更改是否会导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 获取列所属表的名称。 + + + 表示更改现有存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。 + SQL 中表示的存储过程的主体。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。始终返回 + + + 表示对表中的自定义注释所做的更改。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 其中注释已更改的表的名称。 + 表中已更改的自定义注释。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表中已更改的自定义注释。 + 表中已更改的自定义注释。 + + + 获取要包括在表中的注释已更改的列。 + 要包括在其注释已更改的表中的列。 + + + 获取此操作的反向操作,以便注释将在应用此操作之前恢复原样。 + 此操作的方向操作,以便注释将在应用此操作之前恢复原样。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取其中注释已更改的表的名称。 + 其中注释已更改的表的名称。 + + + 表示有关列的信息。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 ColumnModel 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 此列的数据类型。 + + + 初始化 ColumnModel 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 此列的数据类型。 + 有关数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 获取或设置列中已更改的自定义注释。 + + + 获取与此列的数据库类型对应的 CLR 类型的默认值。 + + + 获取与此列的数据库类型对应的 CLR 类型。 + + + 获取或设置指示此列的值是否由使用标识模式的数据库生成的值。 + + + 确定此列的数据类型是否窄于另一列的。用于确定将提供的列定义更改为此定义是否会导致数据丢失。 + 如果此列的数据类型更窄,则为 True。 + 要与之比较的列。 + 正使用的数据库提供程序的详细信息。 + + + 获取或设置指示此列是否可存储 null 值的值。 + + + 获取或设置一个值,指示是否应将此属性模型配置为时间戳。 + + + 表示创建数据库索引。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 CreateIndexOperation 类的新实例。还应填充 Table 和 Columns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除此索引的操作。 + + + 获取或设置此索引是否为聚集索引。 + + + 获取或设置一个值,该值指示此更改是否将导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 获取或设置指示此索引是否是唯一索引的值。 + + + 要向数据库中添加新存储过程的迁移操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。 + SQL 中表示的存储过程的主体。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除存储过程的操作。 + + + 表示创建表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要创建的表的名称。 + 要创建的表中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要创建的表的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取要创建的表中存在的自定义注释。 + 要创建的表中存在的自定义注释。 + + + 获取要包含在新表中的列。 + 要包含在新表中的列。 + + + 获取删除表的操作。 + 删除表的操作。 + + + 获取指示此操作是否会导致数据丢失的值。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要创建的表的名称。 + 要创建的表的名称。 + + + 获取或设置新表的主键。 + 新表的主键。 + + + 表示将从表中删除的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 要删除的列中存在的自定义注释。可能为 null 或为空。 + 表示还原删除操作的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 要删除的列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 表示还原删除操作的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表示还原删除列的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要删除的列的名称。 + + + 获取要删除的列中存在的自定义注释。 + + + 获取应从中删除列的表的名称。 + + + 表示将从表中删除的外键约束。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表示还原删除外键约束的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 类的新实例。还应填充 PrincipalTable、DependentTable 和 DependentColumns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除外键列上关联的索引的操作。 + 删除索引的操作。 + + + 获取表示还原删除外键约束的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + 表示还原删除外键约束的操作。 + + + 获取一个值,该值指示更改是否具有破坏性。 + 如果更改具有破坏性,则为 true;否则为 false。 + + + 表示删除现有索引。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropIndexOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表示还原删除索引的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropIndexOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表示还原删除索引的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 表示从表中删除主键。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropPrimaryKeyOperation 类的新实例。还应填充 Table 和 Columns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 在更改迁移历史记录表时使用,以便可以重新构建表,而不是简单地删除和添加主键。 + 用于迁移历史记录表的创建表操作。 + + + 获取添加主键的操作。 + + + 从数据库中删除存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的存储过程的名称。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。始终返回 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取要删除的存储过程的名称。 + 要删除的存储过程的名称。 + + + 表示删除现有表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 要删除的表的列中存在的自定义注释。可能为 null 或为空。 + 表示还原删除表的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 要删除的表的列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 表示还原删除表的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表示还原删除表的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要删除的表的名称。 + + + 获取要删除的表中存在的自定义注释。 + + + 获取要删除的表的各列中的自定义注释。 + + + 影响外键约束的更改的基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 ForeignKeyOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 外键列的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置其中存在外键列的表的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取指示是否为此外键约束提供了特定名称的值。 + + + 获取或设置此外键约束的名称。如果未提供名称,则将计算默认名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置外键约束面向的表的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 表示对迁移历史记录表的 DML 更改的操作。迁移历史记录表用于存储已应用于数据库的迁移的日志。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 HistoryOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表示要应用于历史记录表的操作的命令目录树序列。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 表示要应用于历史记录表的操作的命令序列。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 影响索引的操作的常规基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 IndexOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 根据提供的列名创建一个默认索引名称。 + 默认索引名称。 + 用于创建默认索引名称的列名。 + + + 获取已编制索引的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取指示是否为此索引提供了特定名称的值。 + + + 获取或设置此索引的名称。如果未提供名称,则将计算默认名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置此索引所属的表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 表示修改数据库架构的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 MigrationOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取提供程序可能会处理的其他参数。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取将还原此操作的操作。 + + + 获取指示此操作是否会导致数据丢失的值。 + + + 表示将存储过程移动到数据库中的新架构。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的存储过程的名称。 + 存储过程的新架构。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取要移动的存储过程的名称。 + 要移动的存储过程的名称。 + + + 获取存储过程的新架构。 + 存储过程的新架构。 + + + 表示将表从一个架构移至另一个架构。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 MoveTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的表的名称。 + 要将表移至的架构的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 在更改迁移历史记录表时使用,以便可以将数据移到新表。 + 模型的上下文键。 + + + 在更改迁移历史记录表时使用,以便可以重新构建表,而不是简单地删除和添加主键。 + 用于迁移历史记录表的创建表操作。 + + + 获取将表移回其原始架构的操作。 + + + 获取一个值,该值指示此更改是否将导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 获取一个指示表是否为系统表的值。 + 如果表是系统表,则为 true;否则为 false。 + + + 获取要移动的表的名称。 + + + 获取要将表移至的架构的名称。 + + + 表示一项可能因不受目标数据库提供程序的支持而无法执行的迁移操作。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 表示有关参数的信息。 + + + 使用指定类型初始化 ParameterModel 类的新实例。 + 此参数的数据类型。 + + + 使用指定类型和类型用法初始化 ParameterModel 类的新实例。 + 此参数的数据类型。 + 有关数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 获取或设置一个指示此实例是否为 out 参数的值。 + 如果此实例是 out 参数,则为 true;否则为 false。 + + + 用于表示影响主键的操作的常规基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 PrimaryKeyOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 返回主键的默认名称。 + 默认主键名称。 + 目标表名。 + + + 获取组成主键的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取指示是否为此主键提供了特定名称的值。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取或设置此主键的名称。如果未提供名称,则将计算默认名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置包含主键的表的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 影响存储过程的迁移操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。 + SQL 中表示的存储过程的主体。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取 SQL 中表示的存储过程的主体。 + SQL 中表示的存储过程的主体。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取存储过程的名称。 + 存储过程的名称。 + + + 获取存储过程的参数。 + 存储过程的参数。 + + + 表示有关实体属性的信息。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 PropertyModel 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 此属性模型的数据类型。 + 有关数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 获取或设置要用作此属性模型的默认值的常量值。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置用作此属性模型的默认值的 SQL 表达式。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置一个指示此属性模型的长度是否固定的值。仅对数组数据类型有效。 + + + 获取或设置一个指示此属性模型是否支持 Unicode 字符的值。仅对文本数据类型有效。 + + + 获取或设置此属性模型的最大长度。仅对数组数据类型有效。 + + + 获取或设置属性模型的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置此属性模型的精度。仅对十进制数据类型有效。 + + + 获取或设置此属性模型的小数位数。仅对十进制数据类型有效。 + + + 获取或设置要用于此属性模型的提供程序特定数据类型。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取此属性模型的数据类型。 + + + 获取有关此属性模型的数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 表示重命名现有列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 RenameColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所属表的名称。 + 要重命名的列的名称。 + 列的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取还原重命名的操作。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要重命名的列的名称。 + + + 获取列的新名称。 + + + 获取列所属表的名称。 + + + 表示现有索引的重命名操作。 + + + 初始化 RenameIndexOperation 类的新实例。 + 索引所属表的名称。 + 要重命名的索引的名称。 + 索引的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取还原索引原来名称的操作。 + 还原索引原来名称的操作。 + + + 获取是否重命名索引对操作具有破坏性。 + 如果重命名索引对操作具有破坏性,则为 true;否则为 false。 + + + 获取要重命名的索引的名称。 + 要重命名的索引的名称。 + + + 获取索引的新名称。 + 索引的新名称。 + + + 获取索引所属表的名称。 + 索引所属表的名称。 + + + 表示重命名数据库中的一个存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的存储过程的名称。 + 存储过程的新名称。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取要重命名的存储过程的名称。 + 要重命名的存储过程的名称。 + + + 获取存储过程的新名称。 + 存储过程的新名称。 + + + 表示重命名现有表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 RenameTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的表的名称。 + 表的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取还原重命名的操作。 + + + 获取一个值,该值指示更改是否具有破坏性。 + 如果更改具有破坏性,则为 true;否则为 false。 + + + 获取要重命名的表的名称。 + + + 获取表的新名称。 + + + 表示要直接对目标数据库执行的提供程序特定 SQL 语句。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 SqlOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要执行的 SQL。 + + + 获取或设置指示是否应在用于进行迁移过程事务的事务范围外执行此语句的值。如果设置为 true,则在迁移过程失败时,不会回滚此操作。 + + + 在对更新数据库操作编写脚本以存储已对数据库执行的操作时使用。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 用于确定是否需要对数据库应用此迁移的查询。这用于生成可在任何版本中对数据库运行的幂等 SQL 脚本。 + + + 为此更新数据库操作添加迁移。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 迁移的 ID。 + 迁移所应用的各项操作。 + + + 用于确定是否需要对数据库应用此迁移的查询。这用于生成可在任何版本中对数据库运行的幂等 SQL 脚本。 + + + 获取一个值,以指示其中任何操作是否会导致数据丢失。 + + + 获取在更新数据库期间应用的迁移。 + 在更新数据库期间应用的迁移。 + + + 表示要应用于数据库的迁移。 + + + 获取迁移的 ID。 + 迁移的 ID。 + + + 获取此迁移所应用的各项操作。 + 此迁移所应用的各项操作。 + + + 将提供程序不可知的迁移操作转换为数据库提供程序特定 SQL 命令的提供程序的常规基类。 + + + 初始化 类的新实例。 + + + 使用指定 中的 Facet 为指定 生成存储类型用法。 + 特定于存储的 TypeUsage + 存储类型的名称。 + 目标属性。 + + + 将一组迁移操作转换为数据库提供程序特定 SQL。 + 为执行迁移操作而要执行的 SQL 语句的列表。 + 要转换的操作。 + 表示将面向的数据库版本的标记。 + + + 为存储过程生成 SQL 主体。 + 存储过程的 SQL 主体。 + 表示针对插入、更新或删除操作的命令的命令目录树。 + 影响了参数名称的行。 + 提供程序清单标记。 + + + 获取或设置提供程序清单。 + 提供程序清单。 + + + 表示已转换为 SQL 语句的迁移操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。 + + + 为数据库提供程序获取或设置批处理终止符。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 数据库提供程序的批处理终止符。 + + + 获取或设置为执行此迁移操作而要执行的 SQL。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置指示是否应在用于进行迁移过程事务的事务范围外执行此语句的值。如果设置为 true,则在迁移过程失败时,不会回滚此操作。 + + + 相同,但以部分信任模式运行,添加所生成缩进字符串的显式缓存,同时将仅包含 \r\n 或 \n 的字符串的写入识别为写入行,以确保在下一行正确缩进。 + + + 使用指定的文本编写器和默认 Tab 字符串,初始化 IndentedTextWriter 类的新实例。请注意,传递到此构造函数的编写器必须使用 属性指定的 + 用于输出的 。 + + + 使用指定的文本编写器和 Tab 字符串,初始化 IndentedTextWriter 类的新实例。请注意,传递到此构造函数的编写器必须使用 属性指定的 + 用于输出的 。 + 用于缩进的 Tab 字符串。 + + + 关闭正在向其写入的文档。 + + + 指定将由基础 TextWriter 使用的区域性。此静态属性为只读。请注意,传递到 的构造函数之一的任何编写器都必须使用此相同的区域性。区域性为 + + + 生成表示当前新行缩进级别的字符串。 + 一个空字符串,或者是包含所指定 Tab 字符串 .Indent 级别值的字符串。 + + + 指定默认 Tab 字符串。此字段为常数。 + + + 获取供文本编写器使用的编码。 + 指示供文本编写器使用的编码的 + + + 刷新流。 + + + 获取或设置要缩进的空格数。 + 要缩进的空格数。 + + + 获取要使用的 + 要使用的 + + + 获取或设置要使用的换行符。 + 要使用的换行符。 + + + 根据 属性为每个缩进级别输出一次 Tab 字符串。 + + + 将 Boolean 值的文本表示形式写入文本流。 + 要写入的 Boolean 值。 + + + 将字符写入文本流。 + 要写入的字符。 + + + 将字符数组写入文本流。 + 要写入的字符数组。 + + + 将字符的子数组写入文本流。 + 要从中写出数据的字符数组。 + 在缓冲区中开始索引。 + 要写入的字符数。 + + + 将 Double 的文本表示形式写入文本流。 + 要写入的 double。 + + + 将整数的文本表示形式写入文本流。 + 要写入的整数。 + + + 将 8 字节整数的文本表示形式写入文本流。 + 要写入的 8 字节整数。 + + + 将对象的文本表示形式写入文本流。 + 要写入的对象。 + + + 将 Single 的文本表示形式写入文本流。 + 要写入的 single。 + + + 将指定的字符串写入文本流。 + 要写入的字符串。 + + + 使用与指定语义相同的语义写出已格式化的字符串。 + 格式化字符串。 + 要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出已格式化的字符串。 + 要使用的格式化字符串。 + 第一个要写入已格式化字符串的对象。 + 第二个要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出已格式化的字符串。 + 要使用的格式化字符串。 + 要输出的参数数组。 + + + 写入一个行结束符。 + + + 将后跟行结束符的 Boolean 的文本表示形式写入文本流。 + 要写入的 Boolean。 + + + 将后跟行结束符的字符写入文本流。 + 要写入的字符。 + + + 将后跟行结束符的字符数组写入文本流。 + 要写入的字符数组。 + + + 将后跟行结束符的字符子数组写入文本流。 + 要从中写出数据的字符数组。 + 在缓冲区中开始索引。 + 要写入的字符数。 + + + 将后跟行结束符的 Double 的文本表示形式写入文本流。 + 要写入的 double。 + + + 将后跟行结束符的整数的文本表示形式写入文本流。 + 要写入的整数。 + + + 将后跟行结束符的 8 字节整数的文本表示形式写入文本流。 + 要写入的 8 字节整数。 + + + 将后跟行结束符的对象的文本表示形式写入文本流。 + 要写入的对象。 + + + 将后跟行结束符的 Single 的文本表示形式写入文本流。 + 要写入的 single。 + + + 将后跟行结束符的指定字符串写入文本流。 + 要写入的字符串。 + + + 使用与指定语义相同的语义写出后跟行结束符的已格式化字符串。 + 格式化字符串。 + 要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出后跟行结束符的已格式化字符串。 + 要使用的格式化字符串。 + 第一个要写入已格式化字符串的对象。 + 第二个要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出后跟行结束符的已格式化字符串。 + 要使用的格式化字符串。 + 要输出的参数数组。 + + + 将后跟行结束符的 UInt32 的文本表示形式写入文本流。 + 要输出的 UInt32。 + + + 将指定字符串写入无制表符的行。 + 要写入的字符串。 + + + 允许为模型中的复杂类型执行配置。可以通过对 使用 ComplexType 方法来获取 ComplexTypeConfiguration,也可以通过对 使用 Configurations 属性来注册从 ComplexTypeConfiguration 派生的自定义类型。 + 要配置的复杂类型。 + + + 初始化 ComplexTypeConfiguration 的一个新实例 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与指定对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 特定类型的哈希函数。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 ComplexTypeConfiguration 实例,以便多个调用可以链接在一起。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要忽略的属性的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 允许为模型中的实体类型执行配置。可以通过对 使用 Entity 方法来获取 EntityTypeConfiguration,也可以通过对 使用 Configurations 属性来注册从 EntityTypeConfiguration 派生的自定义类型。 + 要配置的实体类型。 + + + 初始化 EntityTypeConfiguration 的一个新实例 + + + 返回指定的配置模型是否等于当前配置模型。 + 如果指定的配置模型等于当前配置模型,则为 true;否则为 false。 + 要与当前对象进行比较的模型。 + + + 返回指定配置模型的哈希函数。 + 指定模型生成器的哈希函数。 + + + 获取当前模型配置的类型。 + 当前模型配置的类型。 + + + 配置要用于此实体类型的实体集名称。只能为每个集中的基类型配置实体集名称。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 实体集的名称。 + + + 配置此实体类型的主键属性。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 表示要用作主键的属性的 lambda 表达式。C#:t =&gt; t.Id VB.Net:Function(t) t.Id 如果主键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.Id1, t.Id2 } VB.Net:Function(t) New With { t.Id1, t.Id2 } + 键的类型。 + + + 从此实体类型配置一对多关系。 + 可用于进一步配置关系的配置对象。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 关系另一端的实体的类型。 + + + 从此实体类型配置可选关系。实体类型的实例将能保存到数据库,而无需指定此关系。数据库中的外键可为 null。 + 可用于进一步配置关系的配置对象。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 关系另一端的实体的类型。 + + + 通过此实体类型配置必需关系。除非指定此关系,否则实体类型的实例将无法保存到数据库。数据库中的外键不可为 null。 + 可用于进一步配置关系的配置对象。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 关系另一端的实体的类型。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要忽略的属性的类型。 + + + 允许与派生的实体类型映射到数据库架构的方式相关的高级配置。Map 调用是累加性的,后续调用不会重写已通过 Map 执行的配置。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 执行配置的操作。 + 要配置的派生实体类型。 + + + 允许与此实体类型映射到数据库架构的方式相关的高级配置。默认情况下,任何配置都还会应用于从此实体类型派生的任何类型。可以使用配置派生类型的 Map 的重载,或使用派生类型的 EntityTypeConfiguration,来配置派生类型。可以使用多个 Map 调用,在多个表之间拆分实体的属性。Map 调用是累加性的,后续调用不会重写已通过 Map 执行的配置。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 执行配置的操作。 + + + 将此类型配置为使用插入、更新和删除的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个配置实例,以便可以链接多个调用。 + + + 将此类型配置为使用插入、更新和删除的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 返回模型配置的字符串表示形式。 + 模型生成器的字符串表示形式。 + + + 配置此实体类型映射到的表名。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置此实体类型映射到的表名。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的数据库架构。 + + + 在模型创建过程中,生成无效模型时,由 引发的异常。 + + + 初始化 ModelValidationException 的一个新实例 + + + 使用序列化信息和流下文初始化 类的新实例。 + 序列化信息。 + 流上下文。 + + + 初始化 ModelValidationException 的一个新实例 + 异常消息。 + + + 初始化 ModelValidationException 的一个新实例 + 异常消息。 + 内部异常。 + + + 用于执行关系配置的基类。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 初始化 类的新实例。 + + + 允许为用于修改关系的存储过程执行配置。 + 将从中配置关系的实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 属性的类型。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 将属性配置为具有指定的最大长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。设置“null”将从属性中移除任何最大长度限制。 + + + 将属性配置为用作开放式并发标记。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。默认情况下, 属性是可选的。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为数据库中的行版本。实际数据类型将因使用的数据库提供程序而异。将属性设置为行版本会自动将属性配置为开放式并发标记。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可变长度。默认情况下, 属性为可变长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置可以支持级联删除功能的关系。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 将级联删除配置为对关系启用。 + + + 配置是否对关系启用级联删除。 + 指示是否启用级联删除的值。 + + + 允许实体和复杂类型的派生配置类向 注册。 + + + 添加到 中。只能为模型中的每个类型添加一个 + 同一个 ConfigurationRegistrar 实例,以便多个调用可以链接在一起。 + 要添加的复杂类型配置 + 要配置的复杂类型。 + + + 添加到 中。只能为模型中的每个类型添加一个 + 同一个 ConfigurationRegistrar 实例,以便多个调用可以链接在一起。 + 要添加的实体类型配置。 + 要配置的实体类型。 + + + 发现从给定的程序集中的 继承的所有类型并将每个发现的类型的实例添加到此注册器。 + 同一个 ConfigurationRegistrar 实例,以便多个调用可以链接在一起。 + 包含要添加的模型配置的程序集。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 创建一个约定,配置将用于在数据库中删除实体的存储过程。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取此实例的基础类型。 + 此实例的基础类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 创建一个约定,配置将用于在数据库中插入实体的存储过程。 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 获取当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取与配置关联的类型。 + 与配置关联的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性。 + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性的名称。 + 结果列的名称。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 表示一个配置用于在数据库修改实体的存储过程的约定。 + + + 创建一个约定,配置将用于在数据库中修改实体的存储过程。 + + + 配置用于删除实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 指定此配置是否等于特定对象。 + 如果此配置等于特定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此配置关联的哈希代码。 + 与此配置关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于插入实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 返回 类的字符串表示形式。 + + 类的字符串表示形式。 + + + 配置用于更新实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 标志实体类型或复杂类型的基元属性。 + + + 获取该属性的 + 此属性的 + + + 指定此实例是否等于另一个对象。 + 如果此实例等于另一个对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。 + + + 将属性配置为具有指定的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + 属性的最大长度。 + + + 配置存储过程中用于此属性的参数的名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 参数的名称。 + + + 配置 属性的精度。如果数据库提供程序不支持列的数据类型的精度,则忽略该值。 + 同一个 实例,以便多个调用可以链接在一起。 + 属性的精度。 + + + 配置 属性的精度和小数位数。 + 同一个 实例,以便多个调用可以链接在一起。 + 属性的精度。 + 属性的小数位数。 + + + 将属性配置为用作开放式并发标记。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将此属性配置为实体类型的主键的一部分。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为数据库中的行版本。实际数据类型将因使用的数据库提供程序而异。将属性设置为行版本会自动将属性配置为开放式并发标记。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为支持 Unicode 字符串内容。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 配置属性是否支持 Unicode 字符串内容。 + 同一个 实例,以便多个调用可以链接在一起。 + 指示属性是否支持 Unicode 字符串内容的值。 + + + 将属性配置为可变长度。属性在默认情况下为可变长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 允许自定义 实例使用的约定。可在 System.Data.Entity.ModelConfiguration.Conventions 命名空间中找到默认约定。 + + + 启用 的约定。 + 要启用的约定类型。 + + + 启用 的一个或多个约定。 + 要启用的约定。 + + + 启用 的约定。在指定一个约定后将运行此约定。 + 要启用的约定。 + 在其之后将运行启用的约定的约定类型。 + + + 启用 的配置约定。在指定一个约定前将运行此约定。 + 要启用的约定。 + 在其之前将运行启用的约定的约定类型。 + + + 发现给定程序集中的所有约定并将它们添加到 + 包含要添加的约定的程序集。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 禁用 的约定。可在 System.Data.Entity.ModelConfiguration.Conventions 命名空间中找到可移除的默认约定。 + 要禁用的约定的类型。 + + + 禁用 的一个或多个约定。 + 要禁用的约定。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 允许为模型中的实体类型执行配置。通过轻型约定可使用此配置功能。 + + + 获取此实体类型的 + 此实体类型的 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置要用于此实体类型的实体集名称。只能为每个集中的基类型配置实体集名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 实体集的名称。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性的名称。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性的名称。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 从模型中排除此实体类型,使其不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + 要配置的属性。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + 要配置的属性的名称。 + + + 将此实体类型更改为复杂类型。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将此类型配置为使用插入、更新和删除的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个配置实例,以便可以链接多个调用。 + + + 将此类型配置为使用插入、更新和删除的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 配置在此类型上定义的属性。 + 可用于配置属性的配置对象。 + 要配置的属性。 + + + 配置在此类型上定义的属性。 + 可用于配置属性的配置对象。 + 要配置的属性的名称。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的数据库架构。 + + + 允许为模型中的实体类型执行配置。通过轻型约定可使用此配置功能。 + 实体类型继承的类型。 + + + 获取此实体类型的 + 此实体类型的 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置要用于此实体类型的实体集名称。只能为每个集中的基类型配置实体集名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 实体集的名称。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 表示要用作主键的属性的 lambda 表达式。C#:t =&gt; t.Id VB.Net:Function(t) t.Id 如果主键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.Id1, t.Id2 } VB.Net:Function(t) New With { t.Id1, t.Id2 } + 键的类型。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 进行序列化的字符串或其他类型。 + + + 从模型中排除此实体类型,使其不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要忽略的属性的类型。 + + + 将此实体类型更改为复杂类型。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将此类型配置为使用插入、更新和删除的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个配置实例,以便可以链接多个调用。 + + + 将此类型配置为使用插入、更新和删除的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 配置在此类型上定义的属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的数据库架构。 + + + 创建一个约定,配置将用于在数据库中更新实体的存储过程。 + + + 确定此实例是否与指定对象相同。 + 如果此实例与指定对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 返回与当前实例关联的类型。 + 与当前实例关联的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名称的当前值。 + 参数名称的原始值。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性。 + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性的名称。 + 结果列的名称。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 配置属性的精度。如果数据库提供程序不支持列的数据类型的精度,则忽略该值。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的精度。 + + + 将属性配置为用作开放式并发标记。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。默认情况下, 属性是必需的。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 配置属性的精度和小数位数。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的精度。 + 属性的小数位数。 + + + 将属性配置为用作开放式并发标记。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。默认情况下, 属性是必需的。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 允许为用于删除实体的存储过程执行配置。 + 可使用存储过程进行删除的实体的类型。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 检索当前实例的类型。 + 当前实例的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 配置可以支持在对象模型中公开的外键属性的关系。通过 Code First Fluent API 可使用此配置功能,请参见 + 从属实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 将关系配置为使用在对象模型中公开的外键属性。如果未在对象模型中公开外键属性,则使用 Map 方法。 + 可用于进一步配置关系的配置对象。 + 表示要用作外键的属性的 lambda 表达式。如果外键由多个属性组成,请指定包括这些属性的匿名类型。在使用多个外键属性时,指定这些属性的顺序必须与为主体实体类型配置主键属性的顺序相同。 + 键的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置实体类型或实体类型中属性子集的表和列映射。通过 Code First Fluent API 可使用此配置功能,请参见 + 要映射的实体类型。 + + + 初始化 类的新实例。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 重新映射从基类型继承的所有属性。当将派生类型配置为映射到单独的表时,这会使所有属性都包含在该表中,而不仅仅是非继承的属性。这称为“每个具体类型一张表”(TPC) 映射。 + 同一个配置实例,以便可以链接多个调用。 + + + 配置将包含在此映射片段中的属性。如果未调用此方法,则将配置尚未包含在映射片段中的所有属性。 + 针对包含要映射的属性的匿名类型的 lambda 表达式。C#:t =&gt; new { t.Id, t.Property1, t.Property2 } VB.Net:Function(t) New With { p.Id, t.Property1, t.Property2 } + 包含要映射的属性的匿名类型。 + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 配置用于区分继承层次结构中各个类型的鉴别器条件。 + 用于进一步配置鉴别器条件的配置对象。 + 表示要用于鉴别各个类型的属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要用于鉴别各个类型的属性的类型。 + + + 配置用于区分继承层次结构中的各个类型的鉴别器列。 + 用于进一步配置鉴别器列和值的配置对象。 + 鉴别器列的名称。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置要映射到的表名。 + 同一个配置实例,以便可以链接多个调用。 + 表的名称。 + + + 配置要映射到的表名和架构。 + 同一个配置实例,以便可以链接多个调用。 + 表的名称。 + 表的架构。 + + + 配置未在对象模型中公开外键属性的关系的表和列映射。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的 。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 在已使用 配置的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 已使用 HasKey 方法配置的列的名称。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置外键的列名。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 外键列名。在使用多个外键属性时,必须按照为目标实体类型配置主键属性的顺序来指定这些属性。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置外键列所在表的名称。指定的表必须已针对实体类型进行映射。如果要外键位于其自己的表中,则对 使用 Map 方法来执行实体拆分,以创建只有主键属性的表。然后可以使用此方法将外键添加到表。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置外键列所在表的名称和架构。指定的表必须已针对实体类型进行映射。如果要外键位于其自己的表中,则对 使用 Map 方法来执行实体拆分,以创建只有主键属性的表。然后可以使用此方法将外键添加到表。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的架构。 + + + 配置只能支持未在对象模型中公开的外键属性的关系。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象比较的对象 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 将关系配置为使用未在对象模型中公开的外键属性。可通过指定配置操作来自定义列和表。如果指定了空的配置操作,则约定将生成列名。如果在对象模型中公开了外键属性,则使用 HasForeignKey 方法。并非所有关系都支持在对象模型中公开外键属性。 + 可用于进一步配置关系的配置对象。 + 配置外键列和表的操作。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 表示允许为用于插入实体的存储过程执行配置。 + 可使用存储过程进行插入的实体的类型。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取此实例的类型。 + 此实例的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 用于为实体类型或复杂类型配置具有长度方面的列。此配置功能由 Code First Fluent API 公开,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 将列配置为具有指定的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + 列的最大长度。将值设置为 null 将从列中移除任何最大长度限制,并且会将默认长度用于数据库列。 + + + 将列配置为固定长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将列配置为允许使用数据库提供程序支持的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将列配置为可变长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 用于为实体类型或复杂类型配置具有长度方面的属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 将属性配置为具有指定的最大长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。设置为“null”将从属性中移除任何最大长度限制,并且会将默认长度用于数据库列。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可变长度。属性在默认情况下为可变长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 通过实体类型配置多关系。 + 关系源自的实体类型。 + 作为关系目标的实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 将关系配置为 many:many,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 many:many,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 many:optional,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 many:optional,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 many:required,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 many:required,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置 many:many 关系的表和列映射。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 在联接表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置左外键的列名。左外键指向在 HasMany 调用中指定的导航属性的父实体。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 外键列名。在使用多个外键属性时,必须按照为目标实体类型配置主键属性的顺序来指定这些属性。 + + + 配置右外键的列名。右外键指向在 WithMany 调用中指定的导航属性的父实体。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 外键列名。在使用多个外键属性时,必须按照为目标实体类型配置主键属性的顺序来指定这些属性。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置关系的联接表名。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置关系的联接表名和架构。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的架构。 + + + 允许为用于修改多对多关系的存储过程执行配置。 + 将从中配置关系的实体的类型。 + 关系另一端的目标实体的类型。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 检索此当前实例的类型。 + 此当前实例的类型。 + + + 设置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 过程的名称。 + + + 设置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 过程的名称。 + 架构的名称。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 允许为用于修改多对多关系的存储过程执行配置。 + 将从中配置关系的实体的类型。 + 关系另一端的目标实体的类型。 + + + 配置用于删除关系的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于插入关系的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 配置 many:many 关系。通过 Code First Fluent API 可使用此配置功能,请参见 + 在 HasMany 调用中指定的导航属性的父实体类型。 + 在 WithMany 调用中指定的导航属性的父实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于存储关系的外键列和表。 + 同一个 实例,以便多个调用可以链接在一起。 + 配置外键列和表的操作。 + + + 配置将用于修改此关系的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 配置将用于修改此关系的存储过程。 + 同一个 实例,以便多个调用可以链接在一起。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 执行用于在数据库中修改实体的存储过程的配置。 + + + 允许为用于修改实体的存储过程执行配置。 + 可使用存储过程进行修改的实体的类型。 + + + 配置用于删除实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 指定此实例是否等同于指定对象。 + 如果此实例等同于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于插入实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 配置用于更新实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 配置一个条件,该条件用于基于赋给属性的值来区分继承层次结构中的各个类型。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 将条件配置为属性中需要值。对于未向存储此属性的列赋值的行,假定这些行属于此实体类型的基类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 通过实体类型配置可选关系。 + 关系源自的实体类型。 + 作为关系目标的实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 将关系配置为 optional:many,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:many,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 optional:optional,且在关系的另一端无导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:optional,且在关系的另一端有导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 optional:optional,且在关系的另一端无导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:optional,且在关系的另一端有导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。 + + + 将关系配置为 optional:required,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:required,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 通过实体类型配置基元列。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于存储属性的基元列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的基元列的数据类型。 + 同一个 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 将基元列配置为可选列。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将基元列配置为必需列。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 提供用于配置实体类型或复杂类型的基元属性的方法。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定此实例是否与指定对象相同。 + 如果此实例与指定对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 配置存储过程中用于此属性的参数的名称。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 参数名。 + + + 将属性配置为用作开放式并发标记。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 允许基于模型中的属性为轻型约定执行配置。 + + + 允许此约定应用到的属性的配置。 + 执行配置的操作。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在配置期间捕获以后要使用的值时基于谓词筛选此约定应用到的属性。 + 一个 实例,以便多个调用可以链接在一起。 + 用于为每个属性捕获值的函数。如果值为 null,则筛选掉该属性。 + 捕获的值的类型。 + + + 返回表示当前对象的字符串。 + 当前对象。 + + + 基于谓词筛选此约定应用到的属性。 + 一个 实例,以便多个调用可以链接在一起。 + 用于测试每个属性是否满足条件的函数。 + + + 允许基于模型中实体类型的属性和捕获的值为轻型约定执行配置。 + 捕获的值的类型。 + + + 允许此约定应用到的属性的配置。 + 使用捕获的值对 执行配置的操作。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 用于配置映射片段中的属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 PropertyMappingConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储映射片段中的属性的数据库列的名称。 + 同一个 PropertyMappingConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 通过实体类型配置必需关系。 + 关系源自的实体类型。 + 作为关系目标的实体类型。 + + + 指定指定的对象是否与当前对象相同。 + 如果指定的对象与当前对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与当前对象关联的哈希代码。 + 与当前对象关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回当前对象的字符串表示形式。 + 当前对象的字符串表示形式。 + + + 将关系配置为 required:many,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:many,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 required:optional,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:optional,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 required:required,且在关系的另一端无导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:required,且在关系的另一端有导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 required:required,且在关系的另一端无导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:required,且在关系的另一端有导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置用于存储字符串值的数据库列。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 配置数据库列的顺序。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置数据库列的数据类型。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 将属性配置为具有指定的最大长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。如果设置为“null”,将对此列使用默认长度。 + + + 将列配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为允许使用数据库提供程序支持的最大长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为可选列。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为必需。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为支持 Unicode 字符串内容。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置列是否支持 Unicode 字符串内容。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 指示列是否支持 Unicode 字符串内容的值。指定“null”将从列中移除 Unicode 方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将列配置为可变长度。列在默认情况下为可变长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 进行序列化的字符串或其他类型。 + + + 配置用于存储属性的数据库列的名称。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 将属性配置为具有指定的最大长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。设置为“null”将从属性中移除任何最大长度限制,并且会将默认长度用于数据库列。 + + + 将属性配置为用作开放式并发标记。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。默认情况下, 属性是可选的。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为支持 Unicode 字符串内容。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否支持 Unicode 字符串内容。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否支持 Unicode 字符串内容的值。指定“null”将从属性中移除 Unicode 方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可变长度。默认情况下, 属性为可变长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 允许为模型中的类型执行配置。 + 要配置的类型。 + + + 初始化 类的新实例。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 允许基于模型中的实体类型为轻型约定执行配置。 + + + 允许此约定应用到的实体类型的配置。 + 执行配置的操作。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在配置期间捕获以后要使用的值时基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于为每个实体类型捕获值的函数。如果值为 null,则筛选掉该实体类型。 + 捕获的值的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于测试每个实体类型是否满足条件的函数。 + + + 允许基于模型中从通用指定类型继承的实体类型为轻型约定执行配置。 + 此约定应用到的实体类型的通用类型。 + + + 允许此约定应用到的实体类型的配置。 + 执行配置的操作。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在配置期间捕获以后要使用的值时基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于为每个实体类型捕获值的函数。如果值为 null,则筛选掉该实体类型。 + 捕获的值的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于测试每个实体类型是否满足条件的函数。 + + + 允许基于模型中的实体类型和捕获的值为轻型约定执行配置。 + 捕获的值的类型。 + + + 允许此约定应用到的实体类型的配置。 + 使用捕获的值对 执行配置的操作。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 将当前实例的值转换为其等效字符串表示。 + 当前实例的字符串表示形式。 + + + 允许基于模型中从通用指定类型继承的实体类型和捕获的值为轻型约定执行配置。 + 此约定应用到的实体类型的通用类型。 + 捕获的值的类型。 + + + 允许此约定应用到的实体类型的配置。 + 使用捕获的值对 执行配置的操作。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 允许为用于更新实体的存储过程执行配置。 + 可使用存储过程进行更新的实体的类型。 + + + 确定指定对象是否等于此实例对象。 + 如果指定对象等于此实例对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索哈希代码。 + 哈希代码。 + + + 检索此配置的类型。 + 此配置的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 配置用于区分继承层次结构中各个类型的鉴别器列。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于标识通过继承层次结构中其他类型配置的实体类型的鉴别器值。 + 用来配置用于存储鉴别器值的列的配置对象。 + 用于标识实体类型的值。 + 鉴别器值的类型。 + + + 配置用于标识通过继承层次结构中其他类型配置的实体类型的鉴别器值。 + 用来配置用于存储鉴别器值的列的配置对象。 + 用于标识实体类型的值。 + + + 配置用于标识通过继承层次结构中其他类型配置的实体类型的鉴别器值。 + 用来配置用于存储鉴别器值的列的配置对象。 + 用于标识实体类型的值。 + 鉴别器值的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 提供用于在相关类型之间只存在一对导航属性时,将导航属性检测为相互反向的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 从 .NET 属性 (Property) 读取属性 (Attribute) 并根据这些属性 (Attribute) 生成列注释的 Code First 约定的通用类。 + 要发现的属性类型。 + 将创建的注释类型。 + + + 构造一个将创建具有给定名称且使用给定工厂委托的列注释的约定。 + 要创建的注释的名称。 + 用于在各列中创建注释的工厂。 + + + 从 .NET 类型读取属性并根据这些属性生成表注释的 Code First 约定的通用类。 + 要发现的属性类型。 + 将创建的注释类型。 + + + 构造一个将创建具有给定名称且使用给定工厂委托的表注释的约定。 + 要创建的注释的名称。 + 用于在各表中创建注释的工厂。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到指定配置。 + 配置。 + 列属性。 + + + 表示通过 API 应用指定的列排序的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 验证为列提供的排序配置。此基实现是一个空操作。 + 列所属表的名称。 + 表的定义。 + + + 用于应用通过 API 指定的列顺序的约定。如果检测重复配置的列顺序,则此约定引发。 + + + 初始化 类的新实例。 + + + 验证为列提供的排序配置,以确保没有为两个列提供相同的序号。 + 列所属表的名称。 + 表的定义。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 应用具有给定配置和特性的约定。 + 配置。 + 属性。 + + + 表示用于在类型没有主键、没有映射的基类型且没有导航属性的情况下将其配置为复杂类型的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 表示处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 不重写配置的约定。 + + + 派生的类可以使用默认构造函数应用更改模型配置的一组规则。 + + + 开始配置适用于模型中所有属性的轻型约定。 + 约定的配置对象。 + + + 开始配置适用于模型中指定类型的所有基元属性的轻型约定。 + 约定的配置对象。 + 此约定将适用于的属性类型。 + + + 开始配置应用于从指定类型派生或实现指定类型的模型中的所有映射类型的轻型约定。 + 约定的配置对象。 + 此约定将适用于的实体类型。 + + + 开始配置应用于模型中所有映射类型的轻型约定。 + 约定的配置对象。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有给定配置的属性。 + 配置。 + 属性。 + + + 用于为小数属性将精度设置为 18 并将小数位数设置为 2 的约定。 + + + 使用默认值初始化 的新实例。 + + + 使用指定的精度和小数位数初始化 类的新实例。 + Precision + Scale + + + 将此约定应用于属性。 + 项。 + 模型。 + + + 表示用于移动主键属性使其首先出现的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 表示用于基于外键属性的 CLR 可为 null 性区分可选和必需关系的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 表示发现外键属性的约定的基类。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 项。 + 模型。 + + + 如果 应为外键的一部分,则当被重写时,返回 true。 + 如果 dependentProperty 应为外键的一部分,则为 true;否则为 false。 + 所配置的关联类型。 + 依赖端。 + 依赖端的候选属性。 + 主体端实体类型。 + 主体端的键属性,该键属性是外键的候选目标。 + + + 获取约定是否支持具有其间定义的多个关联的实体类型对。 + 如果约定支持具有其间定义的多个关联的实体类型对,则为 true;否则为 false。 + + + 表示为外键引入索引的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 项。 + + + 表示用于处理模型中导航属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 数据库模型。 + + + 表示用于处理在模型中的外键属性上发现的 的实例的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到指定属性。 + 属性信息。 + 要为模型中实体类型执行的配置。 + 从数据库映射中排除的属性或类。 + + + 在创建模型后对模型的概念性部分执行操作的约定。 + 此约定操作的元数据项的类型。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 标识可以添加到 实例或从该实例中移除的约定。 + + + 用于检测主键属性的约定。按优先级顺序的可识别的命名模式为:1. ''Id' 2。[type name]Id。主键检测不区分大小写。 + + + 初始化 类的新实例。 + + + 要匹配 类的约定。 + 要匹配的 类。 + 实体类型。 + 基元属性的集合。 + + + 用于发现属性 (Property) 上的 属性 (Attribute),以及在模型中生成 列注释的约定。 + + + 构造此约定的新实例。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有配置的指定模型。 + 成员信息。 + 配置。 + 属性。 + + + 在创建模型后对模型的数据库部分执行操作的约定。 + 此约定操作的元数据项的类型。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 用于处理在模型中属性上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 表示发现主键属性的约定的基类。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 如果被重写,则返回将成为主键一部分的属性子集。 + 应成为主键一部分的属性。 + 实体类型。 + 实体的基元类型。 + + + 用于将级联删除从多对多关系中涉及的两个表添加到联接表的约定。 + + + 初始化 类的新实例。 + + + 确保在映射继承的属性时不创建无效/不支持的映射的约定 + + + 初始化 类的新实例。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有指定配置的属性。 + 配置。 + 属性。 + + + 用于发现名称是从属导航属性名称和主体类型主键属性名称组合的外键属性的约定。 + + + 初始化 类的新实例。 + + + 匹配依赖的实体模型的键。 + 返回 + 关联类型元数据对象。 + 依赖的关联的端。 + 依赖的属性。 + 主体实体类型 + 主体键属性。 + + + 获取或设置一个值,该值指示约定是否支持多个关联。 + 如果约定支持多个关联,则为 true;否则为 false。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到指定属性。 + 属性信息。 + 要为模型中实体类型执行的配置。 + 从数据库映射中排除的属性或类。 + + + 表示用于处理在模型中类型上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到指定属性。 + 要为模型中实体类型执行的配置。 + 从数据库映射中排除的属性或类。 + + + 提供用于为任何必需关系启用级联删除的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 数据库模型。 + + + 提供用于将从属实体类型的主键配置为一对一关系中外键的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 数据库模型。 + + + 表示用于将实体集名称设置为实体类型名称的复数版本的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 实体集。 + 数据库模型 + + + 表示用于将表名称设置为实体类型名称的复数版本的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 用于发现名称与主体类型主键属性名称匹配的外键属性的约定。 + + + 初始化 类的新实例。 + + + 匹配与约定关联的依赖键属性。 + 匹配的依赖键属性。 + 关联类型。 + 依赖的关联端。 + 依赖的属性。 + 主体实体类型。 + 主体键属性。 + + + 用于处理在模型的基元属性 (Property) 中找到的 CLR 属性 (Attribute) 的约定的基类。 + 要查找的特性的类型。 + + + 初始化 类的新实例。 + + + 对已应用 TAttribute 类型的属性 (Attribute) 的属性 (Property) 应用此约定。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 用于处理在模型的类型属性 (Property) 中找到的 CLR 属性 (Attribute) 的约定的基类。 + 要查找的特性的类型。 + + + 初始化 类的新实例。 + + + 对已应用 TAttribute 类型的属性 (Attribute) 的属性 (Property) 应用此约定。 + 具有该属性 (Attribute) 的属性 (Property) 的成员信息。 + 包含该属性的类的配置。 + 属性。 + + + 表示用于为其类型支持长度方面的属性设置最大长度的约定。默认值为 128。 + + + 使用默认长度初始化 类的新实例。 + + + 使用指定长度初始化 的新实例。 + 属性的最大长度。 + + + 应用具有给定模型配置的约定。 + 项。 + 映射模型。 + + + 应用具有给定模型配置的约定。 + 项。 + 映射模型。 + + + 应用具有给定模型配置的约定。 + 项。 + 映射模型。 + + + 用于处理在模型中导航属性上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 表示用于处理模型中基元属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有给定配置的属性。 + 配置。 + 属性。 + + + 表示为其类型在 SqlCe 为提供程序时支持长度方面的属性设置默认最大长度为 4000 的约定。 + + + 使用默认长度初始化 类的新实例。 + + + 初始化 的新实例。 + 属性的默认最大长度。 + + + 将此约定应用到给定的提供程序。 + 项。 + 模型。 + + + 将此约定应用到给定的提供程序。 + 项。 + 模型。 + + + 表示用于将整数主键配置为标识的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 应用具有给定配置和特性的约定。 + 配置。 + 属性。 + + + 表示用于处理在模型中类型上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 用于处理在模型中找到的 CLR 特性的约定的基类。 + 要查找的特性的类型。 + + + 初始化 类的新实例。 + + + 将此约定应用于已应用 TAttribute 类型的属性的类。 + 包含该属性的类的配置。 + 属性。 + + + 用于发现名称是主体类型名称和主体类型主键属性名称组合的外键属性的约定。 + + + 初始化 类的新实例。 + + + 确定依赖键的属性是否与当前键匹配。 + 如果依赖键的属性与当前键匹配,则为 true;否则为 false。 + 关联类型。 + 端上依赖的关联。 + 依赖的属性。 + 主体实体类型。 + 主体键属性。 + + + 表示大地(圆地球)坐标系中的数据。 + + + 获取指示此 DbGeography 值面积的可为 null 的双精度值,如果此值不表示面,则可能为 null。 + 指示此 DbGeography 值的面积、可以为 null 的双精度值。 + + + 生成此 DbGeography 值的已知二进制表示形式。 + 此 DbGeography 值的已知二进制表示形式。 + + + 生成此 DbGeography 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeography 值的 GML 表示形式的字符串。 + + + 生成此 DbGeography 值的已知文本表示形式。仅包含点的经度和纬度。 + 包含此 DbGeography 值的已知文本表示形式的字符串。 + + + 返回一个表示点并集的地理对象,该并集中所有点与地理实例的距离都小于或等于指定的值。 + 一个地理对象,表示所有点的并集 + 距离。 + + + 获取与坐标系关联的标识符。 + 与坐标系关联的标识符。 + + + 获取地理值 (WGS 84) 的默认坐标系 ID (SRID) + 地理值 (WGS 84) 的默认坐标系 ID (SRID) + + + 计算此 DbGeography 值和另一 DbGeography 值的差异。 + 一个新 DbGeography 值,表示此地理值与其他地理值之间的差异。 + 应计算它与此值的差异的地理值。 + + + 获取给定 值的维度(如果值为集合)或最大的元素维度。 + 给定 值的维度。 + + + 确定此 DbGeography 在空间上是否与指定的 DbGeography 参数不相交。 + 如果其他地理值不与此地理值相交,则为 true;否则为 false。 + 应与此地理值比较不相交性的地理值。 + + + 计算此 DbGeography 值和另一 DbGeography 值中两个最接近的点之间的距离。 + 一个双精度值,指定此地理值和其他地理值中,最接近两点之间的距离。 + 应计算与此值的距离的地理值。 + + + 如果表示地理集合,则从特定位置返回此 DbGeography 值的元素。&amp;lt;param name="index"&amp;gt;此地理值中,应采用该处元素的位置。&amp;lt;/param&amp;gt;&amp;lt;returns&amp;gt;如果此地理值表示其他地理值的集合,则为它当中指定位置处的元素;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值在特定位置处的元素 + 索引。 + + + 如果此 DbGeography 值表示地理集合,则获取它当中的元素个数。&amp;lt;returns&amp;gt;如果此地理值表示其他地理值的集合,则为它当中的元素个数;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值中的元素数目。 + + + 如果此 DbGeography 值表示点,则获取它的海拔(Z 坐标)值。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的海拔(Z 坐标)值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的海拔(Z 坐标)。 + + + 获取表示此值起始点的 DbGeography 值,如果 DbGeography 值不表示曲线,此值可能是 null。 + 表示此值起点的 DbGeography 值。 + + + 基于指定的已知二进制值创建新的 值。 + 使用默认的地理坐标系标识符 (SRID) ()、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 使用默认的地理坐标系标识符 (SRID) ()、由 GML 值定义的新 DbGeography 值。 + 包含地理值的地理标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由 GML 值定义的新 DbGeography 值。 + 包含地理值的地理标记语言 (GML) 表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值创建新的 值。 + 使用默认的地理坐标系标识符 (SRID) ()、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 计算此 DbGeography 值和另一 DbGeography 值的交集。 + 一个新 DbGeography 值,表示此地理值与其他地理值之间的交集。 + 应计算与此值的交集的地理值。 + + + 确定此 DbGeography 值在空间上是否和指定的 DbGeography 参数相交。 + 如果其他地理值与此地理值相交,则为 true;否则为 false。 + 应与此地理值比较相交性的地理值。 + + + 获取指示此 DbGeography 值是否为闭合的可为 null 的布尔值,如果此值不表示曲线,则可能为 null。 + 如果此 DbGeography 值为闭合值,则为 true;否则为 false。 + + + 获取一个可为 null 的布尔值,它指示此 DbGeography 值是否为空。 + 如果此 DbGeography 值为空,则为 true;否则为 false。 + + + 如果此 DbGeography 值表示点,则获取它的纬度坐标。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的纬度坐标值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的纬度坐标。 + + + 获取指示此 DbGeography 值长度的可为 null 的双精度值,如果此值不表示曲线,则可能为 null。 + 指示此 DbGeography 值的长度、可以为 null 的双精度值。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 如果此 DbGeography 值表示点,则获取它的经度坐标。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的经度坐标值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的经度坐标。 + + + 如果此 DbGeography 值表示点,则获取它的 M(度量值)坐标。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的 M(度量值)坐标值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的 M(度量值)坐标。 + + + 返回二进制值中的多线值。 + 二进制值中的多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多线值。 + 已知文本值中的多线值。 + 已知的文本。 + 坐标系标识符。 + + + 返回已知二进制值中的多点值。 + 已知二进制值中的多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多点值。 + 已知文本值中的多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 返回已知二进制值的多多边形值。 + 已知二进制值中的多多边形值。 + 多多边形已知二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多多边形值。 + 已知文本值中的多多边形值。 + 多多边形已知文本值。 + 坐标系标识符。 + + + 如果表示行字符串或线性环,则从特定位置返回此 DbGeography 值的元素。&amp;lt;param name="index"&amp;gt;此地理值中,应采用该处元素的位置。&amp;lt;/param&amp;gt;&amp;lt;returns&amp;gt;如果此地理值表示行字符串或线性环,则为它当中指定位置处的元素;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值在特定位置处的元素 + 索引。 + + + 如果表示行字符串或线性环,则获取此 DbGeography 值中的点数。&amp;lt;returns&amp;gt;如果此地理值表示行字符串或线性环,则为它当中的元素个数;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值中的点数。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 获取将用于此空间类型的操作的空间提供程序。 + + + 获取此 DbGeography 值的表示形式,它对于构造它的基础提供程序是特定的。 + 此 DbGeography 值的表示形式。 + + + 确定此 DbGeography 在空间上是否与指定的 DbGeography 参数相等。 + 如果其他地理值在空间上与此地理值相等,则为 true ;否则为 false。 + 应与此地理值比较相等性的地理值。 + + + 获取 DBGeography 的空间类型名称。 + DBGeography 的空间类型名称。 + + + 获取表示此值起始点的 DbGeography 值,如果 DbGeography 值不表示曲线,此值可能是 null。 + 表示此值起点的 DbGeography 值。 + + + 计算此 DbGeography 值和另一 DbGeography 值的对称差异。 + 一个新 DbGeography 值,表示此地理值与其他地理值的对称差异。 + 应计算与此值的对称差异的地理值。 + + + 返回地理值的字符串表示形式。 + 地理值的字符串表示形式。 + + + 计算此 DbGeography 值和另一 DbGeography 值的并集。 + 一个新 DbGeography 值,表示此地理值与其他地理值之间的并集。 + 应计算与此值的并集的地理值。 + + + 获取或设置此 DbGeography 值的数据协定的可序列化已知表示形式。 + 此 DbGeography 值的数据协定的可序列化的已知表示形式。 + + + + 值的数据协定的可序列化表示形式。 + + + 初始化 类的新实例。 + + + 获取或设置此值的坐标系标识符 (SRID)。 + + + 获取或设置此值的已知二进制表示形式。 + + + 获取或设置此值的已知文本表示形式。 + + + 表示几何形状。 + + + 获取指示此 DbGeometry 值面积的可为 null 的双精度值,如果此值不表示面,则可能为 null。 + 一个可以为 null 的双精度值,指示此 DbGeometry 值的面积。 + + + 生成此 DbGeometry 值的已知二进制表示形式。 + 此 DbGeometry 值的已知二进制表示形式。 + + + 生成此 DbGeometry 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeometry 值的 GML 表示形式的字符串。 + + + 生成此 DbGeometry 值的已知文本表示形式。仅包含点的 X 和 Y 坐标。 + 包含此 DbGeometry 值的已知文本表示形式的字符串。 + + + 获取 DbGeometry 对象的边界。 + DbGeometry 对象的边界。 + + + 返回一个表示所有点并集的几何对象,该并集中所有点与几何实例的距离都小于或等于指定的值。 + 一个几何对象,表示所有点的并集。 + 距离。 + + + 获取表示此 DbGeometry 值的形心的 DbGeometry 值,如果此值不表示面,则可能为 null。 + 一个 DbGeometry 值,表示此 DbGeometry 值的形心。 + + + 确定此 DbGeography 值在空间上是否包含指定的 DbGeography 参数。 + 如果此几何值包含其他几何值,则为 true;否则为 false。 + 应与此几何值比较包含关系的几何值。 + + 为 null。 + + + 获取此 DbGeometry 值的凸包作为另一 DbGeometry 值。 + 用作另一 DbGeometry 值的此 DbGeometry 值的凸包。 + + + 获取此 DbGeometry 对象的坐标系统标识符。 + 此 DbGeometry 对象的坐标系统标识符。 + + + 确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数相交。 + 如果其他几何值与此几何值相交,则为 true;否则为 false。 + 应与此几何值比较的几何值。 + + 为 null。 + + + 获取几何值的默认坐标系统 ID (SRID)。 + 几何值的默认坐标系统 ID (SRID)。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的差异。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的差异。 + 应计算与此值的差异的几何值。 + + 为 null。 + + + 获取给定 值的维度(如果该值为一个集合)或其中最大元素的维度。 + 给定 值的维度。 + + + 确定此 DbGeometry 在空间上是否与指定的 DbGeometry 参数不相交。 + 如果其他几何值与此几何值不相交,则为 true;否则为 false。 + 应与此几何值比较不相交性的几何值。 + + 为 null。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值中两个最接近的点之间的距离。 + 一个双精度值,指定此几何值和其他几何值中最接近的两点之间的距离。 + 应计算与此值的距离的几何值。 + + 为 null。 + + + 如果表示几何集合,则从特定位置返回此 DbGeometry 值的元素。 + 如果此几何值表示其他几何值的集合,则为其在指定位置的元素;否则为 null。 + 在此几何值中应提取元素的位置。 + + + 如果表示几何集合,则获取此 DbGeometry 值中的元素数。 + 如果此几何值表示其他几何值的集合,则为它当中的元素个数;否则为 null。 + + + 如果此 DbGeometry 值表示点,则获取它的海拔(Z 坐标)值。 + 如果此 DbGeometry 表示一个点,则为它的海拔(Z 坐标);否则为 null。 + + + 获取表示此值起始点的 DbGeometry 值,如果 DbGeometry 值不表示曲线,此值可能为 null。 + 表示此值起点的 DbGeometry 值。 + + + 获取此 DbGeometry 值的包络线(最小边界框)作为几何值。 + 此 DbGeometry 值的包络线(最小边界框)。 + + + 获取表示此 DbGeometry 值的外部环的 DbGeometry 值,如果此值不表示多边形,则可能为 null。 + 一个 DbGeometry 值,表示此 DbGeometry 值的外部环。 + + + 基于指定的已知二进制值创建新的 值。 + 使用默认的几何坐标系标识符 ()、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + + 为 null。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 使用默认的几何坐标系标识符 (SRID) ()、由 GML 值定义的新 DbGeometry 值。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + + 为 null。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由 GML 值定义的新 DbGeometry 值。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值创建新的 值。 + 使用默认的几何坐标系标识符 (SRID) ()、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + + 为 null。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 如果表示多边形,则从此 DbGeometry 值返回位于特定位置的内部环。 + 如果此几何值表示多边形,则为其在指定位置的内部环;否则为 null。 + 在此几何值中应提取内部环的位置。 + + + 如果表示多边形,则获取此 DbGeometry 值中的内部环数。 + 如果此几何值表示多边形,则为它当中的元素个数;否则为 null。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的交集。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的交集。 + 应计算与此值的交集的几何值。 + + 为 null。 + + + 确定此 DbGeometry 在空间上是否与指定的 DbGeometry 参数相交。 + 如果其他几何值与此几何值相交,则为 true;否则为 false。 + 应与此几何值比较相交性的几何值。 + + 为 null。 + + + 获取指示此 DbGeometry 值是否为闭合的可为 null 的布尔值,如果此值不表示曲线,则可能为 null。 + 如果此 DbGeometry 值为闭合值,则为 true;否则为 false。 + + + 获取一个可以为 null 的布尔值,该值指示此 DbGeometry 值是否为空;如果此值不表示曲线,则可能为 null。 + 如果此 DbGeometry 值为空,则为 true;否则为 false。 + + + 获取指示此 DbGeometry 值是否为环的可为 null 的布尔值,如果此值不表示曲线,则可能为 null。 + 如果此 DbGeometry 值是一个环,则为 true;否则为 false。 + + + 获取一个可以为 null 的布尔值,该值指示此 DbGeometry 值是否为简单值。 + 如果此 DbGeometry 值简单,则为 true;否则为 false。 + + + 获取一个可以为 null 的布尔值,该值指示此 DbGeometry 值是否有效。 + 如果此 DbGeometry 值有效,则为 true;否则为 false。 + + + 获取指示此 DbGeometry 值长度的可为 null 的双精度值,如果此值不表示曲线,则可能为 null。 + 此 DbGeometry 值的长度。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 如果此 DbGeometry 值表示点,则获取它的度量值(M 坐标)。 + 如果此几何值表示一个点,则为它的度量值(M 坐标);否则为 null。 + + + 返回二进制值中的多线值。 + 二进制值中的多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多线值。 + 已知文本值中的多线值。 + 已知的文本。 + 坐标系标识符。 + + + 返回已知二进制值中的多点值。 + 已知二进制值中的多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多点值。 + 已知文本值中的多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 返回已知二进制值的多多边形值。 + 已知文本值中的多点值。 + 多多边形已知文本值。 + 坐标系标识符。 + + + 返回已知二进制值的多多边形值。 + 已知二进制值中的多多边形值。 + 多多边形已知文本值。 + 坐标系标识符。 + + + 确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数重叠。 + 如果此几何值与其他几何值重叠,则为 true;否则为 false。 + 应与此几何值比较重叠的几何值。 + + 为 null。 + + + 如果此 DbGeometry 值表示行字符串或线性环,则返回它特定位置处的元素。 + 如果此几何值表示行字符串或线性环,则为其在指定位置的元素;否则为 null。 + 在此几何值中应提取元素的位置。 + + + 如果此 DbGeometry 值表示行字符串或线性环,则获取它当中的点数。 + 如果此几何值表示行字符串或线性环,则为它的元素数。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 获取此 DbGeometry 值面上的点,如果此值不表示面,则可能为 null。 + 此 DbGeometry 值面上的点。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 获取将用于此空间类型的操作的空间提供程序。 + 将用于此空间类型的操作的空间提供程序。 + + + 获取此 DbGeometry 值的表示形式,它对于构造它的基础提供程序是特定的。 + 此 DbGeometry 值的表示形式。 + + + 根据给定的维度扩展的 9 交集模型 (DE-9IM) 交集模式来确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数相关。 + 如果根据指定的交集模式矩阵,此几何值与其他几何相关,则为 true;否则为 false。 + 应与此几何值比较相关性的几何值。 + 包含定义了相关性的 (DE-9IM) 交集模式的文本表示形式的字符串。 + + 为 null。 + + + 确定此 DbGeometry 在空间上是否与指定的 DbGeometry 参数相等。 + 如果其他几何值在空间上与此几何值相等,则为 true;否则为 false。 + 应与此几何值比较相等性的几何值。 + + 为 null。 + + + 获取此 DbGeometry 值的空间类型名称表示形式。 + 此 DbGeometry 值的空间类型名称表示形式。 + + + 获取表示此值起始点的 DbGeometry 值,如果 DbGeometry 值不表示曲线,此值可能为 null。 + 表示此值起点的 DbGeometry 值。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的对称差异。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的对称差异。 + 应计算与此值的对称差异的几何值。 + + 为 null。 + + + 返回几何值的字符串表示形式。 + 此几何值的字符串表示形式。 + + + 确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数接触。 + 如果其他几何值与此几何值相接,则为 true;否则为 false。 + 应与此几何值比较的几何值。 + + 为 null。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的并集。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的并集。 + 应计算与此值的并集的几何值。 + + 为 null。 + + + 获取或设置此 DbGeometry 值的数据协定的可序列化已知表示形式。 + 此 DbGeometry 值的数据协定的可序列化的已知表示形式。 + + + 确定此 DbGeometry 值在空间上是否在指定的 DbGeometry 参数内。 + 如果此几何值在其他几何值中,则为 true;否则为 false。 + 应与此几何值比较包含关系的几何值。 + + 为 null。 + + + 如果此 DbGeometry 值表示点,则获取它的 X 坐标。 + 如果表示点,则为此几何值的 X 坐标值;否则为 null。 + + + 如果此 DbGeometry 值表示点,则获取它的 Y 坐标。 + 如果表示点,则为此几何值的 Y 坐标值;否则为 null。 + + + + 值的数据协定的可序列化表示形式。 + + + 初始化 类的新实例。 + + + 获取或设置此值的坐标系标识符 (SRID)。 + + + 获取或设置此值的已知二进制表示形式。 + + + 获取或设置此值的已知文本表示形式。 + + + 与提供程序无关的服务 API,用于支持地理空间(几何/地理)类型。 + + + 初始化 类的新实例。 + + + 当在派生类型中实现时,从指定列序号的列读取 的实例。 + 位于指定列值处的 DbGeography 实例 + 包含地理值的列序号 + + + 从位于指定的列序号的列异步读取 的实例。 + 表示异步操作的任务。任务结果包含位于指定列值处的 实例。 + 包含地理值的列序号。 + 等待任务完成期间要观察的 。 + + + 当在派生类型中实现时,从指定列序号的列读取 的实例。 + 位于指定列值处的 DbGeometry 实例 + 包含提供程序专用几何数据的数据记录列的序号 + + + 从位于指定的列序号的列异步读取 的实例。 + 表示异步操作的任务。任务结果包含位于指定列值处的 实例。 + 包含提供程序特定的几何数据的数据记录列的序号。 + 等待任务完成期间要观察的 。 + + + 返回位于指定的列序号的列是否为地理类型 + 如果位于指定的列序号的列为地理类型,则为 true;否则为 false。 + 列序号。 + + + 返回位于指定的列序号的列是否为几何类型 + 如果位于指定的列序号的列为几何类型,则为 true;否则为 false。 + 列序号。 + + + 与提供程序无关的服务 API,用于支持地理空间(几何/地理)类型。 + + + 初始化 类的新实例。 + + + 获取给定 值的已知二进制表示形式。 + 给定 值的已知二进制表示形式。 + 应为其生成已知二进制的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的已知二进制表示形式。 + 给定 值的已知二进制表示形式。 + 应为其生成已知二进制的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 生成此 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeography 值的 GML 表示形式的字符串。 + 应生成 GML 的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 生成此 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeometry 值的 GML 表示形式的字符串。 + 应生成 GML 的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的已知文本表示形式。此值仅应包含点的经度和纬度。 + 一个字符串,包含 geographyValue 的已知文本表示形式。 + 应为其生成已知文本的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的已知文本表示形式,仅包含点的 X 和 Y 坐标。 + 一个字符串,包含 geometryValue 的已知文本表示形式。 + 应为其生成已知文本的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回 带有海拔和测量值的文本表示形式。 + + 的文本表示形式。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回 带有海拔和测量值的文本表示形式。 + + 带有海拔和测量值的文本表示形式。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 创建一个地理值,该值表示所有距离小于或等于所给定 值的点。 + 一个新 DbGeography 值,表示所有距离小于或等于 geographyValue 的点。 + 地理值。 + 一个双精度值,指定从 geographyValue 到缓冲区的距离。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 创建一个几何值,该值表示所有距离小于或等于所给定 的点。 + 一个新 DbGeometry 值,表示所有距离小于或等于 geometryValue 的点。 + 几何值。 + 一个双精度值,指定从 geometryValue 到缓冲区的距离。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定一个 值是否在空间上包含另一个值。 + 如果 geometryValue 包含 otherGeometry,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 在进行指定提供程序值的合适验证后,此方法主要由 的派生实现使用,以确保其适用于派生实现。 + 一个新的 实例,包含指定的 providerValue,使用指定的 spatialServices 作为其空间实现。 + 返回的 值将依赖它实现空间功能的空间服务实例。 + 提供程序值。 + + + 在进行指定提供程序值的合适验证后,此方法主要由 的派生实现使用,以确保其适用于派生实现。 + 一个新的 实例,包含指定的 providerValue,使用指定的 spatialServices 作为其空间实现。 + 返回的 值将依赖它实现空间功能的空间服务实例。 + 提供程序值。 + + + 基于指定的已知 表示形式,创建一个兼容此空间服务实现的提供程序特定值。 + 一个提供程序特定值,它按照兼容此空间服务实现的方式,对 wellKnownValue 中包含的信息进行编码。 + 一个 实例,包含地理值的此已知表示形式。 + + + 基于指定的已知 表示形式,创建一个兼容此空间服务实现的提供程序特定值。 + 一个提供程序特定值,它按照兼容此空间服务实现的方式,对 wellKnownValue 中包含的信息进行编码。 + 一个 实例,包含几何值的此已知表示形式。 + + + 使用其中一个或这两个标准已知空间格式,创建表示指定 值的 实例。 + geographyValue 的已知表示形式,用作新 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 使用其中一个或这两个标准已知空间格式,创建表示指定 值的 实例。 + geometryValue 的已知表示形式,用作新 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 geometryValue 与 otherGeometry 相交,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取默认服务。 + 默认服务。 + + + 计算两个 值的差异。 + 一个新 DbGeography 值,表示 geographyValue 和 otherGeography 的差异。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的差异。 + 一个新 DbGeometry 值,表示 geometryValue 和 otherGeometry 的差异。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上不相交。 + 如果 geographyValue 不与 otherGeography 相交,则为 true;否则为 false。 + 用来比较不相交性的第一个地理值。 + 用来比较不相交性的第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上不相交。 + 如果 geometryValue 不与 otherGeometry 相交,则为 true;否则为 false。 + 用来比较不相交性的第一个几何值。 + 用来比较不相交性的第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值中最接近的点之间的距离。 + 一个双精度值,表示 geographyValue 和 otherGeography 中,最接近两点之间的距离。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值中最接近的点之间的距离。 + 一个双精度值,指定 geometryValue 和 otherGeometry 中,最接近两点之间的距离。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示地理集合,则返回给定 值的元素。 + 如果 geographyValue 表示其他地理值的集合,则为其在位置索引处的元素;否则为 null。 + 不需要表示地理集合的地理值。 + 在地理值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示几何集合,则返回给定 值的元素。 + 如果 geometryValue 表示其他几何值的集合,则为其在位置索引上的元素;否则为 null。 + 不需要表示几何集合的几何值。 + 在几何值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值创建新的 值。 + 一个新 值,由已知二进制值使用默认 坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 一个新 值,由 GML 值使用默认 坐标系统标识符 (SRID) () 进行定义。 + 包含地理值的几何标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由 GML 值使用指定的坐标系标识符 (SRID) 进行定义。 + 包含地理值的几何标记语言 (GML) 表示形式的字符串。 + 值应使用的坐标系标识符。 + + + 基于与此空间服务实现兼容的提供程序特定的值创建新的 值。 + 一个新 DbGeometry 值,它受此空间服务实现和指定提供程序值的支持。 + 此空间服务实现可将其解释为地理值的提供程序特定的值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 基于指定的已知文本值创建新的 值。 + 一个新 值,由已知文本值使用默认 坐标系标识符 (SRID) 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值创建新的 值。 + 一个新 值,由已知二进制值使用默认 坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 一个新 值,由 GML 值使用默认 坐标系统标识符 (SRID) () 进行定义。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由 GML 值使用指定的坐标系标识符 (SRID) 进行定义。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + 值应使用的坐标系标识符。 + + + 基于与此空间服务实现兼容的提供程序特定的值创建新的 值。 + 一个新 DbGeometry 值,它受此空间服务实现和指定提供程序值的支持。 + 此空间服务实现可将其解释为几何值的提供程序特定的值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 基于指定的已知文本值创建新的 值。 + 一个新 值,由已知文本值使用默认 坐标系标识符 (SRID) 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多线值。 + 多线值 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多线值。 + 多线值 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 返回一个指示给定 值的面积、可以为 null 的双精度值,如果该值不表示面则可能为 null。 + 一个可以为 null 的双精度值,指示给定的 值的面积。 + 不需要表示面的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的面积、可以为 null 的双精度值,如果该值不表示面则可能为 null。 + 一个可以为 null 的双精度值,指示给定的 值的面积。 + 不需要表示面的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的边界、可以为 null 的双精度值。 + 给定 值的边界。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值形心的 值,如果该值不表示面则可能为 null。 + 如果 geometryValue 表示面,则为它的形心;否则为 null。 + 不需要表示面的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的凸包、可以为 null 的双精度值。 + 给定 值的凸包。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回给定 值的坐标系标识符。 + 给定 值的坐标系标识符。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回给定 值的坐标系标识符。 + 给定 值的坐标系标识符。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的维度(如果值为集合)或最大的元素维度。 + geographyValue 的维度;如果 是一个集合,则为最大元素维度。 + 应检索维度值的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的维度(如果值为集合)或最大的元素维度。 + geometryValue 的维度;如果 是一个集合,则为最大元素维度。 + 应检索维度值的几何值。 + + + 如果表示地理集合,则返回给定 值的元素数目。 + 如果 geographyValue 表示其他地理值的集合,则为它当中的元素个数;否则为 null。 + 不需要表示地理集合的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示几何集合,则返回给定 值的元素数目。 + 如果此 geometryValue 表示其他几何值的集合,则为它当中的元素个数;否则为 null。 + 不需要表示几何集合的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的海拔(Z 坐标)。 + 如果此 geographyValue 表示点,则为它的海拔(Z 坐标);否则为 null。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的海拔 (Z)。 + 如果此 geometryValue 表示点,则为它的海拔(Z 坐标);否则为 null。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeography 值终点的 值,如果该值不表示曲线则可能为 null。 + 如果此 geographyValue 表示曲线,则为它的终点;否则为 null。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值终点的 值,如果该值不表示曲线则可能为 null。 + 如果此 geometryValue 表示曲线,则为它的终点;否则为 null。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定的 值的包络线(最小边界框)作为几何值。 + geometryValue 的包络线,用作 值。 + 应检索包络线值的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值外部环的 值,如果该值不表示多边形则可能为 null。 + 如果此 geometryValue 表示多边形,则为表示其上外部环的 DbGeometry 值;否则为 null。 + 不需要表示多边形的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示多边形,则返回给定 值中的内部环数。 + 如果此 geometryValue 表示多边形,则为它当中的元素个数;否则为 null。 + 不需要表示多边形的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否闭合;如果该值不表示曲线则可能为 null。 + 如果给定的 值为闭合值,则为 true;否则为 false。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否闭合;如果该值不表示曲线则可能为 null。 + 如果给定的 值为闭合值,则为 true;否则为 false。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否为空。 + 如果给定的 为空,则为 true;否则为 false。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否为空。 + 如果给定的 为空,则为 true;否则为 false。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否是环;如果该值不表示曲线则可能为 null。 + 如果给定的 值是一个环,则为 true;否则为 false。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否很简单。 + 如果给定的 值简单,则为 true;否则为 false。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否有效。 + 如果给定的 值有效,则为 true;否则为 false。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的纬度坐标。 + 给定 值的维度坐标。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的长度、可以为 null 的双精度值,如果该值不表示曲线则可能为 null。 + 给定 值的长度。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的长度、可以为 null 的双精度值,如果该值不表示曲线则可能为 null。 + 给定 值的长度。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的经度坐标。 + 给定 值的经度坐标。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 M(度量值)坐标。 + 给定 值的 M(测量值)坐标。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 M(度量值)坐标。 + 给定 值的 M(测量值)坐标。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值中的点数。 + 给定 值中的点数。 + 不需要表示行字符串或线性环的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值中的点数。 + 给定 值中的点数。 + 不需要表示行字符串或线性环的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值面上点的 值,如果该值不表示面则可能为 null。 + 一个 值,表示给定 DbGeometry 值面上的点。 + 不需要表示面的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回指示给定 值的空间类型名称的值。 + 给定的 值的空间类型名称。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回指示给定 值的空间类型名称的值。 + 给定的 值的空间类型名称。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeography 值起点的 值,如果该值不表示曲线则可能为 null。 + 给定 值的起始点。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值起点的 值,如果该值不表示曲线则可能为 null。 + 给定 值的起始点。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 X 坐标。 + 给定 值的 X 坐标。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 Y 坐标。 + 给定 值的 Y 坐标。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示多边形,则返回给定 值中的内部环。 + 如果此 geometryValue 表示多边形,则为其处于位置索引的内部环;否则为 null。 + 不需要表示多边形的几何值。 + 在几何值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的交集。 + 一个新 值,代表 geographyValue 和 otherGeography 的交集。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的交集。 + 一个新 值,代表 geometryValue 和 otherGeometry 的交集。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 geographyValue 与 otherGeography 相交,则为 true;否则为 false。 + 用来比较相交性的第一个地理值。 + 用来比较相交性的第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 geometryValue 与 otherGeometry 相交,则为 true;否则为 false。 + 用来比较相交性的第一个几何值。 + 用来比较相交性的第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取一个值,该值指示 EF 是否将在假定提供程序具有所需的类型/资源而非更快失败的情况下继续运行。默认值为 true。 + 如果 EF 将在假定提供程序具有所需的类型/资源而非更快失败的情况下继续运行,则为 true;否则为 false。 + + + 确定两个给定的 值是否在空间上重叠。 + 如果 geometryValue 与 otherGeometry 重叠,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值的点元素。 + 如果此 geographyValue 表示字符串或线性环,则为其在位置索引处的点;否则为 null。 + 不需要表示行字符串或线性环的地理值。 + 在地理值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值的点元素。 + 如果此 geometryValue 表示行字符串或线性环,则为其在位置索引处的点;否则为 null。 + 不需要表示行字符串或线性环的几何值。 + 在几何值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 根据给定的维度扩展的 9 交集模型 (DE-9IM) 交集模式来确定两个给定的 值在空间上是否相关。 + 如果根据指定的交集模式矩阵,此 geometryValue 与 otherGeometry 相关,则为 true;否则为 false。 + 第一个几何值。 + 应与第一个几何值比较相关性的几何值。 + 包含定义了相关性的 (DE-9IM) 交集模式的文本表示形式的字符串。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值在空间上是否相等。 + 如果 geographyValue 与 otherGeography 在空间上相等,则为 true;否则为 false。 + 要比较是否相等的第一个地理值。 + 要比较是否相等的第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值在空间上是否相等。 + 如果 geometryValue 与 otherGeometry 在空间上相等,则为 true;否则为 false。 + 要比较是否相等的第一个几何值。 + 要比较是否相等的第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的对称差异。 + 一个新 值,表示此 geographyValue 和 otherGeography 的对称差异。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的对称差异。 + 一个新 值,表示 geometryValue 和 otherGeometry 的对称差异。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值在空间上是否接触。 + 如果 geometryValue 与 otherGeometry 相接,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的并集。 + 一个新 值,代表 geographyValue 和 otherGeography 的并集。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的并集。 + 一个新 值,代表 geometryValue 和 otherGeometry 的并集。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定一个 值在空间上是否在另一几何值内。 + 如果 geometryValue 在 otherGeometry 中,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 包含 类的扩展方法。 + + + 配置用于等待此 的等待器,以避免封送继续部分回原始上下文,但是保留当前区域性和 UI 区域性。 + 用于等待此任务的对象。 + 要等待的任务。 + + + 配置用于等待此 的等待器,以避免封送继续部分回原始上下文,但是保留当前区域性和 UI 区域性。 + 用于等待此任务的对象。 + 要等待的任务。 + 相关 所生成的结果类型。 + + + 提供一个可等待的对象,它允许等待保留区域性的 + + + 构造 类的新实例。 + 要等待的任务。 + + + 获取用于等待此 的等待器。 + 等待器实例。 + + + 结束等待已完成的 + 未正确初始化等待器。 + 该任务已取消。 + 任务在错误状态下完成。 + + + 获取此 是否已完成的信息。 + + + 未实施此方法,不应调用它。 + 等待操作完成时要调用的操作。 + + + 计划继续操作到与此 关联的 + 等待操作完成时要调用的操作。 + + 参数为 null(在 Visual Basic 中为 Nothing)。 + 未正确初始化等待器。 + + + 提供一个可等待的对象,它允许等待保留区域性的 + 相关 所生成的结果类型。 + + + 构造 类的新实例。 + 要等待的任务。 + + + 获取用于等待此 的等待器。 + 等待器实例。 + + + 结束等待已完成的 + 已完成的 的结果。 + 未正确初始化等待器。 + 该任务已取消。 + 任务在错误状态下完成。 + + + 获取此 是否已完成的信息。 + + + 未实施此方法,不应调用它。 + 等待操作完成时要调用的操作。 + + + 计划继续操作到与此 关联的 + 等待操作完成时要调用的操作。 + + 参数为 null(在 Visual Basic 中为 Nothing)。 + 未正确初始化等待器。 + + + 表示在实体验证失败时从 引发的异常。 + + + 使用默认值初始化 类的新实例。 + + + 使用指定错误消息初始化 类的新实例。 + 异常消息。 + + + 使用指定错误消息和验证结果初始化 类的新实例。 + 异常消息。 + 验证结果。 + + + 使用指定错误消息、验证结果和内部异常初始化 类的新实例。 + 异常消息。 + 验证结果。 + 导致异常的错误。 + + + 使用指定错误消息和内部异常初始化 类的新实例。 + 异常消息。 + 导致异常的错误。 + + + 获取与实体关联的验证错误。 + 与实体关联的验证错误。 + + + 表示单个实体的验证结果。 + + + 创建 类的实例。 + 应用结果的实体项。绝不会为 null。 + + 实例的列表。绝不会为 null。可以为空意味着实体有效。 + + + 获取应用结果的 的实例。 + + + 获取指示实体是否有效的指示器。 + + + 获取验证错误。绝不会为 null。 + + + 在从验证代码引发异常时,从 引发的异常。 + + + 初始化 DbUnexpectedValidationException 的新实例。 + + + 用指定的序列化信息和上下文初始化 DbUnexpectedValidationException 的新实例。 + 序列化信息。 + 流上下文。 + + + 初始化 DbUnexpectedValidationException 的新实例。 + 异常消息。 + + + 初始化 DbUnexpectedValidationException 的新实例。 + 异常消息。 + 内部异常。 + + + 验证错误。可以是实体级别或属性级别验证错误。 + + + 创建 的实例。 + 无效属性的名称。可以为 null。 + 验证错误消息。可以为 null。 + + + 获取验证错误消息。 + + + 获取无效属性的名称。 + + + \ No newline at end of file diff --git a/Learun.Framework.Ultimate V7/packages/EntityFramework.zh-Hans.6.2.0/lib/net45/zh-Hans/EntityFramework.resources.dll b/Learun.Framework.Ultimate V7/packages/EntityFramework.zh-Hans.6.2.0/lib/net45/zh-Hans/EntityFramework.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..6e55fdb5644bb4f12d3051675db85b1cd1966447 GIT binary patch literal 327376 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

-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 z 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 +>TtZR&ikU4Pq^f?dW`4mU2eR) z^EbxwnMiL}D{*$$y|Ui%OnSN}Xur03>;Cs@hTrbktnGgqI?dYD{-oHl zi?d(bs<-a^aCDmEX3uqOCx7kxXefDH@Ry*q-=z&R&ZI1CF)E6dGeH>|U~GkeRSd3}fV<+oVxxh3_~S#{(5G8upA zNlOHqJfy4H%XB{ZKFo;f3CZO%{jrgcxsZROq_)&&^=z9fFD9%#-p|&^9`@1F@cATEb`AH-0wRY5vX7)E;|G!<%`5!%3spo3`+PAw` mf1UW?!QX!&w}NNLwRal-(oysIX5MmQ`q2q8JRDzuEm#2je~N + + + EntityFramework + + + +

表示置于属性 (property) 上的某个属性 (attribute),以指示该属性 (property) 映射到的数据库列具有索引。 + + + 为将按约定命名并且没有指定列顺序、群集或唯一性的索引初始化新的 实例。 + + + 为具有给定名称并且没有指定列顺序、群集或唯一性的索引初始化新的 实例。 + 索引名称。 + + + 为具有给定名称和列顺序,但没有指定群集或唯一性的索引初始化新的 实例。 + 索引名称。 + 一个将用于确定多列索引的列顺序的数字。 + + + 确定此属性是否指定与给定属性相同的名称和配置。 + 如果其他对象等于此对象,则为 true,否则为 false。 + 要比较的属性。 + + + 确定此属性是否指定与给定属性相同的名称和配置。 + 如果其他对象等于此对象,则为 true,否则为 false。 + 要比较的属性。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取或设置一个值以指示索引是否定义群集索引。 + 如果索引定义群集索引,则为 true,如果索引定义非群集索引,则为 false。 + + + 获取或设置 是否已设置为一个值。 + 如果 已设置为一个值,则为 true;否则为 false. + + + 获取或设置一个值以指示是否定义唯一索引。 + 为 true,则定义唯一索引;为 false,则定义非唯一索引。 + + + 获取或设置 是否已设置为一个值。 + 如果 已设置为一个值,则为 true;否则为 false。 + + + 获取或设置索引名称。 + 索引名称。 + + + 获取或设置确定多列索引的列排序的数字。如果没有指定列顺序,它将为 -1。 + 确定多列索引的列排序的数字,或者如果已指定列顺序,则为 -1。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 为每个对象实例获取或设置不同的 ID,以便类型描述符不会尝试将所有 IndexAttribute 实例组合成单个实例。 + 每个对象实例的不同 ID。 + + + IDatabaseInitializer 的实现,它仅在数据库不存在时重新创建数据库并选择重新设置数据库的种子。若要设置数据库的种子,请创建一个派生类并重写 Seed 方法。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + + 应重写以向上下文实际添加数据来设置种子的方法。默认实现不执行任何操作。 + 要设置种子的上下文。 + + + 对象获取此类的实例,并且可使用该实例管理支持 DbContext 或连接的实际数据库。这包括对数据库执行创建、删除和存在性检查操作。请注意通过使用此类的静态方法,您只需使用一个连接(即无需完整上下文)即可对数据库执行删除和存在性检查。 + + + 对基础存储连接开始一个事务 + 一个包装对基础存储的事务对象的访问的 对象 + + + 使用指定的隔离级别对基础存储连接开始一个事务 + 一个包装对基础存储的事务对象的访问的 对象 + 用于创建基础存储事务的数据库隔离级别 + + + 获取或设置所有上下文操作的超时值(以秒为单位)。默认值为 null,null 值指示将使用基础提供程序的默认值。 + 超时值(秒);使用提供程序默认值时为 null。 + + + 检查数据库是否与当前 Code First 模型兼容。 + 如果上下文中的模型哈希与数据库中的模型哈希匹配,则为 true;否则为 false。 + 如果设置为 true,则当未在数据库中找到任何模型元数据时,将引发异常。如果设置为 false,则当未找到元数据时,此方法将返回 true。 + + + 返回此上下文使用的连接。如果连接不存在,这可能会导致创建连接。 + + + 在数据库服务器上为支持上下文中定义的模型创建一个新的数据库。请注意,在运行数据库初始化策略之前调用此方法将禁止执行该策略。 + + + 在数据库服务器上为支持上下文中定义的模型创建一个新的数据库(但仅在该服务器上没有带相同名称的数据库时这样做)。 + 如果数据库不存在且已创建,则为 true;否则为 false。 + + + 获取基础存储连接在其中登记的事务。可能为 null。 + + + 在从数据库名称或连接字符串创建 时要使用的连接工厂。 + + + 如果数据库服务器上存在数据库,则删除该数据库;否则不执行任何操作。从初始值设定项之外调用此方法会将数据库标记为尚未初始化。这意味着如果在删除数据库后尝试再次使用它,则将再次运行所有初始值设定项集,通常将尝试再次自动创建数据库。 + 如果数据库以前存在且已被删除,则为 true;否则为 false。 + + + 如果数据库服务器上存在数据库,则删除该数据库;否则不执行任何操作。 + 如果数据库以前存在且已被删除,则为 true;否则为 false。 + 与数据库的现有连接。 + + + 如果数据库服务器上存在数据库,则删除该数据库;否则不执行任何操作。按照 类的文档中描述的方法,使用给定的数据库名称或连接字符串创建与数据库的连接。 + 如果数据库以前存在且已被删除,则为 true;否则为 false。 + 数据库名称或数据库的连接字符串。 + + + 确定指定的数据库是否等于当前数据库。 + 如果指定的数据库等于当前数据库,则为 true;否则为 false。 + 要与当前对象进行比较的数据库。 + + + 对数据库执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 执行命令后由数据库返回的结果。 + 对于此命令控制事务的创建。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 执行命令后由数据库返回的结果。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 对于此命令控制事务的创建。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 对于此命令控制事务的创建。 + 命令字符串。 + 等待任务完成期间要观察的 。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 命令字符串。 + 要应用于命令字符串的参数。 + + + 对数据库异步执行给定的 DDL/DML 命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含执行命令后由数据库返回的结果。 + 命令字符串。 + 等待任务完成期间要观察的 。 + 要应用于命令字符串的参数。 + + + 检查服务器上是否存在数据库。 + 如果数据库存在,则为 true;否则为 false。 + + + 检查服务器上是否存在数据库。 + 如果数据库存在,则为 true;否则为 false。 + 与数据库的现有连接。 + + + 检查服务器上是否存在数据库。按照 类的文档中描述的方法,使用给定的数据库名称或连接字符串创建与数据库的连接。 + 如果数据库存在,则为 true;否则为 false。 + 数据库名称或数据库的连接字符串。 + + + 返回此数据库的哈希函数。 + 此数据库的哈希函数。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在此上下文上运行注册的 。如果将“force”设置为 true,则将运行初始值设定项,不管它之前是否已运行。如果在应用程序正在运行时删除了数据库并且需要重新初始化数据库时,则这样做会很有用。如果将“force”设置为 false,则仅在尚未为此应用程序域中的此上下文、模型和连接运行初始值设定项的情况下运行它。当必须确保在开始某些操作之前已创建数据库并设定其种子时(这样偷懒的做法会导致问题,例如,当操作是事务的一部分时),通常会使用此方法。 + 如果设置为 true,则将运行初始值设定项,即使它之前已运行过也是如此。 + + + 设置此属性以将 生成的 SQL 记录到给定委托。例如,若要记录到控制台,请将此属性设置为 + + + 设置要用于给定上下文类型的数据库初始值设定项。当给定的 类型首次用于访问数据库时调用数据库初始值设定项。Code First 上下文的默认策略是 的实例。 + 要使用的初始值设定项或 null,后者对于指定的上下文类型禁用初始化。 + 上下文的类型。 + + + 创建一个原始 SQL 查询,该查询将返回给定泛型类型的元素。类型可以是包含与从查询返回的列名匹配的属性的任何类型,也可以是简单的基元类型。该类型不必是实体类型。即使返回对象的类型是实体类型,上下文也决不会跟踪此查询的结果。使用 方法可返回上下文跟踪的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.SqlQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.SqlQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 查询所返回对象的类型。 + + + 创建一个原始 SQL 查询,该查询将返回给定类型的元素。类型可以是包含与从查询返回的列名匹配的属性的任何类型,也可以是简单的基元类型。该类型不必是实体类型。即使返回对象的类型是实体类型,上下文也决不会跟踪此查询的结果。使用 方法可返回上下文跟踪的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Database.SqlQuery(typeof(Post), "SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Database.SqlQuery(typeof(Post), "SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + 查询所返回对象的类型。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + + + 返回数据库的字符串表示形式。 + 数据库的字符串表示形式。 + + + 如果您希望实体框架在外部事务内执行命令,则允许用户传递在 对象外创建的数据库事务。或者,传递 null 以清除该事务的框架知识。 + 外部事务 + 如果事务已完成,则引发此异常 + 如果与 对象关联的连接已在 事务中登记,则引发此异常 + 如果与 对象关联的连接已参与事务,则引发此异常 + 如果与事务关联的连接不匹配实体框架的连接,则引发此异常 + + + 从该类派生的类可与从 派生的类放置在同一个程序集中,以便定义应用程序的实体框架配置。通过调用受保护的方法并且在派生类型的构造函数中设置该类的受保护的属性,对配置进行设置。还可以在应用程序的配置文件中注册要使用的类型。有关实体框架配置的更多信息,请参见 http://go.microsoft.com/fwlink/?LinkId=260883。 + + + 初始化 类的新实例。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。 + 要添加的解析程序。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。 + 要添加的解析程序。 + + + 在应用程序启动时注册 。请注意,还可使用 随时添加和删除侦听器。 + 要注册的侦听器。 + + + 获取要用于解析实体框架中的服务依赖项的 + 要用于解析实体框架中的服务依赖项的 + + + 指定此实例是否等于指定对象。 + 如果此实例等于特定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 尝试从给定程序集发现和加载 。此方法应由工具使用以确保将正确配置加载到应用程序域中。工具应在访问 属性之前使用此方法。如果工具知道要使用的 类型,则应使用 方法,因为这会增加找到正确配置的机会。 + 要用于配置发现的 。 + + + 尝试发现和加载与给定 类型关联的 。此方法应由工具使用以确保将正确配置加载到应用程序域中。工具应在访问 属性之前使用此方法。 + 要用于配置发现的 类型。 + + + 在 DbConfiguration 已构造后、但在锁定可供使用之前在 EF 初始化过程中发生。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 此应用程序域的 的单一实例。可以在使用任何实体框架功能之前在应用程序启动时对此进行设置,并且在之后应被视作只读的。 + + 的实例。 + + + 从派生自 的类的构造函数调用此方法以设置工厂,从而允许 创建不具有公共无参数构造函数的上下文的实例。 + 用于创建上下文实例的委托。 + 应对其使用工厂的上下文类型。 + + + 从派生自 的类的构造函数调用此方法以设置工厂,从而允许 创建不具有公共无参数构造函数的上下文的实例。 + 应对其使用工厂的上下文类型。 + 用于创建上下文实例的委托。 + + + 从自 派生的类的构造函数调用此方法,以便设置要用于给定上下文类型的数据库初始值。当给定的 类型首次用于访问数据库时调用数据库初始值设定项。Code First 上下文的默认策略是 的实例。 + 要使用的初始值设定项或 null,后者对于指定的上下文类型禁用初始化。 + 上下文的类型。 + + + 从派生自 的类的构造函数调用此方法,以为 的类型设置要与 一起使用的工厂。 + 一个将创建格式化程序实例的委托。 + + + 设置 ,它用于在没有提供或没有可由 发现的其他连接字符串或连接的情况下按照约定创建连接。请注意,只要安装了 EntityFramework NuGet 包,就可以在 app.config 或 web.config 文件中设置默认连接工厂。与所有配置文件设置一样,在配置文件中设置的默认连接工厂将优先于使用此方法进行的任何设置。因此,必须首先从配置文件中删除该设置,然后调用此方法才会起作用。从自 派生的类的构造函数调用此方法,以便更改要使用的默认连接工厂。 + 连接工厂。 + + + 从派生自 的类的构造函数调用此方法,以设置一个 委托,该委托将用于为任何 创建默认 。仅当 中没有显式设置工厂且没有使用 方法为正在使用的提供程序注册工厂时,才会使用此默认工厂。 + 一个工厂,用于为表示默认架构的给定 创建 实例。 + + + 从派生自 的类的构造函数调用此方法,以设置将在需要空间提供程序且无法找到特定于提供程序的空间提供程序时使用的 的全局实例。通常,特定于提供程序的空间提供程序是从 实现中获取的,通过解析 的服务以将提供程序固定名称作为键传递,可返回此实现。但是,这并不适用于 的独立实例,因为无法知道要使用的空间提供程序。因此,在创建 的独立实例时会始终使用全局空间提供程序。 + 空间提供程序。 + + + 从派生自 的类的构造函数调用此方法,以注册 + 一个返回事务处理程序的新实例的函数。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序的 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 返回执行策略的新实例的函数。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序及给定服务器名称的 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 返回执行策略的新实例的函数。 + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + 从派生自 的类的构造函数调用此方法,以设置一个 委托,该委托允许为不具有显式工厂集的任何 的给定提供程序创建自定义的 + 此生成器应该用于的 ADO.NET 提供程序的固定名称。 + 一个工厂,用于为表示默认架构的给定 创建 实例。 + + + 从自 派生的类的构造函数调用此方法,以便设置 的实现,该实现允许无需打开连接即可从连接获取提供程序清单标记。 + 清单标记解析程序。 + + + 从派生自 的类的构造函数调用此方法,以便为 的实现设置工厂,从而允许将 实例所表示的自定义注释序列化到 EDMX XML 以及从中进行序列化。 + 将由此序列化程序处理的自定义注释的名称。 + 一个将用于创建序列化程序实例的委托。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序的 + 此生成器应该用于的 ADO.NET 提供程序的固定名称。 + 每次调用时都返回 SQL 生成器的新实例的委托。 + + + 从派生自 的类的构造函数调用此方法,以便将 设置为模型缓存键工厂,该工厂允许使用键来缓存要更改的 后的模型。 + 键工厂。 + + + 从自 派生的类的构造函数调用此方法,以便设置复数形式服务。 + 要使用的复数形式服务。 + + + 从自 派生的类的构造函数调用此方法,以便注册 ADO.NET 提供程序。 + ADO.NET 提供程序固定名称,指示此提供程序将用于的 ADO.NET 连接的类型。 + 提供程序实例。 + + + 从自 派生的类的构造函数调用此方法,以便设置 的实现,该实现允许在默认实现不足的情况下从 获取 + 提供程序工厂服务。 + + + 从自 派生的类的构造函数调用此方法,以便注册实体框架提供程序。 + ADO.NET 提供程序固定名称,指示此提供程序将用于的 ADO.NET 连接的类型。 + 提供程序实例。 + + + 从派生自 的类的构造函数调用此方法,以设置要用于特定提供程序和提供程序清单标记的 的实现。 + + 指示将使用此空间提供程序的 ADO.NET 连接的类型。 + 空间提供程序。 + + + 从派生自 的类的构造函数调用此方法,以设置要用于具有任何清单标记的特定提供程序的 的实现。 + ADO.NET 提供程序固定名称,指示将使用此空间提供程序的 ADO.NET 连接的类型。 + 空间提供程序。 + + + 从自 派生的类的构造函数调用此方法,以注册给定提供程序的数据库表的存在检查器。 + ADO.NET 提供程序固定名称,指示此提供程序将用于的 ADO.NET 连接的类型。 + 要使用的表存在检查器。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序的 + ADO.NET 提供程序固定名称,指示将使用此事务处理程序的 ADO.NET 连接的类型。 + 一个返回事务处理程序的新实例的函数。 + + + 从派生自 的类的构造函数调用此方法,以注册要用于给定固定名称所表示的提供程序及给定服务器名称的 + ADO.NET 提供程序固定名称,指示将使用此事务处理程序的 ADO.NET 连接的类型。 + 一个返回事务处理程序的新实例的函数。 + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 可将此属性置于 的子类上,以指示 的子类,后者表示应用程序的基于代码的配置与上下文类型处于不同的程序集中。 + + + 指示应对此应用程序的基于代码的配置使用由给定程序集限定名称表示的 的子类。 + 要使用的 类型。 + + + 指示应对此应用程序的基于代码的配置使用 的给定子类。 + 要使用的 类型。 + + + 获取应对此应用程序的基于代码的配置使用的 的子类。 + 应对此应用程序的基于代码的配置使用的 的子类。 + + + DbContext 实例表示工作单元和存储库模式的组合,可用来查询数据库并将更改组合在一起,这些更改稍后将作为一个单元写回存储区中。DbContext 在概念上与 ObjectContext 类似。 + + + 使用约定构造一个新的上下文实例以创建将连接到的数据库的名称。按照约定,该名称是派生上下文类的全名(命名空间与类名称的组合)。请参见有关这如何用于创建连接的类备注。 + + + 通过现有连接来连接到数据库以构造一个新的上下文实例。如果 是 false,则释放上下文时将不会释放该连接。 + 要用于新的上下文的现有连接。 + 如果设置为 true,则释放上下文时将释放该连接;否则调用方必须释放该连接。 + + + 通过使用现有连接来连接到数据库以构造一个新的上下文实例,并从给定模型初始化该实例。如果 是 false,则释放上下文时将不会释放该连接。 + 要用于新的上下文的现有连接。 + 支持此上下文的模型。 + 如果设置为 true,则释放上下文时将释放该连接;否则调用方必须释放该连接。 + + + 围绕现有 ObjectContext 构造一个新的上下文实例。 + 要使用新的上下文包装的现有 ObjectContext。 + 如果设置为 true,则释放 DbContext 时将释放 ObjectContext;否则调用方必须释放该连接。 + + + 使用约定构造一个新的上下文实例以创建将连接到的数据库的名称,并从给定模型初始化该名称。按照约定,该名称是派生上下文类的全名(命名空间与类名称的组合)。请参见有关这如何用于创建连接的类备注。 + 支持此上下文的模型。 + + + 可以将给定字符串用作将连接到的数据库的名称或连接字符串来构造一个新的上下文实例。请参见有关这如何用于创建连接的类备注。 + 数据库名称或连接字符串。 + + + 可以将给定字符串用作将连接到的数据库的名称或连接字符串来构造一个新的上下文实例,并从给定模型初始化该实例。请参见有关这如何用于创建连接的类备注。 + 数据库名称或连接字符串。 + 支持此上下文的模型。 + + + 提供对用于处理实体的更改跟踪的上下文功能的访问。 + 一个用于访问处理更改跟踪的功能的对象。 + + + 提供对上下文的配置选项的访问。 + 一个用于访问配置选项的对象。 + + + 为此上下文创建一个数据库实例,该上下文允许您对基础数据库执行创建/删除/存在性检查操作。 + + + 调用受保护的 Dispose 方法。 + + + 释放上下文。在以下情况下也将释放基础 :它由此上下文创建,或者在创建此上下文时将所有权传递给了此上下文。在以下情况下也将释放与数据库的连接( 对象):它由此上下文创建,或者在创建此上下文时将所有权传递给了此上下文。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 获取给定实体的 对象,以便提供对与该实体有关的信息的访问以及对实体执行操作的功能。 + 实体的项。 + 实体。 + + + 获取给定实体的 对象,以便提供对与该实体有关的信息的访问以及对实体执行操作的功能。 + 实体的项。 + 实体。 + 实体的类型。 + + + 确定指定的 DbContext 是否等于当前 DbContext。 + 如果指定的 DbContext 等于当前 DbContext,则为 true;否则为 false。 + 要与当前 DbContext 进行比较的 DbContext。 + + + 返回此 DBContext 的哈希函数。 + 此 DBContext 的哈希函数。 + + + 返回当前 DbContext 的类型。 + 当前 DbContext 的类型。 + + + 验证跟踪实体,并返回包含验证结果的 的集合。 + 无效实体的验证结果集合。集合决不为 null,且不得包含 null 值或有效实体的结果。 + + + 在完成对派生上下文的模型的初始化后,并在该模型已锁定并用于初始化上下文之前,将调用此方法。虽然此方法的默认实现不执行任何操作,但可在派生类中重写此方法,这样便能在锁定模型之前对其进行进一步的配置。 + 定义要创建的上下文的模型的生成器。 + + + 将在此上下文中所做的所有更改保存到基础数据库。 + 已写入基础数据库的对象的数目。 + 向数据库发送更新时出错。 + 数据库命令未影响预期行数。这通常指示存在乐观并发冲突;即,某行自对它查询以来已在数据库中发生更改。 + 保存已中止,因为实体属性值的验证失败。 + 尝试使用不支持的行为,如对相同上下文实例并发执行多个异步命令。 + 上下文或连接已释放。 + 向数据库发送命令之前或之后,尝试在上下文中处理实体时发生错误。 + + + 将在此上下文中所做的所有更改异步保存到基础数据库。 + 表示异步保存操作的任务。任务结果包含已写入基础数据库的对象数目。 + 向数据库发送更新时出错。 + 数据库命令未影响预期行数。这通常指示存在乐观并发冲突;即,某行自对它查询以来已在数据库中发生更改。 + 保存已中止,因为实体属性值的验证失败。 + 尝试使用不支持的行为,如对相同上下文实例并发执行多个异步命令。 + 上下文或连接已释放。 + 向数据库发送命令之前或之后,尝试在上下文中处理实体时发生错误。 + + + 将在此上下文中所做的所有更改异步保存到基础数据库。 + 表示异步保存操作的任务。任务结果包含已写入基础数据库的对象数目。 + 等待任务完成期间要观察的 。 + 在已释放上下文时引发。 + + + 针对对上下文和基础存储中给定类型的实体的访问返回一个 实例。 + 给定实体类型的集。 + 应为其返回一个集的类型实体。 + + + 针对对上下文和基础存储中给定类型的实体的访问返回一个非泛型 实例。 + 给定实体类型的集。 + 应为其返回一个集的实体的类型。 + + + 扩展点允许用户重写仅验证添加的实体和修改的实体的默认行为。 + 如果继续验证,则为 true;否则为 false。 + 应验证的 DbEntityEntry 实例。 + + + 返回基础化此上下文的实体框架 ObjectContext。 + + + 返回 DbContext 的字符串表示形式。 + DbContext 的字符串表示形式。 + + + 扩展点允许用户自定义实体的验证或筛选出验证结果。由 调用。 + 实体验证结果。重写时可能为 null。 + 要验证的 DbEntityEntry 实例。 + 包含用于自定义验证的附加信息的用户定义的字典。它将被传递给 并将作为 公开。此参数是可选的,并且可为 null。 + + + 包装对基础存储连接的事务对象的访问并确保实体框架在该事务的上下文内对数据库执行命令。通过对 对象调用 BeginTransaction() 来检索此类的实例。 + + + 提交基础存储事务。 + + + 清除此事务对象并确保实体框架不再使用该事务。 + + + 释放此事务对象占用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 确定此实例是否与指定对象相同。 + 如果此实例与指定对象相同,则为 true;否则为 false。 + 要与此实例进行比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取与此实例关联的基础类型。 + 与此实例关联的基础类型。 + + + 回滚基础存储事务。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 获取基础化此上下文事务的数据库(存储)事务。 + 基础化此上下文事务的数据库(存储)事务。 + + + 指示给定的方法是 EDM 函数的代理。 + + + 初始化 类的新实例。 + 映射到的函数的命名空间。 + 映射到的函数的名称。 + + + 映射到的函数的名称。 + 映射到的函数的名称。 + + + 映射到的函数的命名空间。 + 映射到的函数的命名空间。 + + + 提供在 LINQ to Entities 查询中使用的公开 EDM 规范函数的公共语言运行时 (CLR) 方法。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为非 Unicode 字符串处理的运算符。 + 作为非 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为 Unicode 字符串处理的运算符。 + 作为 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTime EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTimeOffset EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + 新日期的时区偏移量部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateTime EDM 函数以创建新的 对象。 + 新的时间跨度。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个时间跨度间隔的小时数。 + 第一个时间跨度和第二个时间跨度间隔的小时数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个时间跨度间隔的微秒数。 + 第一个时间跨度和第二个时间跨度间隔的微秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个时间跨度间隔的毫秒数。 + 第一个时间跨度和第二个时间跨度间隔的毫秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个时间跨度间隔的分钟数。 + 第一个时间跨度和第二个时间跨度间隔的分钟数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个时间跨度间隔的纳秒数。 + 第一个时间跨度和第二个时间跨度间隔的纳秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个时间跨度间隔的秒数。 + 第一个时间跨度和第二个时间跨度间隔的秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 GetTotalOffsetMinutes EDM 函数以返回指定的日期/时间偏移 UTC 的分钟数。该值通常介于 +780 到 -780 之间(+ 或 - 13 小时)。 + 输入对 UTC 的偏移量。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Left 函数以返回字符串中最左侧指定数目的字符。 + 包含从输入字符串左侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Reverse 函数以返回其字符顺序反转的指定字符串。 + 以反转字符顺序显示的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Right 函数以返回字符串中最右侧指定数目的字符。 + 包含从输入字符串右侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + DbModelBuilder 用于将 CLR 类映射到数据库架构。此以代码为中心的方法称作“Code First”,可用于生成实体数据模型 (EDM) 模型。 + + + 初始化 类的新实例。发现初始模型的过程将使用您计算机上安装的实体框架的最新版本中所包含的一组约定。 + + + 初始化 类的新实例,它将使用一组特定的约定来发现初始模型。 + 要使用的约定的版本。 + + + 使用此生成器基于执行的配置来创建一个 。连接用于确定要使用的数据库提供程序,因为这会影响生成的模型的数据库层。 + 已生成的模型。 + 用来确定提供程序信息的连接。 + + + 使用此生成器基于执行的配置来创建一个 。必须指定提供程序信息,因为这会影响生成的模型的数据库层。对于 SqlClient,固定名称为“System.Data.SqlClient”,清单标记为版本年份(例如,“2005”、“2008”等)。 + 已生成的模型。 + 模型将用于的数据库提供程序。 + + + 将一个类型注册为模型中的复杂类型,并返回一个可用来配置复杂类型的对象。可对同一类型多次调用此方法以执行多行配置。 + 指定的复杂类型的配置对象。 + 要注册或配置的类型。 + + + 获取此 DbModelBuilder 的 。注册器允许使用此生成器来注册派生的实体和复杂类型配置。 + + + 提供对处理约定的此 DbModelBuilder 的设置的访问。 + + + 将实体类型注册为模型的一部分,并返回一个可用来配置实体的对象。可对同一实体多次调用此方法以执行多行配置。 + 指定的实体类型的配置对象。 + 要注册或配置的类型。 + + + 指定 是否等于指定的对象。 + 如果 等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置默认数据库架构名称。此默认数据库架构名称用于不具有显式配置的架构名称的数据库对象。 + 同一个 DbModelBuilder 实例,以便多个调用可以链接在一起。 + 默认数据库架构的名称。 + + + 从模型中排除类型。这用于在初始模型发现期间从根据约定添加的模型中移除类型。 + 同一个 DbModelBuilder 实例,以便多个调用可以链接在一起。 + 要排除的类型。 + + + 从模型中排除指定的类型。这用于在初始模型发现期间从根据约定添加的模型中移除类型。 + 同一个 DbModelBuilder 实例,以便多个调用可以链接在一起。 + 要从模型中排除的类型。 + + + 开始配置适用于模型中所有属性的轻型约定。 + 约定的配置对象。 + + + 开始配置适用于模型中指定类型的所有基元属性的轻型约定。 + 约定的配置对象。 + 此约定将适用于的属性类型。 + + + 将实体类型注册为模型的一部分。 + 要注册的类型。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 开始配置应用于模型中从泛型参数指定的类型派生或实现泛型参数指定的类型的所有实体和复杂类型的轻型约定。此方法不会将类型注册为模型的一部分。 + 约定的配置对象。 + 此约定将适用于的实体类型或复杂类型。 + + + 开始配置应用于模型中所有实体和复杂类型的轻型约定。 + 约定的配置对象。 + + + 可直接将此枚举中的值提供给 类,也可以在应用到派生自 的类的 中使用该值。使用的值可定义在从代码生成模型(也称为“Code First”)时应使用的 DbContext 和 DbModelBuilder 约定的版本。 + + + 指示应使用 约定的最新版本。 + + + 指示应使用实体框架 4.1 版附带的 约定的版本。 + + + 指示应使用实体框架 5.0 版附带的 约定的版本。 + + + 指示面向 .Net Framework 4 时,应使用实体框架 5.0 版附带的 约定的版本。 + + + 指示应使用实体框架 6.0 版附带的 约定的版本。 + + + 此特性可应用于派生自 的类,以便在从代码生成模型(也称为“Code First”)时设置应使用的 DbContext 和 约定的版本。有关 DbModelBuilder 版本的详细信息,请参见 枚举。 + + + 初始化 类的新实例。 + 要使用的 约定版本。 + + + 获取 约定版本。 + + 约定版本。 + + + 非泛型版本的 ,可在生成时不知道实体类型时使用。 + + + 从派生类型的构造函数中进行调用时,创建一个 实例,它将用作 DbSet 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking、AsStreaming 和 Include,它们的默认实现是空操作。 + + + 将给定实体以“已添加”状态添加到集的基础上下文中,这样一来,当调用 SaveChanges 时,会将该实体插入到数据库中。 + 实体。 + 要添加的实体。 + + + 将给定实体集合添加到基础化集的上下文中(每个实体都置于“已添加”状态),这样当调用 SaveChanges 时,会将它插入到数据库中。 + 实体集合。 + 要添加的实体集合。 + + + 将给定实体附加到集的基础上下文中。也就是说,将实体以“未更改”的状态放置到上下文中,就好像从数据库读取了该实体一样。 + 实体。 + 要附加的实体。 + + + 返回等效泛型 对象。 + 泛型集对象。 + 已为其创建集的实体的类型。 + + + 为此集的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + + + 为此集的类型或派生自此集类型的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + 要创建的实体的类型。 + + + 返回指定的集是否等于当前集。 + 如果指定的对象等于当前集,则为 true;否则为 false。 + 要与当前对象进行比较的集。 + + + 查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 找到的实体或为 null。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 等待任务完成期间要观察的 。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 返回指定集的哈希函数。 + 集的哈希函数。 + + + 获取当前集的类型。 + 当前集的类型。 + + + 获取 ,它表示此集中的所有“已添加”、“未更改”和“已修改”实体的本地视图。在上下文中添加或删除实体时,该本地视图将保持同步。同样,在本地视图中添加或删除实体也会自动在上下文中添加或删除实体。 + 本地视图。 + + + 将给定实体标记为“已删除”,这样一来,当调用 SaveChanges 时,将从数据库中删除该实体。请注意,在调用此方法之前,该实体必须以另一种状态存在于该上下文中。 + 实体。 + 要删除的实体。 + + + 从基础化集的上下文中删除给定实体集合(每个实体都置于“已删除”状态),这样当调用 SaveChanges 时,会从数据库中删除它。 + 实体集合。 + 要删除的实体集合。 + + + 创建一个原始 SQL 查询,该查询将返回此集中的实体。默认情况下,上下文会跟踪返回的实体;可通过对返回的 调用 AsNoTracking 来更改此设置。请注意返回实体的类型始终是此集的类型,而不会是派生的类型。如果查询的一个或多个表可能包含其他实体类型的数据,则必须编写适当的 SQL 查询以确保只返回适当类型的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Set(typeof(Blog)).SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Set(typeof(Blog)).SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + + + DbSet 表示上下文中给定类型的所有实体的集合或可从数据库中查询的给定类型的所有实体的集合。可以使用 DbContext.Set 方法从 DbContext 中创建 DbSet 对象。 + 定义集的类型。 + + + 从派生类型的构造函数中进行调用时,创建一个 实例,它将用作 DbSet 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking、AsStreaming 和 Include,它们的默认实现是空操作。 + + + 将给定实体以“已添加”状态添加到集的基础上下文中,这样一来,当调用 SaveChanges 时,会将该实体插入到数据库中。 + 要添加的实体。 + + + 将给定实体集合添加到基础化集的上下文中(每个实体都置于“已添加”状态),这样当调用 SaveChanges 时,会将它插入到数据库中。 + 实体集合。 + 要添加的实体集合。 + + + 将给定实体附加到集的基础上下文中。也就是说,将实体以“未更改”的状态放置到上下文中,就好像从数据库读取了该实体一样。 + 要附加的实体。 + + + 为此集的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + + + 为此集的类型或派生自此集类型的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 要创建的实体的类型。 + + + 确定指定的 DbSet 是否等于当前 DbSet。 + 如果指定的 DbSet 等于当前 DbSet,则为 true;否则为 false。 + 要与当前 DbSet 进行比较的对象。 + + + 查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 找到的实体或为 null。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 要查找的实体的主键值。 + + + 异步查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 表示异步查找操作的任务。任务结果包含找到的实体或 null。 + 等待任务完成期间要观察的 。 + 要查找的实体的主键值。 + 如果上下文中存在具有给定主键值的多个实体,则引发此异常。 + 如果实体类型不是此上下文的数据模型的一部分,则引发此异常。 + 如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。 + 在已释放上下文时引发。 + + + 返回此 DbSet 的哈希函数。 + 此 DbSet 的哈希函数。 + + + 返回当前 DbSet 的类型。 + 当前 DbSet 的类型。 + + + 获取 ,它表示此集中的所有“已添加”、“未更改”和“已修改”实体的本地视图。在上下文中添加或删除实体时,该本地视图将保持同步。同样,在本地视图中添加或删除实体也会自动在上下文中添加或删除实体。 + 本地视图。 + + + 返回等效非泛型 对象。 + 非泛型集对象。 + 泛型集对象。 + + + 将给定实体标记为“已删除”,这样一来,当调用 SaveChanges 时,将从数据库中删除该实体。请注意,在调用此方法之前,该实体必须以另一种状态存在于该上下文中。 + 要删除的实体。 + + + 从基础化集的上下文中删除给定实体集合(每个实体都置于“已删除”状态),这样当调用 SaveChanges 时,会从数据库中删除它。 + 实体集合。 + 要删除的实体集合。 + + + 创建一个原始 SQL 查询,该查询将返回此集中的实体。默认情况下,上下文会跟踪返回的实体;可通过对返回的 调用 AsNoTracking 来更改此设置。请注意返回实体的类型始终是此集的类型,而不会是派生的类型。如果查询的一个或多个表可能包含其他实体类型的数据,则必须编写适当的 SQL 查询以确保只返回适当类型的实体。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.Blogs.SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.Blogs.SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 一个 对象,此对象在枚举时将执行查询。 + SQL 查询字符串。 + 要应用于 SQL 查询字符串的参数。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + + + IDatabaseInitializer 的实现,它总是会在首次在应用程序域中使用上下文时,重新创建数据库并可以选择重新设置数据库的种子。若要设置数据库的种子,请创建一个派生类并重写 Seed 方法。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + 为 null。 + + + 应重写以向上下文实际添加数据来设置种子的方法。默认实现不执行任何操作。 + 要设置种子的上下文。 + + + IDatabaseInitializer 的实现,它仅在模型自数据库创建后发生更改时删除数据库、重新创建数据库并选择重新设置数据库的种子。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + 为 null。 + + + 应重写以向上下文实际添加数据来设置种子的方法。默认实现不执行任何操作。 + 要设置种子的上下文。 + + + 描述实体的状态。 + + + 实体将由上下文跟踪,但是在数据库中还不存在。 + + + 实体将由上下文跟踪并存在于数据库中,但是已被标记为在下次调用 SaveChanges 时从数据库中删除。 + + + 该实体未由上下文跟踪。刚使用新运算符或某个 Create 方法创建实体后,实体就处于此状态。 + + + 实体将由上下文跟踪并存在于数据库中,已修改其中的一些或所有属性值。 + + + 实体将由上下文跟踪并存在于数据库中,其属性值与数据库中的值相同。 + + + 此接口的实现用于在首次使用 派生类的实例时初始化基础数据库。此初始化可以有条件地创建数据库和/或使用数据设置其种子。使用 类的静态 InitializationStrategy 属性设置所用的策略。提供以下实现: + 此类型参数是逆变。即可以使用指定的类型或派生程度更低的类型。 有关协变和逆变的详细信息,请参阅。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + + + 表示上下文中给定类型的所有实体的集合或可从数据库中查询的给定类型的所有实体的集合。 是 IDbSet 的具体实现。 + 定义集的类型。 + + + 将给定实体以“已添加”状态添加到集的基础上下文中,这样一来,当调用 SaveChanges 时,会将该实体插入到数据库中。 + 实体。 + 要添加的实体。 + + + 将给定实体附加到集的基础上下文中。也就是说,将实体以“未更改”的状态放置到上下文中,就好像从数据库读取了该实体一样。 + 实体。 + 要附加的实体。 + + + 为此集的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + + + 为此集的类型或派生自此集类型的类型创建新的实体实例。请注意此实例不会添加或附加到此集。如果基础上下文配置为创建代理且实体类型满足创建代理的要求,则返回的实例将是一个代理。 + 实体实例,可能为代理。 + 要创建的实体的类型。 + + + 查找带给定主键值的实体。如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。如果未在上下文或存储区中找到实体,则返回 null。 + 找到的实体或为 null。 + 要查找的实体的主键值。 + + + 获取 ,它表示此集中的所有“已添加”、“未更改”和“已修改”实体的本地视图。在上下文中添加或删除实体时,该本地视图将保持同步。同样,在本地视图中添加或删除实体也会自动在上下文中添加或删除实体。 + 本地视图。 + + + 将给定实体标记为“已删除”,这样一来,当调用 SaveChanges 时,将从数据库中删除该实体。请注意,在调用此方法之前,该实体必须以另一种状态存在于该上下文中。 + 实体。 + 要删除的实体。 + + + 将使用 Code First 迁移将数据库更新到最新版本的 的实现。 + 上下文的类型。 + 初始化过程中要使用的迁移配置的类型。 + + + 初始化 MigrateDatabaseToLatestVersion 类的新实例,该类将使用通过默认构造函数或已注册工厂(如果适用)构造的上下文中的连接信息。 + + + 初始化 MigrateDatabaseToLatestVersion 类的新实例,该类指定是否使用触发初始化的上下文中的连接信息来执行迁移。 + 如果设置为 true,则初始值设定项使用触发初始化的上下文中的连接信息来运行。否则,从使用默认构造函数或已注册工厂(如果适用)构造的上下文中获取连接信息。 + + + 初始化 MigrateDatabaseToLatestVersion 类的新实例,该类指定是否使用触发初始化的上下文中的连接信息来执行迁移。也允许指定在初始化期间要使用的迁移配置。 + 如果设置为 true,则初始值设定项使用触发初始化的上下文中的连接信息来运行。否则,从使用默认构造函数或已注册工厂(如果适用)构造的上下文中获取连接信息。 + 在初始化期间要使用的迁移配置。 + + + 初始化将使用配置文件中的特定连接字符串连接到数据库以执行迁移的 MigrateDatabaseToLatestVersion 类的新实例。 + 用于迁移的连接字符串的名称。 + + + 初始化给定上下文的数据库。 + 上下文。 + + + 不执行任何操作的 的实现。使用此初始值设定项将禁用给定上下文类型的数据库初始化。将此类的实例传递给 将等效于传递 null。正在使用 解析初始值设定项时,此类的实例必须用于禁用初始化。 + 上下文的类型。 + + + 初始化 类的新实例。 + + + 执行策略以初始化给定上下文的数据库。 + 上下文。 + + + + 的扩展方法。 + + + 返回 实现,该实现与给定的 保持同步。 + 绑定列表。 + 绑定列表将与其保持同步的集合。 + 元素类型。 + + + 提供用于 Entity Framework LINQ 查询的有用扩展方法。 + + + 异步确定序列的所有元素是否满足条件。 + 表示异步操作的任务。如果源序列的每个元素都通过了指定谓词中的测试,则任务结果包含 true;否则为 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 是 null。 + + 不实现 + + + 异步确定序列的所有元素是否满足条件。 + 表示异步操作的任务。如果源序列的每个元素都通过了指定谓词中的测试,则任务结果包含 true;否则为 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 是 null。 + + 不实现 + + + 异步确定序列是否包含任何元素。 + 表示异步操作的任务。如果源序列包含任何元素,则任务结果包含 true;否则包含 false。 + 要检查为空的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步确定序列的任何元素是否满足条件。 + 表示异步操作的任务。如果源序列的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步确定序列的任何元素是否满足条件。 + 表示异步操作的任务。如果源序列的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 要测试其元素是否满足某个条件的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步确定序列是否包含任何元素。 + 表示异步操作的任务。如果源序列包含任何元素,则任务结果包含 true;否则包含 false。 + 要检查为空的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。此方法通过调用基础查询对象的 AsNoTracking 方法来运行。如果基础查询对象没有 AsNoTracking 方法,则调用此方法将不会有任何影响。 + 应用 NoTracking 的新查询,如果不支持 NoTracking,则为源查询。 + 源查询。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。此方法通过调用基础查询对象的 AsNoTracking 方法来运行。如果基础查询对象没有 AsNoTracking 方法,则调用此方法将不会有任何影响。 + 应用 NoTracking 的新查询,如果不支持 NoTracking,则为源查询。 + 源查询。 + 元素类型。 + + + 返回将流式处理结果而非缓存它的新查询。此方法通过调用基础查询对象的 AsStreaming 方法来运行。如果基础查询对象没有 AsStreaming 方法,则调用此方法将不会有任何影响。 + 应用 AsStreaming 的新查询,如果不支持 AsStreaming,则为源查询。 + 要应用 AsStreaming 的 。 + + + 返回将流式处理结果而非缓存它的新查询。此方法通过调用基础查询对象的 AsStreaming 方法来运行。如果基础查询对象没有 AsStreaming 方法,则调用此方法将不会有任何影响。 + 应用 AsStreaming 的新查询,如果不支持 AsStreaming,则为源查询。 + 要应用 AsStreaming 的 。 + + 的元素的类型。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 异步计算 值序列的平均值,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含值序列的平均值。 + 要计算其平均值的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中不包含任何元素。 + + + 通过使用默认的相等比较器异步确定序列是否包含指定的元素。 + 表示异步操作的任务。如果输入序列包含指定的值,则任务结果包含 true;否则包含 false。 + 一个返回其单个元素的 。 + 要在序列中定位的对象。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 通过使用默认的相等比较器异步确定序列是否包含指定的元素。 + 表示异步操作的任务。如果输入序列包含指定的值,则任务结果包含 true;否则包含 false。 + 一个返回其单个元素的 。 + 要在序列中定位的对象。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列中的元素数。 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回满足条件的序列中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回满足条件的序列中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回序列中的元素数。 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回序列的第一个元素。 + 表示异步操作的任务。任务结果包含 中的第一个元素。 + 一个返回其第一个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 源序列为空。 + + + 异步返回满足指定条件的序列的第一个元素。 + 表示异步操作的任务。任务结果包含通过 中测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + + + 异步返回满足指定条件的序列的第一个元素。 + 表示异步操作的任务。任务结果包含通过 中测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + + + 异步返回序列的第一个元素。 + 表示异步操作的任务。任务结果包含 中的第一个元素。 + 一个返回其第一个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 源序列为空。 + + + 异步返回序列的第一个元素;如果序列不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果 为空,则任务结果包含 default ();否则,包含 中的第一个元素。 + 一个返回其第一个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回满足指定条件的序列的第一个元素;如果未找到此类元素,则返回默认值。 + 表示异步操作的任务。如果 为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回满足指定条件的序列的第一个元素;如果未找到此类元素,则返回默认值。 + 表示异步操作的任务。如果 为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的 中的第一个元素。 + 一个返回其第一个元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + + + 异步返回序列的第一个元素;如果序列不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果 为空,则任务结果包含 default ();否则,包含 中的第一个元素。 + 一个返回其第一个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + 等待任务完成期间要观察的 。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + + 的元素的类型。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要枚举的 。 + 要对每个元素执行的操作。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在其上调用 Include 的源 。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 IQueryable&lt;T&gt;,它具有定义的查询路径。 + 要在其上调用 Include 的源 IQueryable。 + 表示要包括的路径的 lambda 表达式。 + 要查询的实体类型。 + 要包含的导航属性的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在其上调用 Include 的源 。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + 要查询的实体类型。 + + + 枚举服务器查询等查询,例如 的查询,以及查询结果将加载到关联的 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 + 源查询。 + + + 异步枚举服务器查询等查询,例如 的查询,以及查询结果将加载到关联的 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 + 表示异步操作的任务。 + 源查询。 + + + 异步枚举服务器查询等查询,例如 的查询,以及查询结果将加载到关联的 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 + 表示异步操作的任务。 + 源查询。 + 等待任务完成期间要观察的 。 + + + 异步返回表示序列中的总元素数的 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回表示满足条件的序列中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回表示满足条件的序列中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中条件的序列中的元素数。 + 包含要进行计数的元素的 。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 满足谓词函数中条件的 中的元素数大于 + + + 异步返回表示序列中的总元素数的 + 表示异步操作的任务。任务结果包含输入序列中的元素数。 + 包含要进行计数的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步返回序列的最大值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最大结果值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最大结果值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的最大值。 + 表示异步操作的任务。任务结果包含序列中的最大值。 + 包含用于确定最大值的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的最小值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最小结果值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 对序列的每个元素异步调用投影函数,并返回最小结果值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + 表示的函数返回的值类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的最小值。 + 表示异步操作的任务。任务结果包含序列中的最小值。 + 包含用于确定最小值的元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列的唯一元素;如果序列中并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素。 + 一个返回其单个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 源序列为空。 + + + 异步返回满足指定条件的序列的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素。 + 一个 ,用于返回单个元素。 + 用于测试元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回满足指定条件的序列的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素。 + 一个返回其单个元素的 。 + 用于测试元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回序列的唯一元素;如果序列中并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素。 + 一个返回其单个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + 源序列为空。 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + + + 异步返回满足指定条件的序列的唯一元素;如果此类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素;如果没有找到此类元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + 用于测试元素是否满足条件的函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回满足指定条件的序列的唯一元素;如果此类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的输入序列的单个元素;如果没有找到此类元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + 用于测试元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含输入序列的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 一个返回其单个元素的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 具有多个元素。 + + + 跳过序列中指定数量的元素,然后返回剩余的元素。 + 一个序列,其中包含输入序列中指定索引后出现的元素。 + 要从中返回元素的序列。 + 计算结果为要跳过的元素数的表达式。 + source 的元素的类型。 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 要计算其总和的可为 null 的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和。 + 表示异步操作的任务。任务结果包含序列中值的总和。 + 一个要计算其总和的 值序列。 + 等待任务完成期间要观察的 。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + 中的元素数量大于 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算可为 null 的 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 异步计算 值序列的总和,该序列是通过对输入序列中的每个元素调用投影函数而获得的。 + 表示异步操作的任务。任务结果包含投影值的总和。 + 一个类型为 的值序列。 + 要应用于每个元素的投影函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 为 null。 + + 不实现 + + + 从序列开始处起,返回指定数量的连续元素。 + 一个序列,其中包含输入序列开头的指定数量的元素。 + 要从中返回元素的序列。 + 计算结果为要返回的元素数的表达式。 + source 的元素的类型。 + + + 通过异步枚举从 创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + 要从中创建数组的 。 + + 的元素的类型。 + + + 通过异步枚举从 创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + 要从中创建数组的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + + 创建 ,方法是:根据指定的键选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + + 的元素的类型。 + + 返回的键类型。 + + + 创建 ,方法是:根据指定的键选择器函数和比较器来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + + 的元素的类型。 + + 返回的键类型。 + + + 创建 ,方法是:根据指定的键选择器函数和比较器来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + + 创建 ,方法是:根据指定的键选择器函数和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数、比较器和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数、比较器和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数和元素选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + 返回的值的类型。 + + + 创建 ,方法是:根据指定的键选择器函数来异步枚举它。 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 一个将从中创建 。 + 用于从每个元素中提取键的函数。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + 返回的键类型。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个将从中创建 。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个将从中创建 。 + 等待任务完成期间要观察的 。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个将从中创建 。 + + 的元素的类型。 + + + 通过异步枚举从 创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 一个要从中创建列表的 。 + 等待任务完成期间要观察的 。 + + 的元素的类型。 + + + 在执行数据库命令或查询期间控制事务创建行为。 + + + 如果存在现有事务,则使用它,否则在没有事务的情况下执行命令或查询。 + + + 如果不存在任何事务,则使用新事务进行操作。 + + + 表示在尝试准备或执行 CommandCompilation 时出现的失败。此异常旨在提供一个常见异常,人们可以捕获该异常以便在使用 EntityCommand 执行语句时承载提供程序异常(SqlException、OracleException)。 + + + 初始化 的新实例,没有消息,没有内部异常。可能不应该存在,但它有益于 FxCop。 + + + 使用消息(但没有内部异常)初始化 的新实例。可能不应该存在,但它有益于 FxCop。 + 消息。 + + + 使用消息和内部异常实例初始化 的新实例。 + 消息。 + 内部异常。 + + + 表示在尝试准备或执行 CommandExecution 时出现的失败。此异常旨在提供一个常见异常,人们可以捕获该异常以便在使用 EntityCommand 执行语句时承载提供程序异常(SqlException、OracleException)。 + + + 初始化 EntityCommandExecutionException 的新实例,没有消息,没有内部异常。可能不应该存在,但它有益于 FxCop。 + + + 使用消息(但没有内部异常)初始化 EntityCommandExecutionException 的新实例。可能不应该存在,但它有益于 FxCop。 + 描述错误的消息。 + + + 使用消息和内部异常实例初始化 EntityCommandExecutionException 的新实例。 + 描述错误的消息。 + 导致此当前异常的内部异常。 + + + 提供实体客户端使用的异常。 + + + 使用默认值初始化 类的新实例。 + + + 初始化 类的新实例。 + 序列化信息。 + 流上下文。 + + + 初始化接受预先格式化消息的 类的新实例。 + 本地化的错误消息。 + + + 初始化接受预先格式化消息和内部异常的 类的新实例。 + 本地化的错误消息。 + 内部异常。 + + + 表示实体的标识符。 + + + 初始化 类的新实例。 + + + 使用给定的键值初始化 类的新实例。 + 实体的 EntitySet 名称,由 EntityContainer 名称限定。 + 标识实体的键-值对。 + + + 使用给定的键值初始化 类的新实例。 + 实体的 EntitySet 名称,由 EntityContainer 名称限定。 + 标识实体的键-值对。 + + + 使用给定单个键名称和值初始化 类的新实例。 + 实体的 EntitySet 名称,由 EntityContainer 名称限定。 + 标识实体的键名称。 + 标识实体的键值。 + + + 获取或设置 EntityContainer 名称,该名称标识包含实体的实体容器。 + EntityContainer 名称,该名称标识包含实体的实体容器。 + + + 获取或设置标识实体的键值。 + 标识实体的键值。 + + + 获取单一 ,其标识因失败的 TREAT 操作产生的实体。 + 标识因失败的 TREAT 操作产生的实体的单一 + + + 获取或设置 EntitySet 名称,该名称标识包含实体的实体集。 + EntitySet 名称,用于标识包含实体的实体集。 + + + 指示此实例是否与给定的键相等的值。 + 如果此实例与给定的键相等,则为 true;否则为 false。 + 要与此实例进行比较的键。 + + + 指示此实例是否与给定的键相等的值。 + 如果此实例与给定的键相等,则为 true;否则为 false。 + 要与此实例进行比较的键。 + + + 从给定的元数据工作区按实体容器名称和实体集名称获取此实体键的实体集。 + 给定工作区中此实体键的实体集。 + 要在其中查找实体集的工作区。 + 在工作区中找不到该实体集。 + + + 返回基于值的哈希代码,以便允许在哈希表中使用 EntityKey。 + 的哈希值。 + + + 获取一个值,该值指示此键是否为临时键。 + 如果此键是临时键,则为 true;否则为 false。 + + + 获取用来标识只读实体的单一 + 用来标识只读实体的单一 + + + 在反序列化此 后调用。 + 序列化上下文。 + + + 在反序列化此 后调用。 + 序列化上下文。 + + + 指示两个键是否相等的值。 + 如果两个键相等,则为 true;否则为 false。 + 要比较的键。 + 要比较的键。 + + + 指示两个键是否不相等的值。 + 如果两个键不相等,则为 true;否则为 false。 + 要比较的键。 + 要比较的键。 + + + 与作为 EntityKey 的一部分的键有关的信息。键成员包含键名称和值。 + + + 创建空的 EntityKeyMember。此构造函数由序列化过程使用。 + + + 使用指定的键名称和值创建一个新的 EntityKeyMember。 + 键名称 + 键值 + + + 键名称 + + + 返回 EntityKeyMember 的字符串表示形式 + EntityKeyMember 的字符串表示形式 + + + 键值 + + + 表示一个 eSQL Query 编译异常;可能导致引发此异常的异常条件的类别主要是:1) 语法错误:在查询文本分析期间和在某一给定查询与 eSQL 形式语法不符时引发;2) 语义错误:在 eSQL 语言的语义规则未满足时(例如元数据或架构信息等不准确或未提供、类型验证错误、作用域规则冲突、未定义变量的用户等)引发。有关更多信息,请参见 eSQL 语言规范。 + + + 使用一般性错误消息初始化 的新实例。 + + + 使用给定的消息初始化 的新实例。 + 错误消息。 + + + 使用给定的消息和 innerException 实例初始化 的新实例。 + 错误消息。 + 内部异常。 + + + 获取发生错误的大致列号。 + 发生错误的大致列号。 + + + 获取发生错误的大致上下文(如果有)。 + 发生错误的大致上下文(如果有)。 + + + 获取解释未接受查询或空 String.Empty 的原因的错误说明 + 解释未接受查询或空 String.Empty 的原因的错误说明。 + + + 获取发生错误的大致行号 + 发生错误的大致行号。 + + + 提供支持结构化类型和丰富元数据信息的 DataRecord 接口。 + + + 获取描述记录内容的 DataRecordInfo 属性。 + 描述记录内容的 DataRecordInfo 属性。 + + + 以 DbDataReader 对象的形式返回嵌套的读取器。 + 作为 DbDataReader 对象的嵌套读取器。 + 列的序号。 + + + 使用指定的索引获取一个 DbDataRecord 对象。 + DbDataRecord 对象。 + 行的索引。 + + + 引发来指示命令目录树无效。 + + + 使用默认消息构造一个新的 InvalidCommandTreeException。 + + + 使用指定的消息构造一个新的 InvalidCommandTreeException。 + 异常消息 + + + 使用指定的消息和内部异常构造一个新的 InvalidCommandTreeException。 + 异常消息。 + 导致此 InvalidCommandTreeException 的异常。 + + + 映射异常类。请注意,此类具有状态 - 因此,即使您更改其内部,也可能是重大更改 + + + 具有默认消息的构造函数 + + + 默认构造函数 + 本地化的错误消息 + + + 构造函数 + 本地化的错误消息 + 内部异常 + + + 元数据异常类 + + + 具有默认消息的构造函数 + + + 默认构造函数 + 本地化的错误消息 + + + 构造函数 + 本地化的错误消息 + 内部异常 + + + 在存储区中找不到请求的对象时将引发此异常。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + + + 初始化 类的新实例以及初始化获取消息和内部异常的构造函数的新实例。 + 本地化的错误消息。 + 内部异常。 + + + 在更新操作与并发约束冲突时将会引发此异常。 + + + 使用默认值初始化 类的新实例。 + + + 使用指定的消息初始化 类的新实例。 + 与异常关联的消息。 + + + 使用指定的消息和内部异常初始化 类的新实例。 + 与异常关联的消息。 + 导致异常的错误。 + + + 使用指定的消息和内部异常初始化 类的新实例。 + 消息。 + 导致异常的错误。 + 状态项。 + + + 表示属性约束异常类。请注意,此类具有状态 - 因此,即使您更改其内部,也可能是重大更改。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + + + 使用提供的消息和内部异常初始化 类的新实例 + 本地化的错误消息。 + 内部异常。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + 属性名称。 + + + 初始化 类的新实例。 + 本地化的错误消息。 + 属性名称。 + 内部异常。 + + + 获取违反了约束的属性的名称。 + 违反了约束的属性的名称。 + + + 在存储提供程序表现出的行为与实体客户端提供程序不兼容时引发的异常。 + + + 初始化 类的新实例。 + + + 使用指定的错误消息初始化 类的新实例。 + 描述此异常的错误消息。 + + + 使用指定的错误消息和内部异常初始化 类的新实例。 + 描述此异常的错误消息。 + 造成当前异常的内部异常。 + + + 在将更改保存到存储区期间引发的异常无法更新。 + + + 使用默认值初始化 类的新实例。 + + + 使用序列化数据初始化 类的新实例。 + 包含有关异常的序列化信息的对象。 + 有关源或目标的上下文信息。 + + + 初始化带有错误消息的 类的新实例。 + 描述此异常的错误消息。 + + + 初始化带有错误消息和内部异常的 类的新实例。 + 描述此异常的错误消息。 + 造成当前异常的内部异常。 + + + 初始化带有错误消息、内部异常和状态条目的 类的新实例。 + 描述此异常的错误消息。 + 造成当前异常的内部异常。 + 错误中暗含的状态条目。 + + + 获取错误中暗含的状态条目。 + 错误中暗含的状态条目。 + + + 提供一个简单方法以便访问类型信息和列信息的 DataRecordInfo 类。 + + + 使用数据字段的可枚举集合初始化一个特定类型的新 对象。 + 此对象表示的类型的元数据,由 提供。 + 表示列信息的 对象的可枚举集合。 + + + 获取此 对象的 + + 对象。 + + + 获取此对象的类型信息作为 对象。 + 一个 值。 + + + 表示准备好的命令定义,可以缓存和重复使用以便避免重新准备命令。 + + + 初始化 类的新实例。 + + + 使用提供的 初始化 类的新实例。 + 提供的 。 + 用于克隆 的方法 + + + 创建和返回可执行的 DbCommand 对象。 + 用于数据库的命令。 + + + 所有 CLR 类型的元数据接口 + + + 初始化 类的新实例。 + + + 排序规则方面的名称 + + + 要传递给 GetInformation 以便获取 ConceptualSchemaDefinition 的值 + + + 要传递给 GetInformation 以便获取 ConceptualSchemaDefinitionVersion3 的值 + + + DefaultValue 方面的名称 + + + 提供程序编写人员应重写此方法,以返回带有已转义的通配符和转义符的参数。仅当 SupportsEscapingLikeArgument 返回 true 时才使用此方法。 + 带有已转义的通配符和转义符的参数。 + 要转义的参数。 + + + FixedLength 方面的名称 + + + 在派生类中重写时,此方法返回特定于提供程序的信息。 + 表示基础数据存储目录的映射的 XmlReader 对象。 + 要返回的信息的类型。 + + + 在派生类中重写时,此方法将指定的存储类型以及该类型的一组方面映射到 EDM 类型。 + 描述 EDM 类型以及该类型的一组方面的 实例。 + TypeUsage 实例,它描述要映射到 EDM 类型的存储类型以及该类型的一组方面。 + + + 返回特定类型的 FacetDescription 对象。 + 用于指定的 EDM 类型的 FacetDescription 对象。 + 要返回方面描述的 EDM 类型。 + + + 获取特定于提供程序的信息。 + 特定于提供程序的信息。 + 要返回的信息的类型。 + + + 在派生类中重写时,返回提供程序清单支持的 EDM 函数的集合。 + EDM 函数的集合。 + + + 在派生类中重写时,此方法将指定的 EDM 类型以及该类型的一组方面映射到存储类型。 + TypeUsage 实例,它描述存储类型以及该类型的一组方面。 + TypeUsage 实例,它描述要映射到存储类型的 EDM 类型以及该类型的一组方面。 + + + 在派生类中重写时,返回数据源支持的一组基元类型。 + 数据源支持的一组类型。 + + + IsStrict 方面的名称 + + + MaxLength 方面的名称 + + + 获取此提供程序清单使用的命名空间。 + 此提供程序清单使用的命名空间。 + + + Nullable 方面的名称 + + + Precision 方面的名称 + + + Scale 方面的名称 + + + SRID 方面的名称 + + + 要传递给 GetInformation 以便获取 StoreSchemaDefinition 的值 + + + 要传递给 GetInformation 以便获取 StoreSchemaDefinitionVersion3 的值 + + + 要传递给 GetInformation 以便获取 StoreSchemaMapping 的值 + + + 要传递给 GetInformation 以便获取 StoreSchemaMappingVersion3 的值 + + + 指示提供程序是否支持在 Like 表达式中使用转义字符串作为模式。 + 如果此提供程序支持在 Like 表达式中使用转义字符串作为模式,则返回 true;否则返回 false。 + 如果提供程序支持转义,则为要用作转义符的字符。 + + + 返回一个布尔值,该布尔值指定提供程序是否可处理包含 DbInExpression 的实例的表达式目录树。默认实现返回 false 以保证向后兼容性。派生类可以重写此方法。 + false + + + Unicode 方面的名称 + + + 用于生成命令定义的工厂;使用该对象的类型作为提供程序工厂上 IServiceProvider.GetService 方法的参数; + + + 初始化 类的新实例。 + + + 添加一个 ,它将用于在使用应用程序配置文件中的某一项或通过 中基于代码的注册将某派生类型注册为 EF 提供程序时解析附加的默认提供程序服务。 + 要添加的解析程序。 + + + 请参见问题 2390 - 在 DbCommand 上克隆 DesignTimeVisible 属性可能导致死锁。因此此处允许重写子类。 + + 的克隆版本 + 要克隆的 对象 + + + 基于原型命令创建默认的 DbCommandDefinition 对象。此方法旨在使提供程序编写者从命令生成默认命令定义。注意:这将克隆原型 + 可执行的命令定义对象 + 原型命令 + + + 若给定命令目录树,创建命令定义对象。 + 可执行的命令定义对象 + 语句的命令目录树 + + + 从指定的清单和命令目录树创建命令定义。 + 已创建的命令定义。 + 清单。 + 命令目录树。 + + + 创建一个由连接指示的数据库并且基于 storeItemCollection 的内容创建架构对象(表、主键、外键)。 + 与需要创建并且用 storeItemCollection 参数指示的存储对象进行填充的不存在的数据库的连接。 + 创建数据库所需的任何命令的执行超时。 + 创建脚本所应基于的所有存储项的集合。 + + + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本,生成可创建架构对象(表、主键、外键)的数据定义语言 (DDL) 脚本。 + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本创建架构对象的 DDL 脚本。 + 标识目标版本的提供程序清单标记。 + 数据库的结构。 + + + 为指定的提供程序清单和命令目录树创建命令定义对象。 + 可执行的命令定义对象。 + 以前从存储提供程序检索的提供程序清单。 + 语句的命令目录树。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 创建一个由连接指示的数据库并且基于 StoreItemCollection 的内容创建架构对象(表、主键、外键)。 + 与需要创建并且用 storeItemCollection 参数指示的存储对象进行填充的不存在的数据库的连接。 + 创建数据库所需的任何命令的执行超时。 + 创建脚本所应基于的所有存储项的集合。 + + + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本,生成可创建架构对象(表、主键、外键)的数据定义语言 (DDL) 脚本。 + 基于 StoreItemCollection 参数的内容并针对与提供程序清单标记相对应的数据库版本创建架构对象的 DDL 脚本。 + 标识目标版本的提供程序清单标记。 + 数据库的结构。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 返回一个值,该值指示服务器上是否存在给定数据库。 + 如果提供程序仅基于连接就可推导数据库,则为 true。 + 与通过此方法检查其是否存在的数据库的连接。 + 确定数据库是否存在所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于确定数据库是否存在。 + + + 删除指定的数据库。 + 到某个需要删除的现有数据库的连接。 + 删除数据库所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于删除数据库。 + + + 获取空间服务。 + 空间服务。 + 与提供程序清单关联的标记信息。 + + + 删除指定的数据库。 + 到某个需要删除的现有数据库的连接。 + 删除数据库所需的任何命令的执行超时。 + 模型中所有存储项的集合。该参数不再用于删除数据库。 + + + 如果给定路径以 |DataDirectory| 开头则展开该路径中的 |DataDirectory| 并且返回扩展的路径;如果给定路径未以 |DataDirectory| 开头,则返回给定字符串。 + 展开的路径。 + 要展开的路径。 + + + 返回表示 CSDL 说明的 XML 读取器 + 表示 CSDL 说明的 XmlReader + CSDL 说明的名称。 + + + 在派生类中重写时,返回派生自 DbProviderManifest 的类的实例。 + 表示提供程序清单的 DbProviderManifest 对象。 + 与提供程序清单关联的标记信息。 + + + 返回给定连接的提供程序清单标记。 + 指定连接的提供程序清单标记。 + 从中查找清单标记的连接。 + + + 获取空间数据读取器。 + 空间数据读取器。 + 空间数据来自于的读取器。 + 与提供程序清单关联的标记信息。 + + + 获取将用于执行使用指定连接的方法的 + + 的一个新实例。 + 数据库连接 + + + 获取将用于执行使用指定连接的方法的 。此重载应由派生类用于与包装提供程序兼容。 + + 的一个新实例。 + 数据库连接 + 提供程序固定名 + + + 基于指定的 DbConnection 检索 DbProviderFactory。 + 检索到的 DbProviderFactory。 + 要使用的连接。 + + + 使用指定的版本信息返回提供程序清单。 + 使用指定版本信息的提供程序清单。 + 与提供程序清单关联的标记信息。 + + + 返回给定连接的提供程序清单标记。 + 提供程序清单标记。 + 到提供程序的连接。 + + + 返回给定连接的提供程序。 + 基于指定连接实例化的 + 到提供程序的连接。 + + + 在使用应用程序配置文件中的某一项或通过 中基于代码的注册将某一派生类型注册为 EF 提供程序时调用,用于解析附加的默认提供程序服务。此类中此方法的实现使用通过 AddDependencyResolver 方法添加的解析程序来解析依赖项。 + 给定类型的实例;如果无法解析服务,则为 null。 + 要解析的服务的类型。 + 为解析服务提供附加信息的可选键。 + + + 在使用应用程序配置文件中的某一项或通过 中基于代码的注册将某一派生类型注册为 EF 提供程序时调用,用于解析附加的默认提供程序服务。此类中此方法的实现使用通过 AddDependencyResolver 方法添加的解析程序来解析依赖项。 + 满足给定类型和键的所有注册的服务;如果没有,则为空枚举。 + 要解析的服务的类型。 + 为解析服务提供附加信息的可选键。 + + + 获取空间数据读取器。 + 空间数据读取器。 + 空间数据来自于的读取器。 + 与提供程序清单关联的清单标记。 + + + 获取空间服务。 + 空间服务。 + 有关将对其使用空间服务的数据库的信息。 + + + 获取空间服务。 + 空间服务。 + 与提供程序清单关联的标记信息。 + + + 注册一个处理程序,以处理来自数据库提供程序的非错误消息。 + 用来接收信息的连接。 + 用于处理消息的处理程序。 + + + 为给定的 设置参数值和适当的方面。 + 参数。 + 参数的类型。 + 参数的值。 + + + 为给定的 设置参数值和适当的方面。 + 参数。 + 参数的类型。 + 参数的值。 + + + 接受 XmlReader 的 ProviderManifest 的专用化 + + + 初始化 类的新实例。 + 一个 对象,该对象提供对提供程序清单文件中的 XML 数据的访问。 + + + 返回指定的 Entity Data Model (EDM) 类型的方面说明列表。 + 一个 类型的集合,其中包含指定的 EDM 类型的方面说明列表。 + 要为其检索方面说明的 。 + + + 返回提供程序支持的函数的列表。 + 一个 类型的集合,其中包含提供程序支持的函数的列表。 + + + 返回存储提供程序支持的基元类型的列表。 + 一个 类型的集合,其中包含存储提供程序支持的基元类型的列表。 + + + 获取此提供程序清单支持的命名空间名称。 + 此提供程序清单支持的命名空间名称。 + + + 获取指定的存储类型名称的最佳映射等效 Entity Data Model (EDM) 类型。 + 指定的存储类型名称的最佳映射等效 EDM 类型。 + + + 获取指定的存储类型名称的最佳映射等效存储基元类型。 + 指定的存储类型名称的最佳映射等效存储基元类型。 + + + 提供一个简单方法以便访问类型信息和列信息的 EntityRecordInfo 类。 + + + 使用数据字段的可枚举集合、特定键和实体集信息初始化特定实体类型的 类的新实例。 + 实体的 ,由该 对象描述的 表示。 + 表示列信息的 对象的可枚举集合。 + 实体的键。 + 该实体所属的实体集。 + + + 获取实体的 + 实体的键。 + + + 在列序号和 MemberMetadata 之间提供关联的 FieldMetadata 类。 + + + 使用指定的序号值和字段类型初始化新的 对象。 + 用于指定元数据位置的整数。 + 字段类型。 + + + 获取此 对象的字段类型。 + 对象的字段类型。 + + + 获取此 对象的序号。 + 表示序号值的整数。 + + + 表示实现要派生自的 IExpressionVisitor 接口的类型的抽象基类型。 + + + 初始化 类的新实例。 + + + 实现命令目录树的访问者模式。 + 命令目录树。 + + + 实现删除命令目录树的访问者模式。 + 删除命令目录树。 + + + 实现函数命令目录树的访问者模式。 + 函数命令目录树。 + + + 实现插入命令目录树的访问者模式。 + 插入命令目录树。 + + + 实现修改子句的访问者模式。 + 修改子句。 + + + 实现修改子句的集合的访问者模式。 + 修改子句。 + + + 实现查询命令目录树的访问者模式。 + 查询命令目录树。 + + + 实现 set 子句的访问者模式。 + set 子句。 + + + 实现更新命令目录树的访问者模式。 + 更新命令目录树。 + + + 实现要派生自的 IExpressionVisitor 接口的类型的抽象基类型。 + + + 初始化 类的新实例。 + + + + 的访问者模式方法。 + 正在访问的 DbAndExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbApplyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbArithmeticExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbCaseExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbCastExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbComparisonExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbConstantExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbCrossJoinExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DeRefExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbDistinctExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbElementExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbEntityRefExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbExceptExpression。 + + 为 null + + + 遇到其他无法识别的类型的 时进行调用。 + 表达式 + + 为 null + 如果调用此方法,则始终引发,因为它指示 属于不支持的类型 + + + + 的访问者模式方法。 + 正在访问的 DbFilterExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbFunctionExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbInExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIntersectExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIsEmptyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIsNullExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbIsOfExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbJoinExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbLambdaExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbLikeExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbLimitExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbNewInstanceExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbNotExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbNullExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbOfTypeExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbOrExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbParameterReferenceExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbProjectExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbPropertyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbQuantifierExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbRefExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbRefKeyExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbRelationshipNavigationExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbScanExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbSkipExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbSortExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbTreatExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbUnionAllExpression。 + + 为 null + + + + 的访问者模式方法。 + 正在访问的 DbVariableReferenceExpression。 + + 为 null + + + 用于访问指定的 的方便的方法。 + 要访问的聚合。 + + 为 null + + + 用于访问列表中的每个 (如果列表是非 null 的)的方便的方法。 + 要访问的聚合的列表。 + + 为 null + + + 用于访问指定的 的方便的方法。 + 要访问的 DbBinaryExpression。 + + 为 null + + + 用于访问指定的 的方便的方法(如果非 null)。 + 要访问的表达式。 + + 为 null + + + 用于在访问了 DbExpressionBinding 后进行后处理的方便的方法。 + 以前访问的 DbExpressionBinding。 + + + 用于访问指定的 的方便的方法。 + 要访问的 DbExpressionBinding。 + + 为 null + + + 用于访问给定列表中的每个 (如果列表是非 null 的)的方便的方法。 + 要访问的表达式的列表。 + + 为 null + + + 指示 的分组键已访问并且现在将要访问聚合的方便的方法。 + DbGroupByExpression 的 DbGroupExpressionBinding + + + 用于在访问了 DbGroupExpressionBinding 后进行后处理的方便的方法。 + 以前访问的 DbGroupExpressionBinding。 + + + 用于访问指定的 的方便的方法。 + 要访问的 DbGroupExpressionBinding。 + + 为 null + + + 用于在访问了 DbLambda 后进行后处理的方便的方法。 + 以前访问的 DbLambda。 + + + 指示现在将要访问的 Lambda 的正文的方便方法。 + 将要访问的 DbLambda。 + + 为 null + + + 用于访问指定的 的方便的方法。 + 要访问的 DbUnaryExpression。 + + 为 null + + + 聚合是伪表达式。聚合在外观上与表达式相似,但其可以出现的位置有严格的限制 - 只能出现在 group-by 表达式的聚合子句中。 + + + 获取定义要聚合的参数的表达式列表。 + + + 获取此聚合的结果类型。 + + + 表示两个 Boolean 参数之间的逻辑与运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示一个应用运算,它是对指定输入集中的每个元素的指定 functor 调用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取 ,它指定对输入集中的每个元素调用的 functor。 + + + 获取用于指定输入集的 + + + 表示应用于两个数值参数的算术运算(加法、减法、乘法、除法、取模或求反)。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于定义当前参数的表达式列表。 + + + 接受两个表达式操作数的表达式的抽象基类型。 + + + 获取定义左边参数的 + + + 获取定义右边参数的 + + + 表示 Case When...Then...Else 逻辑运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取此 DbCaseExpression 的 Else 子句。 + + + 获取此 DbCaseExpression 的 Then 子句。 + + + 获取此 DbCaseExpression 的 When 子句。 + + + 表示应用于多态参数的强制转换运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示删除、查询、插入和更新 DbCommandTree 类型的抽象基类型。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取此命令目录树所使用的元数据必须驻留于其中的数据空间。 + 此命令目录树所使用的元数据必须驻留于其中的数据空间。 + + + 获取此命令目录树使用的元数据工作区。 + 此命令目录树使用的元数据工作区。 + + + 获取在此命令目录树中可以引用的每个参数的名称和相应类型。 + 在此命令目录树中可以引用的每个参数的名称和相应类型。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 获取命令目录树是否使用数据库的 null 语义。 + 命令目录树使用数据库的 null 语义。 + + + 描述不同的数据库命令。 + + + 指定删除命令。 + + + 指定函数命令。 + + + 指定插入命令。 + + + 指定查询命令。 + + + 指定更新命令。 + + + 表示应用于两个参数的比较运算(相等、大于、大于或等于、小于、小于或等于、不相等)。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示常量值。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取常量值。 + + + 表示给定集合参数之间的无条件联接运算 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个 列表,该列表提供要联接的输入集。 + + + 表示用一个规范命令目录树代表的单行删除操作。 + + + 初始化 类的新实例。 + 元数据工作区。 + 数据空间。 + 数据库表达式绑定。 + 数据库表达式。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取一个 ,它指定用于确定目标集合中应删除的成员的谓词。 + 用于确定目标集合中应删除的成员的谓词。 + + + 使用指定的 Ref 表示给定实体的检索。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示从指定的集操作数中删除重复的元素。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示指定的集操作数到单一实例的转换。如果该集为空,则转换将返回 null;否则,该转换将返回集中的元素之一。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示作为 Ref 对指定实体的引用的检索。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示左右操作数之间的集减法运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示所有表达式的基类型。 + + + 实现不生成结果值的表达式访问者的访问者模式接口。 + DbExpressionVisitor 的实例。 + + 为 null。 + + + 实现生成特定类型的结果值的表达式访问者的访问者模式接口方法。 + + 的一个实例。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + + 生成的结果的类型。 + + 为 null。 + + + 确定指定的对象是否等于当前 DbExpression 实例。 + 如果指定的对象等于当前 DbExpression 实例,则为 true;否则为 false。 + 要与当前 进行比较的对象。 + + + 获取表达式的类型,类型指示该表达式的运算。 + 表达式的类型,指示该表达式的运算。 + + + 创建表示指定的二进制值的 ,可以为 null。 + 表示指定的二进制值的 + 返回的表达式应基于的二进制值。 + + + 创建表示指定的(可以为 null)布尔值的 + 表示指定的布尔值的 + 返回的表达式应基于的布尔值。 + + + 创建表示指定的(可以为 null)字节值的 + 表示指定的字节值的 + 返回的表达式应基于的字节值。 + + + 创建表示指定的(可以为 null) 值的 + 表示指定的 DateTime 值的 + 返回的表达式应基于的 DateTime 值。 + + + 创建表示指定(可为空值的) 值的 + 表示指定的 DateTimeOffset 值的 + 返回的表达式应基于的 DateTimeOffset 值。 + + + 创建表示指定的(可以为 null)十进制值的 + 表示指定的十进制值的 + 返回的表达式应基于的十进制值。 + + + 创建表示指定的(可以为 null)双精度值的 + 表示指定的双精度值的 + 返回的表达式应基于的双精度值。 + + + 创建表示指定的 值的 ,可以为 null。 + 表示指定的 DbGeography 值的 + 返回的表达式应基于的 DbGeography 值。 + + + 创建表示指定的 值的 ,可以为 null。 + 表示指定的 DbGeometry 值的 + 返回的表达式应基于的 DbGeometry 值。 + + + 创建表示指定(可为空值的) 值的 + 表示指定的 Guid 值的 + 返回的表达式应基于的 Guid 值。 + + + 创建表示指定的(可以为 null)Int16 值的 + 表示指定的 Int16 值的 + 返回的表达式应基于的 Int16 值。 + + + 创建表示指定的(可以为 null)Int32 值的 + 表示指定的 Int32 值的 + 返回的表达式应基于的 Int32 值。 + + + 创建表示指定的(可以为 null)Int64 值的 + 表示指定的 Int64 值的 + 返回的表达式应基于的 Int64 值。 + + + 创建表示指定的(可以为 null)单精度值的 + 表示指定的单精度值的 + 返回的表达式应基于的单精度值。 + + + 创建表示指定的字符串值的 + 表示指定的字符串值的 + 返回的表达式应基于的字符串值。 + + + 用作此类型的哈希函数。 + 返回当前表达式的哈希代码。 + + + 将一个 8 位无符号整数数组转换成 + 一个 ,表示转换后的 8 位无符号整数数组。 + 一个 8 位无符号整数数组。 + + + 将一个 DbGeography 对象转换成 + 表示转换后的 DbGeography 对象的 + DbGeography 对象。 + + + 将一个 DBGeometry 对象转换成 + 表示转换后的 DbGeography 对象的 + DbGeometry 对象。 + + + 将一个可以为 null 的布尔对象转换为 + 表示转换后的可以为 null 的布尔对象的 + 可以为 null 的布尔对象。 + + + 将一个可以为 null 的 8 位无符号整数转换成 + 表示转换后的 8 位无符号整数的 + 可以为 null 的 8 位无符号整数。 + + + 将一个可以为 null 的 对象转换成 + 一个表示 对象的 + 可为 null 的 对象。 + + + 将一个可以为 null 的 对象转换成 + 一个表示可以为 null 的 + 可为 null 的 对象。 + + + 将一个可以为 null 的十进制对象转换为 + 表示可以为 null 的十进制对象的 + 可以为 null 的十进制对象。 + + + 将一个可以为 null 的双精度对象转换为 + 表示可以为 null 的双精度对象的 + 可以为 null 的双精度对象。 + + + 将一个可以为 null 的 Guid 对象转换为 + 一个 ,表示可为 null 的 对象。 + 可为 null 的 对象。 + + + 将一个可以为 null 的 16 位无符号整数转换成 + 一个 ,表示可为 null 的 16 位无符号整数。 + 可以为 null 的 16 位无符号整数。 + + + 将一个可以为 null 的 32 位无符号整数转换成 + 一个 ,表示可为 null 的 32 位无符号整数。 + 可以为 null 的 32 位无符号整数。 + + + 将一个可以为 null 的 64 位无符号整数转换成 + 一个 ,表示可为 null 的 64 位无符号整数。 + 可以为 null 的 64 位无符号整数。 + + + 将一个可以为 null 的单精度浮点数字转换成 + 一个表示单精度浮点数字的 + 单精度浮点数。 + + + 转换 Unicode 字符 的有序集合。 + 表示 Unicode 字符的有序集合的 + Unicode 字符的有序集合。 + + + 获取表达式的结果类型的类型元数据。 + 表达式的结果类型的类型元数据。 + + + 描述表达式的绑定。在概念上与 C# 中的 foreach 循环类似。DbExpression 属性定义要循环访问的集合,而 Var 属性提供一个方式以便在迭代过程中引用该集合的当前元素。DbExpressionBinding 用于描述关系表达式(例如 )的集参数。 + + + 获取用于定义输入集的 + + + 获取引用元素变量的 + + + 获取指定给元素变量的名称。 + + + 获取元素变量的类型元数据。 + + + 描述表达式的不同“种类”(类) + + + 全部为 True。 + + + 逻辑与。 + + + 任何项均为 True。 + + + 条件 Case 语句。 + + + 多态类型转换。 + + + 一个常量值。 + + + Cross Apply + + + 交叉联接 + + + 引用。 + + + 重复删除。 + + + 除法。 + + + 集到单一转换。 + + + 实体引用值检索。 + + + 相等 + + + Set 减法 + + + 限制。 + + + 完全外部联接 + + + 独立函数的调用 + + + 大于。 + + + 大于或等于。 + + + 分组。 + + + 在其中。 + + + 内部联接 + + + 交集。 + + + 空集确定。 + + + Null 确定。 + + + 类型比较(指定的类型或子类型)。 + + + 类型比较(仅限指定的类型)。 + + + lambda 函数的应用 + + + 左外部联接 + + + 小于。 + + + 小于或等于。 + + + 字符串比较。 + + + 结果计数限制 (TOP n)。 + + + 减法。 + + + 取模。 + + + 乘法。 + + + 实例、行和集构造。 + + + 逻辑非。 + + + 不相等。 + + + Null。 + + + 按类型(或子类型)的集成员。 + + + 按(确切)类型的集成员。 + + + 逻辑或。 + + + Outer Apply。 + + + 对参数的引用。 + + + 加法。 + + + 投影。 + + + 静态或实例属性检索。 + + + 引用。 + + + 引用键值检索。 + + + (组合或关联)关系的导航。 + + + 实体集或关系集扫描。 + + + 跳过有序集合中的元素。 + + + 排序。 + + + 类型转换。 + + + 求反。 + + + 并集(包含重复项)。 + + + 对变量的引用。 + + + 确保某一给定表达式目录树中的所有元数据都来自指定的元数据工作区,并且可能在需要时将表达式重新绑定和重新生成到适当的替代元数据。 + + + 初始化 类的新实例。 + 目标工作区。 + + + 实现检索实例属性的访问者模式。 + 实现的访问者。 + 表达式。 + + + 实现对实体集的访问者模式。 + 实现的访问者模式。 + 实体集。 + + + 实现函数的访问者模式。 + 实现的访问者模式。 + 函数元数据。 + + + 实现类型的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 实现类型用法的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 应由不返回结果值的访问者实现的表达式访问者模式抽象基类。 + + + 初始化 类的新实例。 + + + DbAndExpression 的访问者模式方法。 + 正在访问的 DbAndExpression。 + + + DbApplyExpression 的访问者模式方法。 + 正在访问的 DbApplyExpression。 + + + DbArithmeticExpression 的访问者模式方法。 + 正在访问的 DbArithmeticExpression。 + + + DbCaseExpression 的访问者模式方法。 + 正在访问的 DbCaseExpression。 + + + DbCastExpression 的访问者模式方法。 + 正在访问的 DbCastExpression。 + + + DbComparisonExpression 的访问者模式方法。 + 正在访问的 DbComparisonExpression。 + + + DbConstantExpression 的访问者模式方法。 + 正在访问的 DbConstantExpression。 + + + DbCrossJoinExpression 的访问者模式方法。 + 正在访问的 DbCrossJoinExpression。 + + + DbDerefExpression 的访问者模式方法。 + 正在访问的 DbDerefExpression。 + + + DbDistinctExpression 的访问者模式方法。 + 正在访问的 DbDistinctExpression。 + + + DbElementExpression 的访问者模式方法。 + 正在访问的 DbElementExpression。 + + + DbEntityRefExpression 的访问者模式方法。 + 正在访问的 DbEntityRefExpression。 + + + DbExceptExpression 的访问者模式方法。 + 正在访问的 DbExceptExpression。 + + + 遇到其他无法识别的类型的表达式时进行调用。 + 表达式。 + + + DbFilterExpression 的访问者模式方法。 + 正在访问的 DbFilterExpression。 + + + DbFunctionExpression 的访问者模式方法。 + 正在访问的 DbFunctionExpression。 + + + DbGroupByExpression 的访问者模式方法。 + 正在访问的 DbGroupByExpression。 + + + DbInExpression 的访问者模式方法。 + 正在访问的 DbInExpression。 + + + DbIntersectExpression 的访问者模式方法。 + 正在访问的 DbIntersectExpression。 + + + DbIsEmptyExpression 的访问者模式方法。 + 正在访问的 DbIsEmptyExpression。 + + + DbIsNullExpression 的访问者模式方法。 + 正在访问的 DbIsNullExpression。 + + + DbIsOfExpression 的访问者模式方法。 + 正在访问的 DbIsOfExpression。 + + + DbJoinExpression 的访问者模式方法。 + 正在访问的 DbJoinExpression。 + + + DbLambdaExpression 的访问者模式方法。 + 正在访问的 DbLambdaExpression。 + + + DbLikeExpression 的访问者模式方法。 + 正在访问的 DbLikeExpression。 + + + DbLimitExpression 的访问者模式方法。 + 正在访问的 DbLimitExpression。 + + + DbNewInstanceExpression 的访问者模式方法。 + 正在访问的 DbNewInstanceExpression。 + + + DbNotExpression 的访问者模式方法。 + 正在访问的 DbNotExpression。 + + + DbNullExpression 的访问者模式方法。 + 正在访问的 DbNullExpression。 + + + DbOfTypeExpression 的访问者模式方法。 + 正在访问的 DbOfTypeExpression。 + + + DbOrExpression 的访问者模式方法。 + 正在访问的 DbOrExpression。 + + + DbParameterReferenceExpression 的访问者模式方法。 + 正在访问的 DbParameterReferenceExpression。 + + + DbProjectExpression 的访问者模式方法。 + 正在访问的 DbProjectExpression。 + + + DbPropertyExpression 的访问者模式方法。 + 正在访问的 DbPropertyExpression。 + + + DbQuantifierExpression 的访问者模式方法。 + 正在访问的 DbQuantifierExpression。 + + + DbRefExpression 的访问者模式方法。 + 正在访问的 DbRefExpression。 + + + DbRefKeyExpression 的访问者模式方法。 + 正在访问的 DbRefKeyExpression。 + + + DbRelationshipNavigationExpression 的访问者模式方法。 + 正在访问的 DbRelationshipNavigationExpression。 + + + DbScanExpression 的访问者模式方法。 + 正在访问的 DbScanExpression。 + + + DbSkipExpression 的访问者模式方法。 + 正在访问的 DbSkipExpression。 + + + DbSortExpression 的访问者模式方法。 + 正在访问的 DbSortExpression。 + + + DbTreatExpression 的访问者模式方法。 + 正在访问的 DbTreatExpression。 + + + DbUnionAllExpression 的访问者模式方法。 + 正在访问的 DbUnionAllExpression。 + + + DbVariableReferenceExpression 的访问者模式方法。 + 正在访问的 DbVariableReferenceExpression。 + + + 应由返回特定类型的结果值的访问者实现的表达式访问者模式抽象基类。 + 访问者生成的结果值的类型。 + + + 初始化 类的新实例。 + + + DbAndExpression 的类型化访问者模式方法。 + 正在访问的 DbAndExpression。 + + + DbApplyExpression 的类型化访问者模式方法。 + 正在访问的 DbApplyExpression。 + + + DbArithmeticExpression 的类型化访问者模式方法。 + 正在访问的 DbArithmeticExpression。 + + + DbCaseExpression 的类型化访问者模式方法。 + 正在访问的 DbCaseExpression。 + + + DbCastExpression 的类型化访问者模式方法。 + 正在访问的 DbCastExpression。 + + + DbComparisonExpression 的类型化访问者模式方法。 + 正在访问的 DbComparisonExpression。 + + + DbConstantExpression 的类型化访问者模式方法。 + 正在访问的 DbConstantExpression。 + + + DbCrossJoinExpression 的类型化访问者模式方法。 + 正在访问的 DbCrossJoinExpression。 + + + DbDerefExpression 的访问者模式方法。 + 正在访问的 DbDerefExpression。 + + + DbDistinctExpression 的类型化访问者模式方法。 + 正在访问的 DbDistinctExpression。 + + + DbElementExpression 的类型化访问者模式方法。 + 正在访问的 DbElementExpression。 + + + DbEntityRefExpression 的访问者模式方法。 + 正在访问的 DbEntityRefExpression。 + + + DbExceptExpression 的类型化访问者模式方法。 + 正在访问的 DbExceptExpression。 + + + 遇到其他无法识别的类型的表达式时进行调用。 + 表达式。 + + + DbFilterExpression 的类型化访问者模式方法。 + 正在访问的 DbFilterExpression。 + + + DbFunctionExpression 的访问者模式方法 + 正在访问的 DbFunctionExpression。 + + + DbGroupByExpression 的类型化访问者模式方法。 + 正在访问的 DbGroupByExpression。 + + + DbInExpression 的类型化访问者模式方法。 + 正在访问的 DbInExpression。 + + + DbIntersectExpression 的类型化访问者模式方法。 + 正在访问的 DbIntersectExpression。 + + + DbIsEmptyExpression 的类型化访问者模式方法。 + 正在访问的 DbIsEmptyExpression。 + + + DbIsNullExpression 的类型化访问者模式方法。 + 正在访问的 DbIsNullExpression。 + + + DbIsOfExpression 的类型化访问者模式方法。 + 正在访问的 DbIsOfExpression。 + + + DbJoinExpression 的类型化访问者模式方法。 + 正在访问的 DbJoinExpression。 + + + DbLambdaExpression 的访问者模式方法。 + 正在访问的 DbLambdaExpression。 + + + DbLikeExpression 的访问者模式方法。 + 正在访问的 DbLikeExpression。 + + + DbLimitExpression 的访问者模式方法。 + 正在访问的 DbLimitExpression。 + + + DbNewInstanceExpression 的类型化访问者模式方法。 + 正在访问的 DbNewInstanceExpression。 + + + DbNotExpression 的类型化访问者模式方法。 + 正在访问的 DbNotExpression。 + + + DbNullExpression 的类型化访问者模式方法。 + 正在访问的 DbNullExpression。 + + + DbOfTypeExpression 的类型化访问者模式方法。 + 正在访问的 DbOfTypeExpression。 + + + DbOrExpression 的类型化访问者模式方法。 + 正在访问的 DbOrExpression。 + + + DbParameterReferenceExpression 的类型化访问者模式方法。 + 正在访问的 DbParameterReferenceExpression。 + + + DbProjectExpression 的类型化访问者模式方法。 + 正在访问的 DbProjectExpression。 + + + DbPropertyExpression 的类型化访问者模式方法。 + 正在访问的 DbPropertyExpression。 + + + DbQuantifierExpression 的类型化访问者模式方法。 + 正在访问的 DbQuantifierExpression。 + + + DbRefExpression 的类型化访问者模式方法。 + 正在访问的 DbRefExpression。 + + + DbRefKeyExpression 的访问者模式方法。 + 正在访问的 DbRefKeyExpression。 + + + DbRelationshipNavigationExpression 的类型化访问者模式方法。 + 正在访问的 DbRelationshipNavigationExpression。 + + + DbScanExpression 的类型化访问者模式方法。 + 正在访问的 DbScanExpression。 + + + DbSkipExpression 的类型化访问者模式方法。 + 正在访问的 DbSkipExpression。 + + + DbSortExpression 的类型化访问者模式方法。 + 正在访问的 DbSortExpression。 + + + DbTreatExpression 的类型化访问者模式方法。 + 正在访问的 DbTreatExpression。 + + + DbUnionAllExpression 的类型化访问者模式方法。 + 正在访问的 DbUnionAllExpression。 + + + DbVariableReferenceExpression 的类型化访问者模式方法。 + 正在访问的 DbVariableReferenceExpression。 + + + 表示一个谓词,该谓词应用于某一输入集以便生成满足它的一组元素。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取指定用于筛选输入集的谓词的 + + + 对应于聚合函数的调用的聚合类型。 + + + 获取一个值,该值指示是否以不同风格应用聚合函数 + + + 获取指定要调用的聚合函数的方法元数据。 + + + 表示以规范命令树表示的函数调用。 + + + 构造一个新的 DbFunctionCommandTree,它使用指定的元数据工作区、数据空间和函数元数据。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 要调用的 EDM 函数。 + 函数的结果类型。 + 与要调用的函数关联的参数。 + + + 获取或设置命令目录树类型。 + 命令目录树类型。 + + + 获取表示要调用的函数的 + 表示要调用的函数的 + + + 获取函数的结果类型;当前被约束为 RowTypes 的集合。与典型的 RowType 实例不同,仅指示名称/类型不是参数顺序。 + 函数的结果类型。 + + + 表示对函数的调用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取 列表,该列表提供函数的参数。 + + + 获取要调用的函数的元数据。 + + + 表示构成组的元素的集合。 + + + 表示一个分组运算,分组运算是根据指定的键表达式将输入集中的元素分组,后接指定聚合函数的应用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取 列表,该列表提供要应用的聚合函数。 + + + 获取 ,它指定输入集,并提供对集元素和组元素变量的访问。 + + + 获取 列表,该列表提供分组键。 + + + 定义输入集到 的绑定。除了 的属性之外,DbGroupExpressionBinding 还通过 <seealso cref="P:System.Data.Entity.Core.Common.CommandTrees.DbGroupExpressionBinding.GroupVariable" /> 变量引用提供对组元素的访问,并且通过 <seealso cref="P:System.Data.Entity.Core.Common.CommandTrees.DbGroupExpressionBinding.GroupAggregate" /> 属性提供对组聚合的访问。 + + + 获取用于定义输入集的 + + + 获取 DbGroupAggregate,它表示组的元素集合。 + + + 获取引用组元素变量的 DbVariableReferenceExpression。 + + + 获取指定给组元素变量的名称。 + + + 获取组元素变量的类型元数据。 + + + 获取引用元素变量的 DbVariableReferenceExpression。 + + + 获取指定给元素变量的名称。 + + + 获取元素变量的类型元数据。 + + + 表示一个布尔表达式,该布尔表达式测试某一指定的项是否与列表中的任何元素匹配。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取指定要匹配的项的 DbExpression。 + + + 获取要针对某一匹配进行测试的 DbExpression 的列表。 + + + 表示用一个规范命令目录树代表的单行插入操作。如果设置了 属性,此命令将返回一个读取器;否则,它将返回一个指示受影响的行数的标量值。 + + + 初始化 类的新实例。 + 元数据。 + 数据空间。 + 数据库目标。 + 确定插入的行中的列值的 Set 子句。 + 指定要基于修改的行返回的结果投影的 。 + + + 获取命令目录树类型。 + 命令目录树类型。 + + + 获取一个 ,它指定要基于修改的行返回的结果投影。如果为 null,则指示不应从此命令返回任何结果。 + 指定要基于修改的行返回的结果投影的 + + + 获取确定插入的行中的列值的 Set 子句。 + 确定插入的行中的列值的 Set 子句。 + + + 表示左右操作数之间的交集运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示应用于单集参数的空集确定。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示应用于单个参数的 null 确定。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示单个参数针对指定类型的类型比较。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取参数的类型元数据将与其进行比较的类型元数据。 + + + 表示在指定的联接条件下,在给定的集合参数之间进行的内部、左外部或完全外部联接运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取定义要应用的联接条件的 + + + 获取提供左输入的 + + + 获取提供右输入的 + + + 表示 Lambda 函数的应用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个 列表,该列表提供 Lambda 函数应该应用于的参数。 + + + 获取表示此表达式应用的 Lambda 函数的 + + + 表示针对指定的模式与可选的转义字符串进行的字符串比较 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个表达式,它指定要针对给定模式进行比较的字符串 + + + 获取一个表达式,它提供用于比较的可选的转义字符串 + + + 获取一个表达式,它指定比较给定字符串时所针对的模式 + + + 表示将参数集合中的元素数限制为指定的限值。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取指定输入集合的表达式。 + + + 获取指定从输入集合中返回的元素数限制的表达式。 + + + 获取限制操作是否将包括等值结果,在存在等值时,这可以生成比该限值指定的结果更多的结果。 + + + 在插入或更新修改操作中指定单个子句,请参见 + + + 表示以规范命令目录树表示的 DML 操作 + + + 获取为 DML 操作指定目标表的 + + + 表示给定类型(包括集类型和记录类型)的新实例的构造。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取一个 列表,该列表可为新实例提供属性/列值或集元素。 + + + 表示对单个 Boolean 参数执行的逻辑非运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示 null。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示从给定的集参数中检索属于指定类型的元素。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取应从集参数中检索的元素类型的元数据。 + + + 表示两个 Boolean 参数的逻辑或。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示对在包含此表达式的命令目录树上声明的参数的引用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取所引用的参数的名称。 + + + 表示给定值集在指定输入集上的投影。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取定义投影的 + + + 提供用于检索实例属性的方法和属性。此类不能被继承。 + + + 为不生成结果值的表达式实现访问者模式。 + + 的一个实例。 + visitor 为 null。 + + + 为生成特定类型的结果值的表达式实现访问者模式。 + 一个由 生成的特定类型结果值。 + 生成特定类型结果值的类型化 的一个实例。 + 访问者生成的结果类型。 + visitor 为 null。 + + + 获取 ,它定义应从中检索属性的实例。 + 用于定义应从中检索属性的实例的 + + + 允许隐式强制转换为 + 转换后的值。 + 要转换的表达式。 + + + 获取要检索的属性的属性元数据。 + 要检索的属性的属性元数据。 + + + 基于此属性表达式创建一个新的键/值对。 + 具有从 派生的键和值的新键/值对。 + + + 表示对指定输入集中的元素执行的指定种类(Any、All)的限定符操作。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取应为输入集中的每个元素计算的 Boolean 谓词。 + + + 表示一项以规范命令目录树形式表示的查询操作。 + + + 初始化使用指定元数据工作区的 类的新实例。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 一个定义查询逻辑的 。 + + 为 null。 + + 不表示有效数据空间。 + + + 初始化使用指定元数据工作区的 类的新实例。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 一个定义查询逻辑的 。 + 若为 true,则验证树;否则为 false。在设置为 false 时,将禁用对目录树的验证。 + + 为 null。 + + 不表示有效数据空间。 + + + 初始化 类的新实例。 + 命令目录树应使用的元数据工作区。 + 在此命令目录树中使用的表达式中的元数据必须属于的逻辑“空间”。 + 一个定义查询逻辑的 。 + 若为 true,则验证树;否则为 false。在设置为 false 时,将禁用对目录树的验证。 + 若为 true,则使用数据库 null 语义;否则为 false。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取定义查询逻辑的 + 一个定义查询逻辑的 + + + 表示对某一给定实体集中的特定实例的(强类型)引用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取包含该实例的实体集的元数据。 + + + 表示将指定引用的键值作为行检索。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示给定“源”角色、“目标”角色和源角色的实例的情况下关系的导航(组合或关联) + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取要从其开始导航的关系端的元数据 + + + 获取要导航到的关系端的元数据 + + + 获取 ,它指定应从其开始导航的“源”关系端的实例。 + + + 获取要导航的关系的元数据 + + + 表示某一给定实体集的所有元素的“扫描”。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取所引用的实体集或关系集的元数据。 + + + 指定用于设置属性值的修改操作中的子句。 + + + 获取一个指定应更新的属性的 + + + 获取一个 ,它指定用于更新属性的新值。 + + + 表示应用在给定排序键中描述的顺序后输入集的指定数目的元素的跳过操作。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取指定要在输入集合中跳过的元素数的表达式。 + + + 获取用于指定输入集的 + + + 获取一个定义排序顺序的 列表。 + + + 指定可在 DbSortExpression 中用作排序顺序的一部分的排序关键字。 + + + 获取一个布尔值,该值指示此排序关键字是否按升序排序。 + + + 获取一个字符串值,该值指定此排序关键字的排序规则。 + + + 获取为此排序关键字提供值的 + + + 表示一项基于给定的排序关键字应用于指定输入集中的元素的排序操作。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取用于指定输入集的 + + + 获取一个定义排序顺序的 列表。 + + + 表示单个参数向指定类型的类型转换。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 接受单个表达式操作数的表达式的抽象基类型 + + + 获取定义参数的 + + + 表示左右操作数之间的 set 联合(不移除重复项)运算。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 表示一项以命令目录树形式表示的单行更行操作。此类不能被继承。 + + + 初始化 类的新实例。 + 将对其运行此命令的模型。 + 数据空间。 + 数据操作语言 (DML) 操作的目标表。 + 一个谓词,用于确定目标集合中应更新的成员。 + 定义更新操作的更新 Set 子句列表。 + 一个 ,它指定要基于修改的行返回的结果投影。 + + + 获取此命令目录树的类型。 + 此命令目录树的类型。 + + + 获取一个 ,它指定用于确定目标集合中应更新的成员的谓词。 + 一个 ,指定用于确定目标集合中应更新的成员的谓词。 + + + 获取一个 ,它指定要基于修改的行返回的结果投影。 + 一个 ,它指定要基于修改的行返回的结果投影。如果为 null,则指示不应从此命令返回任何结果。 + + + 获取定义更新操作的更新 Set 子句列表。 + 定义更新操作的更新 Set 子句列表。 + + + 表示对当前处于范围内的某个变量的引用。 + + + 不生成结果值的表达式访问者的访问者模式方法。 + DbExpressionVisitor 的实例。 + visitor + + + 生成特定类型的结果值的表达式访问者的访问者模式方法。 + 生成 TResultType 类型的结果值的类型化 DbExpressionVisitor 的一个实例。 + visitor 生成的结果类型 + visitor + + + 获取所引用的变量的名称。 + + + 从给定的根表达式访问表达式目录树的每个元素。如果任何元素发生更改,则目录树将被重新生成回根目录并且返回新的根表达式;否则,返回原始根表达式。 + + + 初始化 类的新实例。 + + + 当使用指定的范围变量进入表达式访问者的范围时表示事件。 + 范围变量的集合。 + + + 退出表达式访问者的范围。 + + + 用表达式访问者的新表达式替换旧表达式。 + 旧表达式。 + 新表达式。 + + + 当重新绑定表达式访问者的变量时表示事件。 + 变量的位置。 + 重新绑定的变量的引用。 + + + 实现逻辑与表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbAndExpression。 + + + 为调用指定输入集中每个元素的指定函数实现访问者模式。 + 实现的访问者。 + 正在访问的 DbApplyExpression。 + + + 实现应用于数值参数的算术运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbArithmeticExpression。 + + + 实现 When、Then 和 Else 子句的访问者模式。 + 实现的访问者。 + 正在访问的 DbCaseExpression。 + + + 实现将单个参数转换为指定类型的类型转换的访问者模式。 + 实现的访问者。 + 正在访问的 DbCastExpression。 + + + 实现应用于两个参数的比较运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbComparisonExpression。 + + + 实现不同类型常量的访问者模式。 + 实现的访问者。 + 正在访问的 DbConstantExpression。 + + + 实现给定集合参数之间的无条件联接操作的访问者模式。 + 实现的访问者。 + 正在访问的 DbCrossJoinExpression。 + + + 实现基于指定引用检索实体的表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbDerefExpression。 + + + 实现从指定的集参数中删除的重复元素的访问者模式。 + 实现的访问者。 + 正在访问的 DbDistinctExpression。 + + + 实现指定的集参数到单一实例的转换的访问者模式。 + 实现的访问者。 + 正在访问的 DbElementExpression。 + + + 实现从基础实体实例提取引用的表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbEntityRefExpression。 + + + 实现左操作数和右操作数之间设置的减法运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbExceptExpression。 + + + 实现表达式类型所需的基本功能的访问者模式。 + 实现的访问者。 + 正在访问的 DbExpression。 + + + 实现应用于筛选输入集的谓语的访问者模式。 + 实现的访问者。 + 正在访问的 DbFilterExpression。 + + + 实现调用某个函数的访问者模式。 + 实现的访问者。 + 正在访问的 DbFunctionExpression。 + + + 通过运算实现针对某个组的访问者模式。 + 实现的访问者。 + 正在访问的 DbGroupByExpression。 + + + 实现 DbInExpression 的访问者模式。 + 实现的访问者。 + 正在访问的 DbInExpression。 + + + 实现左操作数和右操作数之间设置的交集运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbIntersectExpression。 + + + 实现应用于单集参数的空集确定的访问者模式。 + 实现的访问者。 + 正在访问的 DbIsEmptyExpression。 + + + 实现应用于单个参数的 null 确定的访问者模式。 + 实现的访问者。 + 正在访问的 DbIsNullExpression。 + + + 实现将单个参数与指定类型进行比较的类型比较的访问者模式。 + 实现的访问者。 + 正在访问的 DbIsOfExpression。 + + + 实现指定联接条件下给定集合参数之间内部联接、左外部联接或完全外部联接运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbJoinExpression。 + + + 实现将 lambda 函数应用于 DbExpression 对象所表示的参数的访问者模式。 + 实现的访问者。 + 正在访问的 DbLambdaExpression。 + + + 实现与带有可选转义字符串的指定模式进行字符串比较的访问者模式。 + 实现的访问者。 + 正在访问的 DbLikeExpression。 + + + 实现将参数集合中的元素数目限制为指定限值的访问者模式。 + 实现的访问者。 + 正在访问的 DbLimitExpression。 + + + 实现构建给定类型的新实例(包括集和记录类型)的访问者模式。 + 实现的访问者。 + 正在访问的 DbNewInstanceExpression。 + + + 实现单个布尔参数的逻辑非运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbNotExpression。 + + + 实现对类型化 null 文本的引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbNullExpression。 + + + 实现根据给定集参数检索指定类型的元素的访问者模式。 + 实现的访问者。 + 正在访问的 DbOfTypeExpression。 + + + 实现两个布尔参数的逻辑或的访问者模式。 + 实现的访问者。 + 正在访问的 DbOrExpression。 + + + 实现对包含此表达式的命令目录树中所声明参数的引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbParameterReferenceExpression。 + + + 实现对指定表达式的给定输入集的投影的访问者模式。 + 实现的访问者。 + 正在访问的 DbProjectExpression。 + + + 实现检索实例属性的访问者模式。 + 实现的访问者。 + 正在访问的 DbPropertyExpression。 + + + 实现对指定输入集元素执行的指定类型的限定符运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbQuantifierExpression。 + + + 实现对实体集内特定实例的强类型引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbRefExpression。 + + + 实现根据基础引用值检索键值的访问者模式。 + 实现的访问者。 + 正在访问的 DbRefKeyExpression。 + + + 实现关系导航的访问者模式。 + 实现的访问者。 + 正在访问的 DbRelationshipNavigationExpression。 + + + 实现对 Target 属性所指示的实体集或关系集的扫描的访问者模式。 + 实现的访问者。 + 正在访问的 DbScanExpression。 + + + 实现 skip 表达式的访问者模式。 + 实现的访问者。 + 正在访问的 DbSkipExpression。 + + + 实现可用作排序顺序一部分的排序关键字的访问者模式。 + 实现的访问者。 + 正在访问的 DbSortExpression。 + + + 实现应用于多态参数的类型转换运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbTreatExpression。 + + + 实现左操作数和右操作数之间设置的并集运算的访问者模式。 + 实现的访问者。 + 正在访问的 DbUnionAllExpression。 + + + 实现对当前处于范围内的变量的引用的访问者模式。 + 实现的访问者。 + 正在访问的 DbVariableReferenceExpression。 + + + 实现对聚合的访问者模式。 + 实现的访问者模式。 + 要访问的聚合。 + + + 实现对实体集的访问者模式。 + 实现的访问者模式。 + 实体集。 + + + 实现表达式的访问者模式。 + 实现的访问者模式。 + 表达式。 + + + 实现表达式绑定的访问者模式。 + 实现的访问者模式。 + 表达式绑定。 + + + 实现表达式绑定列表的访问者模式。 + 实现的访问者模式。 + 表达式绑定列表。 + + + 实现表达式列表的访问者模式。 + 实现的访问者模式。 + 表达式列表。 + + + 实现函数的访问者模式。 + 实现的访问者模式。 + 函数元数据。 + + + 实现函数聚合的访问者模式。 + 实现的访问者模式。 + 聚合。 + + + 实现组聚合的访问者模式。 + 实现的访问者模式。 + 聚合。 + + + 实现组表达式绑定的访问者模式。 + 实现的访问者模式。 + 绑定。 + + + 实现 Lambda 函数的访问者模式。 + 实现的访问者模式。 + Lambda 函数。 + + + 实现排序子句的访问者模式。 + 实现的访问者模式。 + 排序子句。 + + + 实现排序顺序的访问者模式。 + 实现的访问者模式。 + 排序顺序。 + + + 实现类型的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 实现类型用法的访问者模式。 + 实现的访问者模式。 + 类型。 + + + 提供一个用于构造 的 API,并且允许该 API 作为针对表达式类型本身的扩展方法来访问。 + + + 创建一个新的 + 具有对给定函数和参数的引用的一个新的函数聚合。该函数聚合的 Distinct 属性将具有值 false。 + 定义聚合运算的函数。 + 要对其计算聚合函数的参数。 + + 为 null。 + + 不是聚合函数,或者具有多个实参;或者 的结果类型不相等或不能提升为 的形参类型。 + + + 创建以不同风格应用的一个新的 + 具有对给定函数和参数的引用的一个新的函数聚合。该函数聚合的 Distinct 属性将具有值 true。 + 定义聚合运算的函数。 + 要对其计算聚合函数的参数。 + + 为 null。 + + 不是聚合函数,或者具有多个实参;或者 的结果类型不相等或不能提升为 的形参类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的所有元素。 + 表示 All 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式。 + 一个方法,它表示要为输入集的每个成员计算的谓词。此方法必须生成一个表达式,该表达式具有提供谓词逻辑的 Boolean 结果类型。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的所有元素。 + 表示 All 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式绑定。 + 一个表达式,它表示要针对输入集的每个成员计算的谓词。 + + 为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个 ,它对左边参数和右边参数执行逻辑与运算。 + 具有指定参数的新 DbAndExpression。 + 指定左边参数的布尔表达式。 + 指定右边参数的布尔表达式。 + + 为 null。 + + 不具有布尔结果类型。 + + + 创建一个新的 ,它确定指定的集参数是否非空。 + 一个新的 ,它使用指定的参数应用于新的 + 一个指定输入集的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的任何元素。 + 表示 Any 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式。 + 一个方法,它表示要为输入集的每个成员计算的谓词。此方法必须生成一个表达式,该表达式具有提供谓词逻辑的 Boolean 结果类型。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它确定给定的谓词是否适用于输入集的任何元素。 + 表示 Any 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式绑定。 + 一个表达式,它表示要针对输入集的每个成员计算的谓词。 + + 为 null。 + + 不具有布尔结果类型。 + + + 以键/值对对象的形式返回指定参数。 + 键/值对对象。 + 键/值对中的值。 + 键/值对中的键。 + + + 以键/值对对象的形式返回指定参数。 + 键/值对对象。 + 键/值对中的值。 + 键/值对中的键。 + + + 创建一个新的 ,它使用生成的变量名称绑定给定的表达式。 + 具有指定的表达式和生成的变量名称的一个新的表达式绑定。 + 要绑定的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它使用指定的变量名称绑定给定的表达式。 + 具有指定表达式和变量名称的一个新的表达式绑定。 + 要绑定的表达式。 + 应该用于绑定的变量名称。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 + 具有指定事例和默认结果的一个新的 DbCaseExpression。 + 为每个事例提供条件的表达式的列表。 + 提供每个事例的结果的表达式列表。 + 定义没有匹配事例时的结果的表达式。 + + 为 null 或包含 null,或者 为 null。 + + 为空,或者 包含带有非布尔结果类型的表达式,或者没有适用于 中所有表达式的通用结果类型。 + + + 创建一个新的 ,它将强制转换运算应用于一个多态参数。 + 具有指定的参数和目标类型的一个新的 DbCastExpression。 + 应对其应用强制转换的参数。 + 指定要强制转换为的类型的类型元数据。 + + 为 null。 + 指定的强制转换无效。 + + + 使用给定的常量值创建一个具有指定基元类型的新的 + 具有给定值和 结果类型的一个新的 DbConstantExpression。 + 常量值的类型。 + 要表示的常量值。 + valueconstantType + + 不是有效常量类型的实例, 不表示基元类型,或者 所属的基元类型与 表示的基元类型不同。 + + + 使用给定的常量值创建一个新的 + 具有给定值的一个新的 DbConstantExpression。 + 要表示的常量值。 + + 为 null。 + + 不是有效常量类型的实例。 + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它对基于键值对给定类型的特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 引用的实体的特定类型。此实体类型必须与实体集的元素类型处于同一层次结构。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 不是来自 的元素类型所在的层次结构(子类型、超类型或相同类型)。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它对基于键值对给定类型的特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 引用的实体的特定类型。此实体类型必须与实体集的元素类型处于同一层次结构。 + 提供键值的 的集合。在数目、类型和顺序上,这些表达式必须匹配引用的实体类型的键属性。 + + 为 null,或者 为 null 或包含 null。 + + 不是来自 的元素类型所在的类型层次结构(子类型、超类型或相同类型)。 + + 的计数与 的元素类型声明的键成员的计数不符,或者 所包含表达式的结果类型与对应的键成员的类型不兼容。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。 + 具有指定的输入和应用绑定以及 CrossApply 的 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个方法,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + 没有集合结果类型。 + + 的结果包含为 Null 的名称或表达式。 + + 的结果包含在表达式绑定中无效的名称或表达式。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。 + 具有指定的输入和应用绑定以及 CrossApply 的 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个 ,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + + 创建一个新的 ,它无条件联接输入表达式绑定列表指定的集。 + 具有 CrossJoin 的 的一个新的 DbCrossJoinExpression,它表示输入集的无条件联接。 + 指定输入集的表达式绑定列表。 + + 为 null 或包含 null。 + + 包含的表达式绑定数目少于 2。 + + + 创建一个新的 ,它根据给定的引用表达式检索特定实体。 + 检索指定实体的一个新的 DbDerefExpression。 + 一个提供引用的 。此表达式必须具有引用类型。 + + 为 null + + 没有引用结果类型。 + + + 创建一个新的 ,它从给定的集参数中删除重复项。 + 一个新的 DbDistinctExpression,它表示应用于指定集参数的不同运算。 + 定义要对其执行不同运算的集的表达式。 + + 为 null。 + + 没有引用结果类型。 + + + 创建一个新的 ,它用左边参数除以右边参数。 + 表示除法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它将一个集转换为单一实例。 + 一个 DbElementExpression,它表示从集参数到单一实例的转换。 + 一个指定输入集的表达式。 + + 为 null。 + + 没有引用结果类型。 + + + 创建一个新的 ,它比较左边参数和右边参数是否相等。 + 表示相等比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它计算从左边集参数中减去右边集参数的结果。 + 一个新的 DbExceptExpression,它表示从左边参数中减去右边参数之差。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 为 null。 + + 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它确定指定的集参数是否非空。 + 一个新的 ,它使用指定的参数应用于新的 + 一个指定输入集的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 使用布尔值 false 创建一个 + 带布尔值 false 的 + + + 创建一个新的 ,它使用指定的谓词筛选给定输入集中的元素。 + 生成筛选的集的一个新的 DbFilterExpression。 + 一个指定输入集的表达式绑定。 + 一个表达式,它表示要针对输入集的每个成员计算的谓词。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 FullOuterJoin 作为 + 一个 为 FullOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的完全外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个表示联接条件的方法。此方法必须生成一个具有布尔结果类型的表达式,该表达式提供联接条件的逻辑。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式绑定和右边表达式绑定指定的集,并且使用 FullOuterJoin 作为 + 一个 为 FullOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的完全外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个指定联接条件的表达式。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它以结构化形式检索指定实体的引用。 + 检索对指定实体的引用的一个新的 DbEntityRefExpression。 + 提供实体的表达式。此表达式必须具有实体结果类型。 + + 为 null。 + + 没有实体结果类型。 + + + 创建一个新的 ,它以结构化形式检索指定引用的键值。 + 检索指定引用的键值的一个新的 DbRefKeyExpression。 + 提供引用的表达式。此表达式的引用类型必须具有实体元素类型。 + + 为 null。 + + 没有实体结果类型。 + + + 创建一个新的 ,它确定左边参数是否大于右边参数。 + 表示大于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它确定左边参数是否大于或等于右边参数。 + 表示大于或等于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + left 或 right 为 null。 + left 与 right 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 对指定参数创建一个新的 + 一个新的组聚合,它表示按给定参数引用的组的元素。 + 通过其执行嵌套运算的参数。 + + 为 null。 + + + 创建一个新的组表达式绑定,该绑定使用生成的变量名称和组变量名称来绑定给定的表达式。 + 一个新的组表达式绑定,该绑定具有指定的表达式以及生成的变量名称和组变量名称。 + 要绑定的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它使用指定的变量名称和组变量名称来绑定给定的表达式。 + 具有指定的表达式、变量名称和组变量名称的一个新的组表达式绑定。 + 要绑定的表达式。 + 应该用于绑定的变量名称。 + 在分组表达式中使用新的组表达式绑定时应该用于引用该组的变量名称。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它根据指定的组键对输入集的元素进行分组并应用给定的聚合。 + 具有指定的输入集、分组键和聚合的一个新的 DbGroupByExpression。 + 指定输入集的 。 + 定义分组列的字符串表达式对的列表。 + 指定要应用的聚合的表达式列表。 + + 为 null, 包含为 null 的键列名称或表达式,或者聚合包含为 null 的聚合列名称或 + + 均为空,或指定了无效或重复的列名称。 + + + 创建一个 ,它将指定表达式的结果与指定列表中常量表达式的结果进行匹配。 + 如果 DbConstantExpression 列表非空,则为具有指定参数的一个新的 DbInExpression;否则为 false 常量表达式。 + 要匹配的 DbExpression。 + 要针对某一匹配进行测试的 DbConstantExpression 的列表。 + + 为 null。 + + 的结果类型与来自 的表达式的结果类型不同。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 InnerJoin 作为 + 一个 InnerJoin 为 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的内部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个表示联接条件的方法。此方法必须生成一个具有布尔结果类型的表达式,该表达式提供联接条件的逻辑。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 InnerJoin 作为 + 一个 InnerJoin 为 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的内部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个指定联接条件的表达式。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它计算左边集参数和右边集参数的交集。 + 一个新的 DbIntersectExpression,它表示左边参数和右边参数的交集。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 或 right 为 + + 之间不存在任何常用集合结果类型。 + + + 创建一个新的 ,它表示对给定参数应用指定的 Lambda 函数。 + 表示 Lambda 函数应用的一个新的 DbLambdaExpression。 + 一个 实例,它表示要应用的 Lambda 函数。 + 提供参数的表达式列表。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它表示对给定参数应用指定的 Lambda 函数。 + 表示 Lambda 函数应用的一个新的 DbLambdaExpression。 + 一个 实例,它表示要应用的 Lambda 函数。 + 提供参数的表达式。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它表示使用给定的参数调用指定的函数。 + 表示函数调用的一个新的 DbFunctionExpression。 + 要调用的函数的元数据。 + 为函数提供参数的表达式列表。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它表示使用给定的参数调用指定的函数。 + 表示函数调用的一个新的 DbFunctionExpression。 + 要调用的函数的元数据。 + 为函数提供参数的表达式。 + + 为 null,或者 为 null 或包含 null。 + + 的计数与 声明的变量数目不相等,或者 所包含表达式的结果类型不等于或不可提升为对应的变量类型。 + + + 创建一个新的 ,它确定指定的集参数是否为空集。 + 具有指定参数的一个新的 DbIsEmptyExpression。 + 一个指定输入集的表达式。 + + 为 null。 + + 没有集合结果类型。 + + + 创建一个新的 ,它确定指定的参数是否为 null。 + 具有指定参数的一个新的 DbIsNullExpression。 + 指定参数的表达式。 + + 为 null。 + + 有一个集合结果类型。 + + + 创建一个新的 ,它确定给定的参数是否为指定的类型或子类型。 + 具有指定的实例和类型以及 DbExpressionKind IsOf 的一个新的 DbIsOfExpression。 + 指定实例的表达式。 + 类型元数据,它指定应与实例的结果类型进行比较的类型。 + + 为 null。 + + 的结果类型不处于相同的类型层次结构中。 + + + 创建一个新的 表达式,该表达式确定给定的参数是否属于指定的类型且只属于该类型(而非子类型)。 + 具有指定的实例和类型以及 DbExpressionKind IsOfOnly 的一个新的 DbIsOfExpression。 + 指定实例的表达式。 + 类型元数据,它指定应与实例的结果类型进行比较的类型。 + + 为 null。 + + 的结果类型不处于相同的类型层次结构中。 + + + 创建一个新的 ,它基于指定的外部键和内部键之间的相等条件联接外部表达式和内部表达式指定的集,并且使用 InnerJoin 作为 + 一个 InnerJoin 为 的新的 DbJoinExpression,它表示基于比较外部键值和内部键值是否相等的联接条件应用于左边输入集和右边输入集的内部联接运算。 + 指定外部集参数的 。 + 指定内部集参数的 。 + 一个方法,它指定如何从外部集的元素派生外部键值。 + 一个方法,它指定如何从内部集的元素派生内部键值。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不能比较是否相等。 + + + 创建一个新的 ,它对外部和内部表达式指定的集投影指定的选择器,基于指定的外部键和内部键之间的相等条件进行联接,并且使用 InnerJoin 作为 + 一个新的 DbProjectExpression,它使用指定的选择器作为其投影并且使用一个新的 DbJoinExpression 作为其输入。输入 DbJoinExpression 是使用 InnerJoin 的 创建的,它表示基于比较外部键值和内部键值是否相等的联接条件应用于左边输入集和右边输入集的内部联接运算。 + 指定外部集参数的 。 + 指定内部集参数的 。 + 一个方法,它指定如何从外部集的元素派生外部键值。 + 一个方法,它指定如何从内部集的元素派生内部键值。 + 一个方法,它指定如何从内部和外部集的元素派生结果集的元素。此方法必须生成与 Join 兼容且可以解析为 的类型的实例。备注中说明了针对 的兼容性要求。 + 选择器的类型。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + 在转换为 DbExpression 之后 的结果为 null。 + + 生成的表达式不能比较是否相等。 + + 的结果与 SelectMany 不兼容。 + + + 使用指定的内联 Lambda 函数实现和形参创建 + 一个新的 DbLambda,它描述具有指定主体和形参的内联 Lambda 函数。 + 一个定义 Lambda 函数的逻辑的表达式。 + 一个 集合,该集合表示 Lambda 函数的形参。这些变量可以有效地在 表达式中使用。 + + 为 null 或包含 null,或者 为 null。 + + 包含多个具有相同变量名称的元素。 + + + 使用指定的内联 Lambda 函数实现和形参创建 + 一个新的 DbLambda,它描述具有指定主体和形参的内联 Lambda 函数。 + 一个定义 Lambda 函数的逻辑的表达式。 + 一个 集合,该集合表示 Lambda 函数的形参。这些变量可以有效地在 body 表达式中使用。 + + 为 null 或包含 null,或者 为 null。 + + 包含多个具有相同变量名称的元素。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式和右边表达式指定的集,并且使用 LeftOuterJoin 作为 + 一个 为 LeftOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的左外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个表示联接条件的方法。此方法必须生成一个具有布尔结果类型的表达式,该表达式提供联接条件的逻辑。 + + 为 null。 + + 没有集合结果类型。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 创建一个新的 ,它按照指定的联接条件联接左边表达式绑定和右边表达式绑定指定的集,并且使用 LeftOuterJoin 作为 + 一个 为 LeftOuterJoin 的新的 DbJoinExpression,它表示基于给定联接条件应用于左边输入集和右边输入集的左外部联接运算。 + 一个指定左边集参数的 。 + 一个指定右边集参数的 。 + 一个指定联接条件的表达式。 + + 为 null。 + + 有布尔结果类型。 + + + 创建一个新的 ,它确定左边参数是否小于右边参数。 + 表示小于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它确定左边参数是否小于或等于右边参数。 + 表示小于或等于比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它将指定的输入字符串与给定的模式进行比较。 + 具有指定输入、模式和 null 转义的一个新的 DbLikeExpression。 + 指定输入字符串的表达式。 + 指定模式字符串的表达式。 + + 为 null。 + + 不具有字符串结果类型。 + + + 创建一个新的 ,它使用可选转义符将指定的输入字符串与给定的模式进行比较。 + 具有指定的输入、模式和转义符的一个新的 DbLikeExpression。 + 指定输入字符串的表达式。 + 指定模式字符串的表达式。 + 指定转义字符串的可选表达式。 + + 或转义符为 + + 或转义符不具有字符串结果类型。 + + + 创建一个新的 ,它将参数集合中的元素数目限制为指定的计数限值。输出中不包括等值结果。 + 一个新的 DbLimitExpression,它具有指定参数以及不包括等值结果的计数限值。 + 一个指定输入集合的表达式。 + 指定限值的表达式。 + + 为 null。 + + 不具有集合结果类型,或者 不具有等同于或可提升为 64 位整数类型的结果类型。 + + + 创建一个新的 ,它从左边参数中减去右边参数。 + 表示减法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它计算左边参数除以右边参数所得的余数。 + 表示取模运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它用左边参数乘以右边参数。 + 表示乘法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行顺序比较的结果类型。 + + + 创建一个新的 ,它表示组合或关联的导航。 + 一个新的 DbRelationshipNavigationExpression,它表示从指定的导航源实例的指定关系类型的指定源和目标关系端的导航。 + 一个表达式,它指定应作为导航起点的实例。 + 属性的元数据,表示作为导航的源的关系端。 + 属性的元数据,表示作为导航的目标的关系端。 + + 为 null。 + + 不是由相同关系类型声明的,或者 的结果类型与 的属性类型不兼容。 + + + 创建一个新的 ,它表示组合或关联的导航。 + 一个新的 DbRelationshipNavigationExpression,它表示从指定的导航源实例的指定关系类型的指定源和目标关系端的导航。 + 表示关系的关系类型的元数据。 + 关系类型的属性名称,它表示作为导航的源的关系端。 + 关系类型的属性名称,它表示作为导航的目标的关系端。 + 一个表达式,它指定应作为导航起点的实例。 + + + 为 null。 + + 与此命令目录树的元数据工作区不关联,或者 与其他命令目录树相关联,或者 未声明具有 名称的关系端属性,或者 具有与 不兼容的结果类型。 + + + 创建一个新的 ,它对参数值求反。 + 表示求反运算的一个新的 DbArithmeticExpression。 + 指定参数的表达式。 + + 为 null。 + 不存在针对 的任何数值结果类型。 + + + 创建一个新的 。如果类型参数为集合类型,则参数将指定集合的元素。否则,参数将用作新实例中的属性值或列值。 + 具有指定的类型和参数的一个新的 DbNewInstanceExpression。 + 新实例的类型。 + 指定新实例的值的表达式,根据实例的类型对其进行解释。 + + 为 null,或者 包含 null。 + + 为空,或者包含的表达式的结果类型与 的要求不匹配(在备注部分中进行了说明)。 + + + 创建一个新的 。如果类型参数为集合类型,则参数将指定集合的元素。否则,参数将用作新实例中的属性值或列值。 + 具有指定的类型和参数的一个新的 DbNewInstanceExpression。 + 新实例的类型。 + 指定新实例的值的表达式,根据实例的类型对其进行解释。 + instanceTypeargumentsarguments + + 为 null,或者 包含 null。 + + + 创建一个新的 ,它构造一个包含指定元素的集合。集合的类型基于元素的通用类型。如果不存在通用元素类型,将引发异常。 + 具有指定的集合类型和参数的一个新的 DbNewInstanceExpression。 + 提供集合元素的表达式列表。 + + 为 null 或包含 null。 + + 为空,或包含不存在通用结果类型的表达式。 + + + 创建一个新的 ,它构造一个包含指定元素的集合。集合的类型基于元素的通用类型。如果不存在通用元素类型,将引发异常。 + 具有指定的集合类型和参数的一个新的 DbNewInstanceExpression。 + 提供集合元素的表达式列表。 + + 为 null 或包含 null。 + + 为空,或包含不存在通用结果类型的表达式。 + + + 创建一个新的 ,它构造指定集合类型的空集合。 + 具有指定的集合类型和空 Arguments 列表的一个新的 DbNewInstanceExpression。 + 要创建的集合的类型元数据。 + + 为 null。 + + 不是集合类型。 + + + 创建一个新的 ,它生成具有指定的命名列和给定值并且指定为表达式的一行。 + 表示行的构造的一个新的 DbNewInstanceExpression。 + 定义行的结构和值的字符串-DbExpression 键/值对的列表。 + + 为 null,或者包含具有 null 列名或表达式的元素。 + + 为空,或包含重复的或无效的列名称。 + + + 创建一个 ,它对给定的参数执行逻辑求反运算。 + 使用指定参数的一个新的 DbNotExpression。 + 一个指定参数的布尔表达式。 + + 为 null。 + 参数不具有布尔结果类型。 + + + 创建一个新的 ,它比较左边参数和右边参数是否不相等。 + 表示不相等比较的一个新的 DbComparisonExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + + 之间不存在任何常用的可进行相等比较的结果类型。 + + + 创建一个新的 ,它表示类型化的 null 值。 + DbNullExpression 的实例。 + null 值的类型。 + + 为 null。 + + + 创建一个新的 ,它生成一个集,该集由属于指定类型的给定输入集的元素构成。 + 具有指定的集参数和类型以及 为 ExpressionKind 的一个新的 DbOfTypeExpression。 + 指定输入集的 。 + 要使输入集的元素包括在结果集中,这些元素必须具有的类型的类型元数据。 + + 为 null。 + + 不具有集合结果 ,或者类型所处于的类型层次结构与 的集合结果类型的元素类型不同。 + + + 创建一个新的 ,它生成一个集,该集由恰好属于指定类型的给定输入集的元素构成。 + 具有指定的集参数和类型以及 为 ExpressionKind 的一个新的 DbOfTypeExpression。 + 指定输入集的 。 + 要使输入集的元素包括在结果集中,这些元素必须严格匹配的类型的类型元数据。 + + 为 null。 + + 不具有集合结果 ,或者类型所处于的类型层次结构与 的集合结果类型的元素类型不同。 + + + 创建一个 ,它对左边参数和右边参数执行逻辑或运算。 + 具有指定参数的一个新的 DbOrExpression。 + 指定左边参数的布尔表达式。 + 指定右边参数的布尔表达式。 + leftright + leftright + + + 创建一个新的 ,它使用升序排序顺序和默认排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的结果类型。 + + + 创建一个新的 ,它使用升序排序顺序和指定排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 创建一个新的 ,它使用降序排序顺序和默认排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + + 创建一个新的 ,它使用降序排序顺序和默认排序规则按照指定的排序键对给定的输入集进行排序。 + 表示排序依据运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。其 计算结果为空集的行具有值为 null 的 apply 列值。 + 具有指定的输入和应用绑定且 OuterApply 为 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个方法,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + 没有集合结果类型。 + apply 的结果包含为 null 的名称或表达式。 + apply 的结果包含在表达式绑定中无效的名称或表达式。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。其 计算结果为空集的行具有值为 null 的 apply 列值。 + 具有指定的输入和应用绑定且 OuterApply 为 的一个新的 DbApplyExpression。 + 指定输入集的 。 + 一个 ,它指定要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + + + 创建一个新的 ,它使用指定的名称和类型引用参数。 + 表示对具有指定名称和类型的参数的引用的 DbParameterReferenceExpression;表达式的结果类型将与 相同。 + 引用参数的类型。 + 引用参数的名称。 + + + 创建一个新的 ,它将左边参数与右边参数相加。 + 表示加法运算的一个新的 DbArithmeticExpression。 + 一个指定左边参数的表达式。 + 一个指定右边参数的表达式。 + + 为 null。 + left 与 right 之间不存在任何常用数值结果类型。 + + + 创建一个新的 ,它对给定的输入集投影指定的表达式。 + 表示投影运算的一个新的 DbProjectExpression。 + 一个指定输入集的表达式绑定。 + 要对集投影的表达式。 + + 为 null。 + + + 创建一个新的 ,它表示对指定属性的检索。 + 表示属性检索的一个新的 DbPropertyExpression。 + 要从中检索属性的实例。如果该属性是静态的,则可能为 null。 + 要检索的属性的元数据。 + + 为 null,或者 为 null 并且属性不是静态的。 + + + 创建一个新的 ,它表示对指定导航属性的检索。 + 表示导航属性检索的一个新的 DbPropertyExpression。 + 要从中检索导航属性的实例。 + 要检索的导航属性的元数据。 + + 为 null 或 为 null。 + + + 创建一个新的 ,它表示对指定关系端成员的检索。 + 表示关系端成员检索的一个新的 DbPropertyExpression。 + 要从中检索关系端成员的实例。 + 要检索的关系端成员的元数据。 + + 为 null,或者 为 null 并且属性不是静态的。 + + + 创建一个新的 ,它表示从给定实例中检索具有指定名称的实例属性。 + 表示属性检索的一个新的 DbPropertyExpression。 + 要从中检索属性的实例。 + 要检索的属性的名称。 + + 为 null,或者 为 null 并且属性不是静态的。 + 没有具有指定名称的属性是由 类型声明的。 + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 一个 ,它使用与引用的实体类型的 Key 属性在数目、类型和顺序上相匹配的列构造一个记录。 + + 为 null。 + keyRow + + + 创建一个新的 ,它对基于键值对特定实体的引用进行编码。 + 一个新的 DbRefExpression,它引用在给定实体集中具有指定键值的元素。 + 引用的元素所在的实体集。 + 一个 ,它使用与引用的实体类型的 Key 属性在数目、类型和顺序上相匹配的列构造一个记录。 + 引用应针对的实体的类型。 + + 为 null。 + + 与实体集的实体类型不处于相同的类型层次结构,或者 不具有与引用的实体集的实体类型的键属性匹配的记录结果类型。 + + + 创建一个新的 ,它引用指定的实体集或关系集。 + 基于指定的实体或关系集的一个新的 DbScanExpression。 + 要引用的实体或关系集的元数据。 + + 为 null。 + + + 创建一个新的 ,它对给定的输入集选择指定的表达式。 + 表示选择运算的一个新的 DbProjectExpression。 + 一个指定输入集的表达式。 + 一个方法,该方法指定在给定输入集的成员时如何派生投影的表达式。此方法必须生成与 Select 兼容且可以解析为 的类型的实例。备注中说明了针对 的兼容性要求。 + + 的方法结果类型。 + + 为 null + + 的结果为 null。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。然后创建了 ,它对每一行选择指定的 ,并且生成结果的整个集合。 + 一个新的 DbProjectExpression,它从具有指定输入和应用绑定且 CrossApply 为 的一个新的 DbApplyExpression 中选择 apply 列。 + 指定输入集的 。 + 一个方法,它表示要对输入集的每个成员计算一次的逻辑。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有集合类型。 + + + 创建一个新的 ,它为给定输入集的每个元素计算一次给定的 表达式,并生成具有相应 input 和 apply 列的行集合。不包括 计算结果为空集的行。然后创建了 ,它对每一行选择指定的 ,并且生成结果的整个集合。 + 一个新的 DbProjectExpression,它从具有指定输入和应用绑定且 CrossApply 为 的一个新的 DbApplyExpression 中选择给定选择器的结果。 + 指定输入集的 。 + 一个方法,它表示要对输入集的每个成员计算一次的逻辑。 + 一个方法,它指定如何在给定输入集和应用集的元素的情况下派生结果集的元素。此方法必须生成与 SelectMany 兼容且可以解析为 的类型的实例。备注中说明了针对 的兼容性要求。 + + 的方法结果类型。 + + 为 null。 + 生成的表达式为 null。 + 在转换为 DbExpression 时 的结果为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有集合类型。 + + + 创建一个表示将属性设置为值的新 + 新创建的 set 子句。 + 要设置的属性。 + 要将属性设置为的值。 + + + 创建一个新的 ,它在跳过指定数目的元素之前,按照指定的排序规范对给定的输入集进行排序。 + 表示跳过操作的一个新的 DbSkipExpression。 + 一个指定输入集的表达式绑定。 + 确定应如何对输入集元素进行排序的排序规范列表。 + 一个表达式,它指定要在有序集中跳过的元素数目。 + + 为 null,或者 包含 null。 + + 为空,或者 不是 ,或者具有不等同于或不能提升为 64 位整数类型的结果类型。 + + + 创建一个新的 ,它从给定的有序输入集中跳过指定数目的元素。 + 表示跳过操作的一个新的 DbSkipExpression。 + 指定有序输入集的 。 + 一个表达式,它指定要在有序集中跳过的元素数目。 + + 为 null。 + + 不是 ,或者具有不等同于或不能提升为 64 位整数类型的结果类型。 + + + 创建一个新的 ,它按照指定的排序规范对给定的输入集进行排序。 + 表示排序运算的一个新的 DbSortExpression。 + 一个指定输入集的表达式绑定。 + 确定应如何对输入集元素进行排序的排序规范列表。 + + 为 null,或者 包含 null。 + + 为空。 + + + 创建一个新的 ,它将参数集合中的元素数目限制为指定的计数限值。输出中不包括等值结果。 + 一个新的 DbLimitExpression,它具有指定参数以及不包括等值结果的计数限值。 + 一个指定输入集合的表达式。 + 指定限值的表达式。 + + 为 null。 + + 不具有集合结果类型,或者 不具有等同于或可提升为 64 位整数类型的结果类型。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按升序排序顺序的指定排序键和默认排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的结果类型。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按升序排序顺序的指定排序键和指定的排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按降序排序顺序的指定排序键和默认排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的结果类型。 + + + 创建具有排序顺序的一个新的 ,它包括给定顺序输入集的排序顺序以及按降序排序顺序的指定排序键和指定的排序规则。 + 表示新的整体的排序依据运算的一个新的 DbSortExpression。 + 指定有序输入集的 DbSortExpression。 + 一个方法,该方法指定在给定输入集的成员时如何派生附加排序键表达式。此方法必须生成一个具有可比较顺序的结果类型(该类型提供排序键定义)的表达式。 + 排序所依据的排序规则。 + + 为 null。 + 生成的表达式为 null。 + + 没有集合结果类型。 + + 生成的表达式不具有可比较顺序的字符串结果类型。 + + 为空,或者只包含空白字符。 + + + 使用升序排序顺序和默认排序规则创建一个新的 + 使用给定的排序关键字和升序排序顺序的一个新的排序子句。 + 定义排序键的表达式。 + + 为 null。 + + 不具有可比较顺序的结果类型。 + + + 使用升序排序顺序和指定的排序规则创建一个新的 + 具有给定的排序键和排序规则以及升序排序顺序的一个新的排序语句。 + 定义排序键的表达式。 + 排序所依据的排序规则。 + + 为 null。 + + 为空,或者只包含空白字符。 + + 不具有可比较顺序的结果类型。 + + + 使用降序排序顺序和默认排序规则创建一个新的 + 具有给定排序键和降序排序顺序的一个新的排序语句。 + 定义排序键的表达式。 + + 为 null。 + + 不具有可比较顺序的结果类型。 + + + 使用降序排序顺序和指定的排序规则创建一个新的 + 具有给定的排序键和排序规则以及降序排序顺序的一个新的排序语句。 + 定义排序键的表达式。 + 排序所依据的排序规则。 + + 为 null。 + + 为空,或者只包含空白字符。 + + 不具有可比较顺序的结果类型。 + + + 创建一个新的 + 具有指定的参数和类型的一个新的 DbTreatExpression。 + 指定实例的表达式。 + treat-as 类型的类型元数据。 + + 为 null。 + + 的结果类型不处于相同的类型层次结构中。 + + + 使用布尔值 true 创建一个 + 带布尔值 true 的 + + + 创建一个新的 ,它对参数值求反。 + 表示求反运算的一个新的 DbArithmeticExpression。 + 指定参数的表达式。 + + 为 null。 + 不存在针对 的任何数值结果类型。 + + + 创建一个新的 ,它计算左边集参数和右边集参数的并集并且删除了重复项。 + 一个新的 DbExpression,它计算左边参数和右边参数的并集,并且不含重复项。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 为 null。 + + 之间不存在具有可进行相等比较的元素类型的任何常用集合结果类型。 + + + 创建一个新的 ,它计算左边集参数和右边集参数的并集且不删除重复项。 + 一个新的 DbUnionAllExpression,它是左边参数和右边参数的并集并且包括重复项。 + 一个定义左边集参数的表达式。 + 一个定义右边集参数的表达式。 + + 为 null。 + + 之间不存在任何常用集合结果类型。 + + + 创建一个新的 ,它使用指定的名称和类型引用变量。 + 一个 DbVariableReferenceExpression,它表示对具有指定名称和类型的变量的引用;表达式的结果类型将与 相同。 + 引用变量的类型。 + 引用变量的名称。 + + + 创建一个新的 ,它使用指定的谓词筛选给定输入集中的元素。 + 表示 Any 运算的一个新的 DbQuantifierExpression。 + 一个指定输入集的表达式。 + 一个方法,它表示要为输入集的每个成员计算的谓词。此方法必须生成一个表达式,该表达式具有提供谓词逻辑的 Boolean 结果类型。 + + 为 null。 + 生成的表达式为 null。 + + 生成的表达式不具有布尔结果类型。 + + + 提供一个用于构造调用规范 EDM 函数的 的 API,并且允许该 API 作为针对表达式类型本身的扩展方法来访问。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有数值结果类型)调用规范“Abs”函数。表达式的结果类型与 的结果类型相同。 + 返回 的绝对值的一个新的 DbFunctionExpression。 + 一个指定数值的表达式。 + + 为 null。 + 没有规范“Abs”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime 或 DateTimeOffset 以及整数结果类型)调用规范“AddDays”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的天数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的天数。 + + 为 null。 + 没有规范“AddDays”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddHours”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的小时数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的小时数。 + + 为 null。 + 没有规范“AddHours”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddMicroseconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的微秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的微秒数。 + + 为 null。 + 没有规范“AddMicroseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddMilliseconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的毫秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的毫秒数。 + + 为 null。 + 没有规范“AddMilliseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddMinutes”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的分钟数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的分钟数。 + + 为 null。 + 没有规范“AddMinutes”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime 或 DateTimeOffset 以及整数结果类型)调用规范“AddMonths”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的月份数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的月份数。 + + 为 null。 + 没有规范“AddMonths”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddNanoseconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的纳秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的纳秒数。 + + 为 null。 + 没有规范“AddNanoseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime、DateTimeOffset 或 Time 以及整数结果类型)调用规范“AddSeconds”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的秒数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的秒数。 + + 为 null。 + 没有规范“AddSeconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有 DateTime 或 DateTimeOffset 以及整数结果类型)调用规范“AddYears”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将按 指定的年份数加到按 指定的值。 + 一个表达式,它指定应与 相加的值。 + 一个表达式,它指定要加到 中的年份数。 + + 为 null。 + 没有规范“AddYears”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Avg”函数。表达式的结果类型与集合的元素类型相同。 + 生成平均值的新的 DbFunctionExpression。 + 一个表达式,它指定应计算平均值的集合。 + + 为 null。 + 没有规范“Avg”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有相同的整数结果类型)调用规范“BitwiseAnd”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位与运算生成的值。 + 指定第一个操作数的表达式。 + 指定第二个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseAnd”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有整数结果类型)调用规范“BitwiseNot”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位取非运算生成的值。 + 指定第一个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseNot”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有相同的整数结果类型)调用规范“BitwiseOr”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位或运算生成的值。 + 指定第一个操作数的表达式。 + 指定第二个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseOr”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有相同的整数结果类型)调用规范“BitwiseXor”函数。表达式的结果类型为此同一类型。 + 一个新的 DbFunctionExpression,它返回通过对 执行按位异或(异或)运算生成的值。 + 指定第一个操作数的表达式。 + 指定第二个操作数的表达式。 + + 为 null。 + 没有规范“BitwiseXor”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有单精度、双精度或十进制结果类型)调用规范“Ceiling”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回不小于 的最小整数值。 + 一个指定数值的表达式。 + + 为 null。 + 没有规范“Ceiling”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“Concat”函数。表达式的结果类型为字符串。 + 一个生成串联字符串的新的 DbFunctionExpression。 + 一个表达式,它指定在串连结果字符串中应在最前面出现的字符串。 + 一个表达式,它指定在串连结果字符串中应在第二位出现的字符串。 + + 为 null。 + 没有规范“Concat”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“Contains”函数。表达式的结果类型为 Boolean。 + 一个新的 DbFunctionExpression,它返回指示 是否在 之内出现的布尔值。 + 一个表达式,它指定要从中搜索出现的任何 的字符串。 + 一个表达式,它指定要在 中搜索的字符串。 + + 为 null。 + 没有规范“Contains”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Count”函数。表达式的结果类型为 Edm.Int32。 + 生成计数值的新的 DbFunctionExpression。 + 一个表达式,它指定应对其计算计数值的集合。 + + 为 null。 + 没有规范“Count”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数调用规范“CreateDateTime”函数。 必须具有结果类型 Edm.Double,所有其他参数必须具有结果类型 Edm.Int32。表达式的结果类型为 Edm.DateTime。 + 一个新 DbFunctionExpression,它基于指定的值返回新的 DateTime。 + 一个表达式,它为新的 DateTime 实例提供年份值。 + 一个表达式,它为新的 DateTime 实例提供月份值。 + 一个表达式,它为新的 DateTime 实例提供日期值。 + 一个表达式,它为新的 DateTime 实例提供小时值。 + 一个表达式,它为新的 DateTime 实例提供分钟值。 + 一个表达式,它为新的 DateTime 实例提供秒钟值。 + + 为 null。 + 没有规范“CreateDateTime”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数调用规范“CreateDateTimeOffset”函数。 必须具有结果类型 Edm.Double,所有其他参数必须具有结果类型 Edm.Int32。表达式的结果类型为 Edm.DateTimeOffset。 + 一个新 DbFunctionExpression,它基于指定的值返回新的 DateTimeOffset。 + 一个表达式,它为新的 DateTimeOffset 实例提供年份值。 + 一个表达式,它为新的 DateTimeOffset 实例提供月份值。 + 一个表达式,它为新的 DateTimeOffset 实例提供日期值。 + 一个表达式,它为新的 DateTimeOffset 实例提供小时值。 + 一个表达式,它为新的 DateTimeOffset 实例提供分钟值。 + 一个表达式,它为新的 DateTimeOffset 实例提供秒钟值。 + 一个表达式,它为新的 DateTimeOffset 实例按时区偏移量值提供分钟数。 + + 为 null。 + 没有规范“CreateDateTimeOffset”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数调用规范“CreateTime”函数。 必须具有结果类型 Edm.Double,所有其他参数必须具有结果类型 Edm.Int32。表达式的结果类型为 Edm.Time。 + 一个新 DbFunctionExpression,它基于指定的值返回新的时间。 + 一个表达式,它为新的 DateTime 实例提供小时值。 + 一个表达式,它为新的 DateTime 实例提供分钟值。 + 一个表达式,它为新的 DateTime 实例提供秒钟值。 + + 为 null。 + 没有规范“CreateTime”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它调用规范“CurrentDateTime”函数。 + 一个新的 DbFunctionExpression,它将当前日期和时间作为 Edm.DateTime 实例返回。 + + + 创建一个 ,它调用规范“CurrentDateTimeOffset”函数。 + 一个新的 DbFunctionExpression,它将当前日期和时间作为 Edm.DateTimeOffset 实例返回。 + + + 创建一个 ,它调用规范“CurrentUtcDateTime”函数。 + 一个新的 DbFunctionExpression,它将当前 UTC 日期和时间作为 Edm.DateTime 实例返回。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“Day”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数日期值。 + 一个表达式,它指定应从中检索日期的值。 + + 为 null。 + 没有规范“Day”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DayOfYear”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回年份值的整数日期。 + 一个表达式,它指定应从中检索日期(以一年中的第几天表示)的值。 + + 为 null。 + 没有规范“DayOfYear”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DiffDays”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的天数差。 + 一个表达式,它指定第一个 DateTime 或 DateTimeOffset 值。 + 一个表达式,它指定应为其计算距离 的天数差的 DateTime 或 DateTimeOffset。 + + 为 null。 + 没有规范“DiffDays”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffHours”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的小时差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的小时差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffHours”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffMicroseconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的微秒差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的微秒差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffMicroseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffMilliseconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的毫秒差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的毫秒差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffMilliseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffMinutes”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的分钟差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的分钟差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffMinutes”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DiffMonths”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的月份差。 + 一个表达式,它指定第一个 DateTime 或 DateTimeOffset 值。 + 一个表达式,它指定应为其计算距离 的月份差的 DateTime 或 DateTimeOffset。 + + 为 null + 没有规范“DiffMonths”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffNanoseconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的纳秒差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的纳秒差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffNanoseconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“DiffSeconds”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的秒钟差。 + 一个表达式,它指定第一个 DateTime、DateTimeOffset 或 Time 值。 + 一个表达式,它指定应为其计算距离 的秒钟差的 DateTime、DateTimeOffset 或 Time。 + + 为 null。 + 没有规范“DiffSeconds”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“DiffYears”函数。 的结果类型必须与 的结果类型匹配。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 之间的年份差。 + 一个表达式,它指定第一个 DateTime 或 DateTimeOffset 值。 + 一个表达式,它指定应为其计算距离 的年份差的 DateTime 或 DateTimeOffset。 + + 为 null。 + 没有规范“DiffYears”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“EndsWith”函数。表达式的结果类型为 Boolean。 + 一个新的 DbFunctionExpression,它指示 是否以 结尾。 + 一个表达式,指定要在其中查找指定的 的字符串。 + 一个表达式,指定应在 中查找的后缀。 + + 为 null。 + 没有规范“EndsWith”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有单精度、双精度或十进制结果类型)调用规范“Floor”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回不大于 的最大整数值。 + 一个指定数值的表达式。 + + 为 null。 + 没有规范“Floor”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTimeOffset 结果类型)调用规范“GetTotalOffsetMinutes”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 相对于 GMT 的偏移分钟数。 + 一个表达式,它指定应从中检索相对于 GMT 的偏移分钟数的 DateTimeOffset 值。 + + 为 null。 + 没有规范“GetTotalOffsetMinutes”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Hour”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数小时值。 + 一个表达式,它指定应从中检索小时的值。 + + 为 null。 + 没有规范“Hours”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“IndexOf”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 的第一个索引。 + 一个表达式,它指定要在 中搜索的字符串。 + 一个表达式,它指定应检查的位于 内的字符串。 + + 为 null。 + 没有规范“IndexOf”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串和整数结果类型)调用规范“Left”函数。表达式的结果类型为字符串。 + 一个新的 DbFunctionExpression,它从 中返回长度为 的最左侧子字符串。 + 一个表达式,它指定要从中提取最左侧子字符串的字符串。 + 一个表达式,它指定要从 中提取的最左侧子字符串的长度。 + + 为 null。 + 没有规范“Left”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“Length”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回 的长度。 + 一个表达式,它指定应计算其长度的字符串。 + + 为 null。 + 没有规范“Length”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“BigCount”函数。表达式的结果类型为 Edm.Int64。 + 生成计数值的新的 DbFunctionExpression。 + 一个表达式,它指定应对其计算计数值的集合。 + + 为 null。 + 没有规范“BigCount”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Max”函数。表达式的结果类型与集合的元素类型相同。 + 生成最大值的新的 DbFunctionExpression。 + 一个表达式,它指定应从中检索最大值的集合。 + + 为 null。 + 没有规范“Max”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Millisecond”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 中返回整数毫秒值。 + 一个表达式,它指定应从中检索毫秒的值。 + + 为 null。 + 没有规范“Millisecond”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Min”函数。表达式的结果类型与集合的元素类型相同。 + 生成最小值的新的 DbFunctionExpression。 + 一个表达式,它指定应从中检索最小值的集合。 + + 为 null。 + 没有规范“Min”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Minute”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数分钟值。 + 一个表达式,它指定应从中检索分钟的值。 + + 为 null。 + 没有规范“Minute”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“Month”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数月份值。 + 一个表达式,它指定应从中检索月份的值。 + + 为 null。 + 没有规范“Month”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它调用规范“NewGuid”函数。 + 返回新的 GUID 值的新的 DbFunctionExpression。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有数值结果类型)调用规范“Power”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回按 指定的幂次执行幂运算的 的值。 + 一个表达式,它指定要计算给定幂次的数值。 + 一个表达式,它指定应对 进行幂运算的幂值。 + + 为 null。 + 没有规范“Power”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“Replace”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它基于 返回一个新字符串,其中,出现的每个 都会被 替代。 + 一个表达式,它指定要在其中执行替代操作的字符串。 + 指定要替代的字符串的表达式。 + 指定替代字符串的表达式。 + + 为 null。 + 没有规范“Replace”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“Reverse”函数。表达式的结果类型也为字符串。 + 一个 DbFunctionExpression,它生成 的颠倒顺序的值。 + 指定要颠倒顺序的字符串的表达式。 + + 为 null。 + 没有规范“Reverse”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串和整数结果类型)调用规范“Right”函数。表达式的结果类型为字符串。 + 一个新的 DbFunctionExpression,它从 中返回长度为 的最右侧子字符串。 + 一个表达式,它指定要从中提取最右侧子字符串的字符串。 + 一个表达式,它指定要从 中提取的最右侧子字符串的长度。 + + 为 null。 + 没有规范“Right”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有单精度、双精度或十进制结果类型)调用规范“Round”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它将指定的参数舍入为最接近的整数值。 + 指定要舍入的数值的表达式。 + + 为 null。 + 没有规范“Round”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有单精度、双精度或十进制以及整数结果类型)调用规范“Round”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它按照 指定的精度将指定的参数舍入为最接近的整数值。 + 指定要舍入的数值的表达式。 + 一个表达式,它指定在舍入时要使用的精度的位数。 + + 为 null + 没有规范“Round”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime、DateTimeOffset 或 Time 结果类型)调用规范“Second”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数秒钟值。 + 一个表达式,它指定应从中检索秒钟的值。 + + 为 null。 + 没有规范“Second”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(每个参数都必须具有字符串结果类型)调用规范“StartsWith”函数。表达式的结果类型为 Boolean。 + 一个新的 DbFunctionExpression,它指示 是否以 开头。 + 一个表达式,指定要在其中查找指定的 的字符串。 + 一个表达式,指定应在 中查找的前缀。 + + 为 null。 + 没有规范“StartsWith”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的非 null 成员调用规范“StDev”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它对集合的非 null 成员生成标准偏差值。 + 一个表达式,它指定应计算标准偏差的集合。 + + 为 null。 + 没有规范“StDev”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的总体调用规范“StDevP”函数。表达式的结果类型为 Edm.Double。 + 生成标准偏差值的新的 DbFunctionExpression。 + 一个表达式,它指定应计算标准偏差的集合。 + + 为 null。 + 没有规范“StDevP”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串和整数结果类型)调用规范“Substring”函数。表达式的结果类型为字符串。 + 一个新的 DbFunctionExpression,它从 中返回以 开头的长度为 的子字符串。 + 一个表达式,它指定要从中提取子字符串的字符串。 + 一个表达式,它指定要从其获取子字符串的起始索引。 + 一个表达式,它指定子字符串的长度。 + + 为 null。 + 没有规范“Substring”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定的集合调用规范“Sum”函数。表达式的结果类型与集合的元素类型相同。 + 生成总和的新的 DbFunctionExpression。 + 一个表达式,它指定应计算总和的集合。 + + 为 null。 + 没有规范“Sum”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“ToLower”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回转换为小写的 的值。 + 一个表达式,它指定应转换为小写的字符串。 + + 为 null。 + 没有规范“ToLower”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“ToUpper”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回转换为大写的 的值。 + 一个表达式,它指定应转换为大写的字符串。 + + 为 null。 + 没有规范“ToUpper”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“Trim”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回删除了前导和尾随空格的 的值。 + 一个表达式,它指定应删除其前导和尾随空格的字符串。 + + 为 null。 + 没有规范“Trim”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“RTrim”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回删除了尾随空格的 的值。 + 一个表达式,它指定应删除其尾随空格的字符串。 + + 为 null。 + 没有规范“RTrim”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“LTrim”函数。表达式的结果类型也为字符串。 + 一个新的 DbFunctionExpression,它返回删除了前导空格的 的值。 + 一个表达式,它指定应删除其前导空格的字符串。 + + 为 null。 + 没有规范“LTrim”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(这些参数必须具有单精度、双精度或十进制以及整数结果类型)调用规范“Truncate”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它按照 指定的精度将指定的参数截断为最接近的整数值。 + 一个表达式,它指定要截断的数值。 + 一个表达式,它指定要在截断时要使用的精度位数。 + + 为 null。 + 没有规范“Truncate”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“TruncateTime”函数。表达式的结果类型与 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回其时间设置为零的 的值。 + 一个表达式,它指定应截断其时间部分的值。 + + 为 null。 + 没有规范“TruncateTime”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的非 null 成员调用规范“Var”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它生成集合的非 null 成员的方差值。 + 一个表达式,它指定应计算其方差的集合。 + + 为 null。 + 没有规范“Var”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它对指定集合的总体调用规范“VarP”函数。表达式的结果类型为 Edm.Double。 + 生成方差值的新的 DbFunctionExpression。 + 一个表达式,它指定应计算其方差的集合。 + + 为 null。 + 没有规范“VarP”函数的重载接受结果类型为 的参数。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 DateTime 或 DateTimeOffset 结果类型)调用规范“Year”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 返回整数年份值。 + 一个表达式,它指定应从中检索年份的值。 + + 为 null。 + 没有规范“Year”函数的重载接受结果类型为 的参数。 + + + 表示 Row 类,它旨在提供用于调用 <see cref="M:System.Data.Entity.Core.Common.CommandTrees.ExpressionBuilder.DbExpressionBuilder.NewRow(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Data.Entity.Core.Common.CommandTrees.DbExpression}})" /> 的类似构造函数的方法。 + + + 使用指定的第一列值和可选的连续列值来初始化 类的新实例。 + 提供新的行实例中的第一列的键/值对(必需)。 + 提供新的行实例中的任何后续列的键/值对(可选)。 + + + 将一个 Row 对象转换成 + 表示转换后的 Row 对象的 + Row 对象。 + + + 创建一个新的 ,它基于此行实例中包含的列构造一个新行。 + 一个新的 DbNewInstanceExpression,它使用与此行实例相同的列名和 DbExpression 值构造一行。 + + + 提供一个 API 以便构造调用空间相关的规范 EDM 函数的 ,并且在适用时允许该 API 作为针对表达式类型本身的扩展方法来访问。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Area”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的区域,如果 spatialValue 不是图面,则返回 null。 + 一个表达式,它指定应为其计算面积的空间表面值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“AsBinary”函数。表达式的结果类型为 Edm.Binary。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的已知二进制表示形式。 + 一个表达式,它指定应从其生成已知二进制表示形式的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“AsGml”函数。表达式的结果类型为 Edm.String。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的地理标记语言 (GML) 表示形式。 + 一个表达式,它指定应从其生成地理标记语言 (GML) 表示形式的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“AsText”函数。表达式的结果类型为 Edm.String。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的已知文本表示形式。 + 一个表达式,它指定应从其生成已知文本表示形式的空间值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“Centroid”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的形心点(可能不在图面本身上),如果 geometryValue 不是图面,则返回 null。 + 一个表达式,它指定应从其检索形心的几何表面值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“CoordinateSystemId”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 spatialValue 返回整数 SRID 值。 + 一个表达式,它指定应从其检索坐标系 ID (SRID) 的值。 + + + 创建一个 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Distance”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue1 和 spatialValue1 最近两点之间的距离。 + 指定第一个空间值的表达式。 + 一个表达式,它指定将测量其与 spatialValue1 之间距离的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Elevation”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的海拔值,如果 spatialValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索海拔(Z 坐标)值的空间点值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“EndPoint”函数。结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的结束点,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索端点的空间曲线值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“ExteriorRing”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回多边形 geometryValue 的外部环,如果 geometryValue 不是多边形,则返回 null。 + 几何值。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyCollectionFromBinary”函数。geographyCollectionWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理集合值。 + 提供地理集合值的已知二进制表示形式的表达式。 + 提供地理集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyCollectionFromText”函数。geographyCollectionWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理集合值。 + 提供地理集合值的已知文本表示形式的表达式。 + 提供地理集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有二进制结果类型)调用规范“GeographyFromBinary”函数。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的二进制值返回新的地理值。 + 提供地理值的已知二进制表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyFromBinary”函数。wellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的已知二进制表示形式的表达式。 + 提供地理值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeographyFromGml”函数。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于具有基础提供程序的默认坐标系 ID (SRID) 的指定值返回新的地理值。 + 提供地理值的地理标记语言 (GML) 表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyFromGml”函数。geographyMarkup 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的地理标记语言 (GML) 表示形式的表达式。 + 提供地理值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeographyFromText”函数。表达式的结果类型为 Edm.Geography。其值具有基础提供程序的默认坐标系 ID (SRID)。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的已知文本表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyFromText”函数。wellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理值。 + 提供地理值的已知文本表示形式的表达式。 + 提供地理值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyLineFromBinary”函数。lineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理线条值。 + 提供地理线条值的已知二进制表示形式的表达式。 + 提供地理线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyLineFromText”函数。lineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理线条值。 + 提供地理线条值的已知文本表示形式的表达式。 + 提供地理线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiLineFromBinary”函数。multiLineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多线条值。 + 提供地理多线条值的已知二进制表示形式的表达式。 + 提供地理多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiLineFromText”函数。multiLineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多线条值。 + 提供地理多线条值的已知文本表示形式的表达式。 + 提供地理多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPointFromBinary”函数。multiPointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多点值。 + 提供地理多点值的已知二进制表示形式的表达式。 + 提供地理多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPointFromText”函数。multiPointWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多点值。 + 提供地理多点值的已知文本表示形式的表达式。 + 提供地理多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPolygonFromBinary”函数。multiPolygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多多边形值。 + 提供地理多多边形值的已知二进制表示形式的表达式。 + 提供地理多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyMultiPolygonFromText”函数。multiPolygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多多边形值。 + 提供地理多多边形值的已知文本表示形式的表达式。 + 提供地理多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPointFromBinary”函数。pointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理点值。 + 提供地理点值的已知二进制表示形式的表达式。 + 提供地理多点值的 systempointWellKnownBinaryValue 的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPointFromText”函数。 + 规范的“GeographyPointFromText”函数。 + 提供地理点值的已知文本表示形式的表达式。 + 提供地理点值的坐标 systempointWellKnownTextValue 的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPolygonFromBinary”函数。polygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多边形值。 + 提供地理多边形值的已知二进制表示形式的表达式。 + 提供地理多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeographyPolygonFromText”函数。polygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geography。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的地理多边形值。 + 提供地理多边形值的已知文本表示形式的表达式。 + 提供地理多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryCollectionFromBinary”函数。geometryCollectionWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何集合值。 + 提供几何集合值的已知二进制表示形式的表达式。 + 提供几何集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryCollectionFromText”函数。geometryCollectionWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何集合值。 + 提供几何集合值的已知文本表示形式的表达式。 + 提供几何集合值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有二进制结果类型)调用规范“GeometryFromBinary”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的二进制值返回新的几何值。 + 提供几何值的已知二进制表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryFromBinary”函数。wellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的已知二进制表示形式的表达式。 + 提供几何值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeometryFromGml”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于具有基础提供程序的默认坐标系 ID (SRID) 的指定值返回新的几何值。 + 提供几何值的地理标记语言 (GML) 表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryFromGml”函数。geometryMarkup 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的地理标记语言 (GML) 表示形式的表达式。 + 提供几何值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有字符串结果类型)调用规范“GeometryFromText”函数。表达式的结果类型为 Edm.Geometry。其值具有基础提供程序的默认坐标系 ID (SRID)。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的已知文本表示形式的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryFromText”函数。wellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何值。 + 提供几何值的已知文本表示形式的表达式。 + 提供几何值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryLineFromBinary”函数。lineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何线条值。 + 提供几何线条值的已知二进制表示形式的表达式。 + 提供几何线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryLineFromText”函数。lineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何线条值。 + 提供几何线条值的已知文本表示形式的表达式。 + 提供几何线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiLineFromBinary”函数。multiLineWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多线条值。 + 提供几何多线条值的已知二进制表示形式的表达式。 + 提供几何多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiLineFromText”函数。multiLineWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多线条值。 + 提供几何多线条值的已知文本表示形式的表达式。 + 提供几何多线条值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPointFromBinary”函数。multiPointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多点值。 + 提供几何多点值的已知二进制表示形式的表达式。 + 提供几何多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPointFromText”函数。multiPointWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多点值。 + 提供几何多点值的已知文本表示形式的表达式。 + 提供几何多点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPolygonFromBinary”函数。multiPolygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多多边形值。 + 提供几何多多边形值的已知二进制表示形式的表达式。 + 提供几何多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryMultiPolygonFromText”函数。multiPolygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多多边形值。 + 提供几何多多边形值的已知文本表示形式的表达式。 + 提供几何多多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPointFromBinary”函数。pointWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何点值。 + 提供几何点值的已知二进制表示形式的表达式。 + 提供几何点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPointFromText”函数。pointWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何点值。 + 提供几何点值的已知文本表示形式的表达式。 + 提供几何点值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPolygonFromBinary”函数。polygonWellKnownBinaryValue 必须是二进制结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多边形值。 + 提供几何多边形值的已知二进制表示形式的表达式。 + 提供几何多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“GeometryPolygonFromText”函数。polygonWellKnownText 必须是字符串结果类型,而 coordinateSystemId 必须是整数数值结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它基于指定的值返回新的几何多边形值。 + 提供几何多边形值的已知文本表示形式的表达式。 + 提供几何多边形值的坐标系的坐标系 ID (SRID) 的表达式。 + + + 创建一个 ,它使用指定的参数调用规范“InteriorRingAt”函数。第一个参数必须具有 Edm.Geometry 结果类型。第二个参数必须具有整数结果类型。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 中位置 indexValue 处的内部环,如果 geometryValue 不是多边形,则返回 null。 + 几何值。 + 一个表达式,它指定要从多边形中检索的内部环的位置。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“InteriorRingCount”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回多边形 geometryValue 中的内部环数,如果 geometryValue 不是多边形,则返回 null。 + 几何值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“IsClosedSpatial”函数。结果类型是 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue 是否闭合的布尔值,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索 IsClosedSpatial 值的空间曲线值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“IsEmptySpatial”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue 是否为空的布尔值。 + 一个表达式,它指定应从其检索 IsEmptySptiaal 值的空间值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“IsRing”函数。结果类型是 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue 是否为圆环(闭合和简单)的布尔值,如果 geometryValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索 IsRing 值的几何曲线值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“IsSimpleGeometry”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue 是否为简单几何图形的布尔值。 + 几何值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“IsValidGeometry”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue 是否有效的布尔值。 + 指定应进行空间有效性测试的几何值的表达式。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geography 结果类型)调用规范“Latitude”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geographyValue 的纬度值,如果 geographyValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 Latitude 值的地理点值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geography 结果类型)调用规范“Longitude”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geographyValue 的经度值,如果 geographyValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 Longitude 值的地理点值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“Measure”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的度量值,如果 spatialValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索测量 (M) 坐标值的空间点值。 + + + 创建一个 ,它使用指定的参数调用规范“PointAt”函数。第一个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型。第二个参数必须具有整数结果类型。表达式的结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中位置 indexValue 处的点,如果 spatialValue 不是线串,则返回 null。 + 指定空间线串值的表达式。 + 指定要从线串内检索的点的位置的表达式。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“PointCount”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中点的数目,如果 spatialValue 不是线串,则返回 null。 + 一个表达式,它指定应从其检索点的数目的空间线串值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“PointOnSurface”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回保证位于图面 geometryValue 上的点,如果 geometryValue 不是图面,则返回 null。 + 一个表达式,它指定应从其检索点的几何表面值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialBoundary”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的边界。 + 一个表达式,它指定应从其检索 SpatialBoundary 值的几何值。 + + + 创建 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 和 Edm.Double 结果类型)调用规范“SpatialBuffer”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回一个几何值,该值表示小于或等于与 spatialValue 的距离的所有点。 + 一个指定空间值的表达式。 + 一个指定缓冲距离的表达式。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialContains”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否在空间上包含 geometryValue2 的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialConvexHull”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的凸包。 + 一个表达式,它指定应从其检索凸包值的几何值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialCrosses”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否与 geometryValue2 相交的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialDifference”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 与 spatialValue2 之间的差异的几何值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应计算与 spatialValue1 之间的差异的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialDimension”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它从 spatialValue 返回维度值。 + 一个表达式,它指定应从其检索 Dimension 值的值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialDisjoint”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue1 与 spatialValue2 是否在空间上不相交的布尔值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应与 spatialValue1 进行不相交性比较的空间值。 + + + 创建一个 ,它使用指定的参数调用规范“SpatialElementAt”函数。第一个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型。第二个参数必须具有整数结果类型。表达式的结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中位置 indexValue 处的集合元素,如果 spatialValue 不是集合,则返回 null。 + 一个表达式,它指定地理或几何集合值。 + 一个表达式,它指定要从几何或地理集合中检索的元素的位置。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialElementCount”函数。表达式的结果类型为 Edm.Int32。 + 一个新的 DbFunctionExpression,它返回 spatialValue 中元素的数目,如果 spatialValue 不是集合,则返回 null。 + 一个表达式,它指定应从其检索某个数目的元素的地理或几何集合值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialEnvelope”函数。表达式的结果类型为 Edm.Geometry。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的最小边框。 + 一个表达式,它指定应从其检索 Envelope 值的值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialEquals”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue1 是否与 spatialValue2 相等的布尔值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应与 spatialValue1 比较是否相等的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialIntersection”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 和 spatialValue2 的交集的空间值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定要计算与 spatialValue1 的交集的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialIntersects”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 spatialValue1 是否与 spatialValue2 相交的布尔值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应与 spatialValue1 进行相交性比较的空间值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialLength”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的长度,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索长度的空间曲线值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialOverlaps”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否在空间上与 geometryValue2 重叠的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建 ,它使用指定参数(参数必须具有 Edm.Geometry 和字符串结果类型)调用规范“SpatialRelate”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回一个布尔值,该值根据 intersectionPatternMatrix 指定的空间关系指示 geometryValue1 在空间上是否与 geometryValue2 相关。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + 一个表达式,它指定用于比较 geometryValue1 和 geometryValue2 的维度扩展九交模型 (DE-9IM) 交集模式的文本表示形式。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialSymmetricDifference”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 与 spatialValue2 之间的对称差异的几何值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应计算与 spatialValue1 之间的对称差异的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialTouches”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否与 geometryValue2 接触的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialTypeName”函数。表达式的结果类型为 Edm.String。 + 一个新的 DbFunctionExpression,它从 spatialValue 中返回字符串几何类型名称。 + 一个表达式,它指定应从中检索几何类型名称的值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“SpatialUnion”函数。spatialValue1 的结果类型必须与 spatialValue2 的结果类型相匹配。表达式的结果类型与 spatialValue1 和 spatialValue2 的类型相同。 + 一个新的 DbFunctionExpression,它返回表示 spatialValue1 和 spatialValue2 的并集的空间值。 + 指定第一个空间值的表达式。 + 一个表达式,它指定应计算与 spatialValue1 的并集的空间值。 + + + 创建 ,它使用指定参数(每个参数必须具有 Edm.Geometry 结果类型)调用规范“SpatialWithin”函数。表达式的结果类型为 Edm.Boolean。 + 一个新的 DbFunctionExpression,它返回指示 geometryValue1 是否在 geometryValue2 空间内的布尔值。 + 一个指定第一个几何值的表达式。 + 一个表达式,它指定应与 geometryValue1 进行比较的几何值。 + + + 创建一个 ,它使用指定参数(该参数必须具有 Edm.Geography 或 Edm.Geometry 结果类型)调用规范“StartPoint”函数。结果类型与 spatialValue 的结果类型相同。 + 一个新的 DbFunctionExpression,它返回 spatialValue 的起始点,如果 spatialValue 不是曲线,则返回 null。 + 一个表达式,它指定应从其检索起点的空间曲线值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“XCoordinate”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的 X 坐标值,如果 geometryValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 X 坐标值的几何点值。 + + + 创建一个 ,它使用指定的参数(该参数必须具有 Edm.Geometry 结果类型)调用规范“YCoordinate”函数。表达式的结果类型为 Edm.Double。 + 一个新的 DbFunctionExpression,它返回 geometryValue 的 Y 坐标值,如果 geometryValue 不是一个点,则返回 null。 + 一个表达式,它指定应从其检索 Y 坐标值的几何点值。 + + + 公共实体 SQL 分析器类。 + + + 分析具有指定参数的指定查询。 + 包含 以及描述内联函数定义的信息(如果有)。 + 要分析的 EntitySQL 查询。 + 可选查询参数。 + + + 分析具有特定设置变量的特定查询并生成 + 包含 以及描述内联函数定义的信息(如果有)。 + 要分析的查询。 + 可选查询变量。 + + + 实体 SQL 查询内联函数定义,作为 的一部分返回。 + + + eSQL 查询文本中函数定义的结束位置。 + + + 函数体和参数。 + + + 函数名。 + + + eSQL 查询文本中函数定义的起始位置。 + + + 实体 SQL 分析器结果信息。 + + + 在分析过程中生成的命令目录树。 + + + 描述查询内联函数定义的 对象的列表。 + + + 表示概念层的命令的类 + + + 使用指定的值初始化 类的新实例。 + + + 使用指定的语句初始化 类的新实例。 + 命令的文本。 + + + 使用指定的语句和连接初始化 类的新实例。 + 命令的文本。 + 与数据源的连接。 + + + 使用指定的语句、连接和事务初始化 类的新实例。 + 命令的文本。 + 与数据源的连接。 + 在其中执行命令的事务。 + + + 构造具有给定 eSQL 语句以及要使用的连接对象的 EntityCommand 对象 + 要执行的 eSQL 命令文本 + 连接对象 + 用于解析 DbProviderServices 的解析程序 + + + 取消执行 + + + 获取或设置指定要执行的命令或存储过程的实体 SQL 语句。 + 指定要执行的命令或存储过程的实体 SQL 语句。 + + + 获取或设置超时前要等待的时间长度。 + 等待命令执行所需的时间(以秒为单位)。 + + + 获取或设置要执行的命令目录树;只能设置命令目录树或命令文本中的其中一个,而不能同时设置二者。 + 要执行的命令目录树。 + + + 获取或设置一个值,该值指示如何解释 属性。 + + 枚举值之一。 + + + 获取或设置 使用的 + 由实体命令使用的连接。 + + + 创建并返回一个新的参数对象,该对象表示 eSQL 语句中的参数 + 参数对象。 + + + 创建 对象的新实例。 + + 对象的一个新实例。 + + + 用于执行命令的连接对象 + + + 此命令的参数集合 + + + 此命令要在其中执行的事务 + + + 获取或设置一个值,该值指示命令对象在 Windows 窗体设计器控件中是否应该可见。 + 如果该命令对象应在 Windows 窗体设计器中可见,则为 true;否则为 false。 + + + 获取或设置一个值,该值指示查询计划缓存是否启用。 + 如果查询计划缓存已启用,则为 true;否则为 false。 + + + 执行命令并且返回用于读取结果的数据读取器 + DbDataReader 对象 + 执行命令时要使用的行为 + + + 异步执行命令并且返回用于读取结果的数据读取器 + 表示异步操作的任务。任务结果包含一个 DbDataReader 对象。 + 执行命令时要使用的行为 + 针对取消请求监视的标记 + + + 执行当前命令。 + 受影响的行数。 + + + 异步执行此命令并且放弃从此命令返回的任何结果 + 表示异步操作的任务。任务结果包含受影响的行数。 + 等待任务完成期间要观察的 。 + + + 执行命令并返回一个数据读取器。 + 包含结果的 + + + 编译成命令目录树,并将其传递到基础存储区提供程序以供执行,然后使用指定的 根据生成的结果集生成一个 + 包含结果的 + + 值之一。 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 执行命令时要使用的行为 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 执行命令时要使用的行为 + 等待任务完成期间要观察的 。 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 异步执行命令并且返回用于读取结果的数据读取器。只能对 CommandType.CommandText 调用(否则,使用标准 Execute* 方法) + 表示异步操作的任务。任务结果包含一个 EntityDataReader 对象。 + 等待任务完成期间要观察的 。 + 对于存储过程命令;对于实体集合结果以外的任何项,则调用 + + + 执行命令,并返回结果集中第一行的第一列。其他列或行将被忽略。 + 结果集中第一行的第一列;如果结果集为空,则为空引用(在 Visual Basic 中为 Nothing)。 + + + 获取实体 SQL 语句或存储过程的参数。 + 实体 SQL 语句或存储过程的参数。 + + + 编译实体级别的命令并创建该命令的预制版本。 + + + 编译实体级别的命令并返回存储命令文本。 + 存储命令文本。 + + + 获取或设置在其中执行 的事务。 + 在其中执行 的事务。 + + + 获取或设置向正在更新的行应用命令结果的方式。 + + 值之一。 + + + 表示概念层的连接的类。一个实体连接只能被初始化一次(通过打开该连接)。之后将无法更改连接字符串、附加新的存储连接或更改存储连接字符串。 + + + 初始化 类的新实例。 + + + 使用指定的 来初始化 类的新实例。 + 与此 关联的 。 + 对象的基础数据源连接。 + workspace 或 connection 参数为 null。 + 工作区缺少概念模型。-或-工作区缺少映射文件。-或-工作区缺少存储模型。-或-连接未处于关闭状态。 + connection 并非来自与 ADO.NET Entity Framework 兼容的提供程序。 + + + 从内存中加载的元数据构造 EntityConnection + 包含元数据信息的工作区。 + 存储连接。 + 如果设置为 true,则释放实体连接时将释放该存储连接;否则调用方必须释放该存储连接。 + + + 基于连接字符串初始化 类的新实例。 + 提供程序特定的连接字符串。 + 提供的连接字符串关键字无效,或未提供所需的连接字符串关键字。 + + + 开始一个数据库事务 + 表示新事务的对象 + 事务的隔离级别 + + + 使用基础提供程序开始一个事务。 + 一个新的 。返回的 实例以后可以与 关联以执行该事务下的命令。 + 基础提供程序未知。-或-对已具有当前事务的 调用 。-或- 的状态不是 + + + 使用基础提供程序开始一个具有指定隔离级别的事务。 + 一个新的 。返回的 实例以后可以与 关联以执行该事务下的命令。 + 事务的隔离级别。 + 基础提供程序未知。-或-对已具有当前事务的 调用 。-或- 的状态不是 + + + 不提供支持。 + 不提供支持。 + 调用该方法时。 + + + 关闭与数据库之间的连接。 + 关闭连接时出错。 + + + 获取或设置 连接字符串。 + 建立与数据源的初始连接所需的连接字符串。默认值为一个空字符串。连接关闭时,将返回当前设置的值。如果未设置任何值,则将返回一个空字符串。 + + + 获取从尝试建立连接到结束尝试并生成错误需要等待的秒数。 + 等待连接打开所需的时间(以秒为单位)。默认值为基础数据提供程序的默认超时值。 + + + 设置为此 的情况下创建 的新实例。 + 一个 对象。 + 基础数据提供程序的名称未知。 + + + 创建使用此连接对象的新命令对象 + 命令对象。 + + + 获取此连接在其中登记的当前事务。可能为 null。 + + + 获取当前数据库或将在连接打开后使用的数据库的名称。 + 基础数据提供程序的 Database 属性值。 + + + 获取要连接到的数据源的名称或网络地址。 + 数据源的名称。默认值为一个空字符串。 + + + 获取与此 EntityConnection 关联的提供程序工厂 + + + 清除此连接对象 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源 + + + 在指定的事务中登记此 + 要在其中进行登记的事务对象。 + + 的状态不是 + + + 返回与此 关联的 + 与此 关联的 + 内联连接字符串包含一个无效的 Metadata 关键字值。 + + + 通过调用基础数据提供程序的 Open 方法建立到数据源的连接。 + 打开连接时出错,或基础数据提供程序的名称未知。 + 内联连接字符串包含一个无效的 Metadata 关键字值。 + + + 通过在基础数据提供程序上调用 Open 方法以异步方式建立与数据存储的连接 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取一个字符串,该字符串包含客户端连接到的数据源的版本。 + 提供程序连接字符串中包含的数据源的版本。 + + + 获取 EntityConnection 的状态,它设置为跟踪此 EntityConnection 包装的基础数据库连接的状态。 + + + 提供对 对象使用的基础数据源连接的访问。 + 数据源连接的 + + + 表示实体客户端提供程序的连接字符串生成器的类 + + + 初始化 类的新实例。 + + + 使用提供的连接字符串初始化 类的新实例。 + 一个指向基础数据源的提供程序特定的连接字符串。 + + + 清除 实例的内容。 + + + 确定 是否包含特定的键。 + 如果 包含具有指定键的元素,则返回 true;否则返回 false。 + 要在 中定位的键。 + + + 获取一个值,指示 是否具有固定大小。 + 无论在何种情况下,都将返回 true,因为 始终提供固定大小的关键字/值对集合。 + + + 获取或设置与指定的键关联的值。在 C# 中,此属性为索引器。 + 与指定的键相关联的值。 + + + 获取包含 中的键的 + 一个 ,包含 中的键。 + + + 获取或设置连接字符串中的元数据位置。 + 获取或设置连接字符串中的元数据位置。 + + + 获取或设置配置文件中定义的节名称。 + 配置文件中的节名称。 + + + 获取或设置连接字符串中的基础 .NET Framework 数据提供程序的名称。 + 基础 .NET Framework 数据提供程序的固定名称。 + + + 获取或设置提供程序特定的内部连接字符串。 + 提供程序特定的内部连接字符串。 + + + 实例中移除具有指定的键的项。 + 如果该键存在于连接字符串中并被移除,则返回 true;如果该键不存在,则返回 false。 + 要从此 中的连接字符串删除的关键字/值对的键。 + 关键字为 null(在 Visual Basic 中为 Nothing) + + + 从此 中检索与提供的键相对应的值。 + 如果在连接字符串中找到 keyword,则返回 true;否则返回 false。 + 要检索的项的键。 + 与 keyword 相对应的值。 + keyword 包含一个 null 值(在 Visual Basic 中为 Nothing)。 + + + 实体客户端提供程序的数据读取器类 + + + 关闭 对象。 + + + 获取此 + 数据记录信息。 + + + 获取一个值,该值指示当前行的嵌套深度。 + 当前行的嵌套深度。 + + + 释放由此 占用的资源并调用 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 获取当前行中的列数。 + 当前行中的列数。 + + + 以布尔值的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以字节的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在指定列中从 dataIndex 指示的位置开始,将字节流读入缓冲区,读入缓冲区的起始位置由 bufferIndex 指示。 + 读取的实际字节数。 + 从零开始的列序号。 + 行中作为读取操作起始位置的索引。 + 要将数据复制到的缓冲区。 + 要将数据复制到的位置的缓冲区索引。 + 要读取的最多字符数。 + + + 以单个字符的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在指定列中从 dataIndex 指示的位置开始,将字符流读入缓冲区,读入缓冲区的起始位置由 bufferIndex 指示。 + 读取的实际字符数。 + 从零开始的列序号。 + 行中作为读取操作起始位置的索引。 + 要将数据复制到的缓冲区。 + 要将数据复制到的位置的缓冲区索引。 + 要读取的最多字符数。 + + + 对象的形式返回嵌套的读取器。 + 作为 对象嵌套的读取器。 + 列的序号。 + + + 返回嵌套的 + 嵌套的数据记录。 + 要返回的 DbDataRecord 的编号。 + + + 获取指定列的数据类型的名称。 + 数据类型的名称。 + 从零开始的列序号。 + + + 对象的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 为可用提供程序特定的实现重写的已请求的列序号返回一个 对象。 + 数据读取器。 + 从零开始的列序号。 + + + 对象的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以双精度浮点数字的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 返回一个可用于循环访问数据读取器中的行的 + 一个 ,可用于循环访问数据读取器中的行。 + + + 获取指定列的数据类型。 + 指定列的数据类型。 + 从零开始的列序号。 + + + 以单精度浮点数字的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以全局唯一标识符 (GUID) 的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以 16 位有符号整数的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以 32 位有符号整数的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 以 64 位有符号整数的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在给定从零开始的列序号时获取该列的名称。 + 指定列的名称。 + 从零开始的列序号。 + + + 在给定列名时获取相应的列序号。 + 从零开始的列序号。 + 列的名称。 + 指定的名称不是有效的列名。 + + + 返回指定列的提供程序特定的字段类型。 + 描述指定列的数据类型的 对象。 + 从零开始的列序号。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 在当前行的集合中获取提供程序特定的所有属性列。 + 数组中的 实例数。 + 要将属性列复制到的 数组。 + + + 返回一个描述 的列元数据的 + 一个描述列元数据的 + + + 实例的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + 从零开始的列序号。 + + + 使用当前行的列值来填充对象数组。 + 数组中的 实例数。 + 要将属性列复制到的 数组。 + + + 获取一个值,该值指示此 是否包含一个或多个行。 + 如果 包含一行或多行,则为 true;否则为 false。 + + + 获取一个值,该值指示 是否已关闭。 + 如果 已关闭,则为 true;否则为 false。 + + + 获取一个值,该值指示列中是否包含不存在或丢失的值。 + 如果指定的列等效于 ,则为 true;否则为 false。 + 从零开始的列序号。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + + + 实例的形式获取指定列的值。 + 指定列的值。 + + + 在读取一批语句的结果时,使读取器前进到下一个结果。 + 如果存在其他结果集,则为 true;否则为 false。 + + + 在读取一批语句时,以异步方式将读取器移到下一结果集 + 表示异步操作的任务。如果存在其他结果集,则任务结果将包含 true;否则为 false。 + 等待任务完成期间要观察的 。 + + + 使读取器前进到结果集中的下一条记录。 + 如果存在其他行,则为 true;否则为 false。 + + + 以异步方式将读取器移到当前结果集的下一行 + 表示异步操作的任务。如果存在其他行,则任务结果将包含 true;否则为 false。 + 等待任务完成期间要观察的 。 + + + 获取通过执行 SQL 语句更改、插入或删除的行数。 + 更改、插入或删除的行数。如果是 SELECT 语句,则返回 -1;如果未影响任何行或语句失败,则返回 0。 + + + 获取 中未隐藏的字段的数目。 + 未隐藏的字段的数目。 + + + 表示在 EntityCommand 中使用的参数的类 + + + 使用默认值初始化 类的新实例。 + + + 使用指定的参数名称和数据类型初始化 类的新实例。 + 参数名。 + + 值之一。 + + + 使用指定的参数名称、数据类型和大小初始化 类的新实例。 + 参数名。 + + 值之一。 + 参数的大小。 + + + 使用指定的属性初始化 类的新实例。 + 参数名。 + + 值之一。 + 参数的大小。 + + 值之一。 + 若为 true,则指示参数接受 null 值,否则为 false。 + 用于表示值的位数。 + 值所解析的小数位数。 + 源列的名称。 + + 值之一。 + 参数的值。 + + + 使用指定的属性初始化 类的新实例。 + 参数名。 + + 值之一。 + 参数的大小。 + 源列的名称。 + + + 获取或设置参数的 + + 值之一。 + + + 获取或设置参数的方向。 + + 值之一。 + + + 获取或设置表示为 EdmType 的参数类型。 + 表示为 EdmType 的参数的类型。 + + + 获取或设置一个值,该值指示参数是否接受 null 值。 + 如果接受 null 值,则为 true;否则为 false。 + + + 获取或设置实体参数的名称。 + 实体参数的名称。 + + + 获取或设置用于表示 属性的位数。 + 用于表示值的位数。 + + + 重置与 关联的类型。 + + + 获取或设置所解析的 的小数位数。 + 值所解析的小数位数。 + + + 获取或设置列内数据的最大大小。 + 列内数据的最大大小。 + + + 获取或设置源列的名称,该源列映射到 并用于加载或返回 + 映射到数据集并用于加载或返回值的源列的名称。 + + + 获取或设置一个值,该值指示源列是否可以为 null。 + 如果源列可以为 null,则为 true;否则为 false。 + + + 获取或设置在加载值时要使用的 + + 值之一。 + + + 返回参数的字符串表示形式。 + 参数的字符串表示形式。 + + + 获取或设置参数的值。 + 参数的值。 + + + 表示在 EntityCommand 中使用的参数集合的类 + + + 将指定的 对象添加到 中。 + 一个新的 对象。 + 要添加到集合中的 。 + 值参数中指定的 已添加到这个或其他 中。 + 传递的参数不是 + value 参数为 null。 + + + 将指定的对象添加到 中。 + 新的 对象的索引。 + 一个 。 + + + 在给定参数名称和数据类型时向 中添加一个 + 一个新的 对象。 + 参数名。 + + 值之一。 + + + 使用给定的参数名称、数据类型和列长度向 中添加一个 + 一个新的 对象。 + 参数名。 + + 值之一。 + 列的长度。 + + + 的末尾添加一个值数组。 + 要添加的 值。 + + + 的末尾添加一个 值数组。 + 要添加的 值。 + + + 的末尾添加一个值。 + + 对象。 + 参数名。 + 要添加的值。 + + + 中删除所有的 对象。 + + + 确定指定的 是否在此 中。 + 如果 包含该值,则为 true;否则为 false。 + + 值。 + + + 确定指定的 是否在此 中。 + 如果 包含该值,则为 true;否则为 false。 + + 值。 + + + 将当前 的所有元素复制到指定的一维 中,并以指定的目标 索引位置作为复制到的起始位置。 + 作为当前 中的元素的复制目标的一维 。 + 一个 32 位整数,表示 中开始复制的位置的索引。 + + + 将当前 的所有元素复制到指定的 中,并以指定的目标索引位置作为复制到的起始位置。 + 作为当前 中的元素的复制目标的 。 + 一个 32 位整数,表示 中开始复制的位置的索引。 + + + 获取一个包含 中的元素数的整数。 + 以整数形式表示的 中的元素数。 + + + 返回一个循环访问 的枚举器。 + 用于 + + + 获取指定的 在集合中的位置。 + 作为集合中的 的指定 的位置(从零开始)。如果 中不存在该对象,则返回 -1。 + 要查找的 。 + + + 获取指定的 在集合中的位置。 + 作为集合中的 的指定 的位置(从零开始)。如果 中不存在该对象,则返回 -1。 + 要查找的 。 + + + 获取具有指定名称的指定 的位置。 + 具有指定名称(区分大小写)的指定 的位置(从零开始)。如果 中不存在该对象,则返回 -1。 + 要查找的 的名称(区分大小写)。 + + + 中的指定索引处插入一个 对象。 + 应将值插入到的位置的索引(从零开始)。 + 要插入到 中的 对象。 + + + 插入 的指定索引处。 + 应将值插入到的位置的索引(从零开始)。 + 要插入到 中的 。 + + + 获取一个值,指示 是否具有固定大小。 + 如果 具有固定大小,则返回 true;否则返回 false。 + + + 获取一个值,指示 是否是只读的。 + 如果 是只读的,则返回 true;否则返回 false。 + + + 获取一个值,该值指示 是否已同步。 + 如果 已同步,则返回 true;否则返回 false。 + + + 获取位于指定索引处的 + 指定索引处的 + + + 获取具有指定名称的 + 具有指定名称的 + + + 从集合中移除指定的 + 要从集合中移除的 对象。 + 该参数不是 + 集合中不存在该参数。 + + + 从集合中移除指定的参数。 + 要从集合中移除的 对象。 + + + 的指定索引处移除 + 要移除的 对象的索引(从零开始)。 + + + 中移除具有指定参数名称的 + 要移除的 的名称。 + + + 获取可用于同步对 的访问的对象。 + 可用于同步对 的访问的对象。 + + + 类,表示实体客户端提供程序的提供程序工厂 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 引发 。当前不支持该方法。 + 当前不支持该方法。 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 引发 。当前不支持该方法。 + 当前不支持该方法。 + + + 返回实现 类的提供程序类的一个新实例。 + + 的一个新实例。 + + + 引发 。当前不支持该方法。 + 当前不支持该方法。 + 当前不支持该方法。 + + + 实体客户端提供程序工厂对象的单一实例对象。这保留一个公共字段(而非属性),因为 DbProviderFactory 应为字段。 + + + 返回请求的 类。 + + 的一个新实例。支持的类型是 。对于所有其他类型均返回 null(在 Visual Basic 中为 Nothing)。 + 要返回的 。 + + + 表示概念层的事务的类 + + + 提交基础事务。 + + + 获取此 + 一个指向基础数据源的 + + + 拥有此事务对象的连接对象 + + + 清除此事务对象 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源 + + + 获取此 的隔离级别。 + 一个 枚举值,表示基础事务的隔离级别。 + + + 回滚基础事务。 + + + 获取基础提供程序事务的 DbTransaction。 + + + 表示 CS 空间中某一 AssociationSet 的映射元数据。 + + + 初始化新的 AssociationSetMapping 实例。 + 要映射的关联集。 + 要映射的存储实体集。 + 父容器映射。 + + + 添加属性映射条件。 + 要添加的条件。 + + + 获取映射的关联集。 + + + 获取包含的关联类型映射。 + + + 获取属性映射条件。 + + + 获取或设置相应的函数映射。可以为 null。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 获取或设置源端属性映射。 + + + 获取映射的存储实体集。 + + + 获取或设置目标端属性映射。 + + + 描述关联集的修改函数映射。 + + + 初始化新的 实例。 + 关联集。 + 删除函数映射。 + 插入函数映射。 + + + 获取关联集。 + 关联集。 + + + 获取删除函数映射。 + 删除函数映射。 + + + 获取插入函数映射。 + 插入函数映射。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 表示 CS 空间中关联类型映射的映射元数据。 + + + 创建 AssociationTypeMapping 实例。 + 包含此 AssociationTypeMapping 的 AssociationSetMapping。 + + + 获取包含此 AssociationTypeMapping 的 AssociationSetMapping。 + + + 获取要映射的关联类型。 + + + 获取单个映射片段。 + + + 复杂属性的映射元数据。 + + + 构造一个新的复杂属性映射对象 + 表示此复杂成员的 MemberMetadata 对象 + + + 添加与嵌套复杂类型对应的类型映射。 + 要添加的复杂类型映射。 + + + 删除与嵌套复杂类型对应的类型映射。 + 要删除的复杂类型映射。 + + + 获取与嵌套复杂类型对应的类型映射的只读集合。 + + + 复杂类型的映射元数据。 + + + 创建 ComplexTypeMapping 实例。 + 要映射的 ComplexType。 + + + 添加属性映射条件。 + 要添加的属性映射条件。 + + + 添加属性映射。 + 要添加的属性映射。 + + + 获取要映射的 ComplexType。 + + + 获取属性映射条件的只读集合。 + + + 获取属性映射的只读集合。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 删除属性映射。 + 要删除的属性映射。 + + + 某一类型上条件属性映射的映射元数据。条件属性映射在 C 侧属性或 S 侧属性上指定条件。 + + + 获取指定已映射列的 EdmProperty。 + + + 获取指定已映射属性的 EdmProperty。 + + + 某一关联的 End 属性的映射元数据。 + + + 创建关联端属性映射。 + 指定要映射的关联端的 AssociationEndMember。 + + + 添加子属性列映射。 + 指定要添加的属性列映射的 ScalarPropertyMapping。 + + + 获取指定映射的关联端的 AssociationEndMember。 + + + 获取指定此关联端属性映射的子级的 ScalarPropertyMapping 的 ReadOnlyCollection。 + + + 删除子属性列映射。 + 指定要删除的属性列映射的 ScalarPropertyMapping。 + + + 表示 CS 空间中 EntityContainer 映射的映射元数据。 + + + 初始化 类的新实例。 + 要映射的概念实体容器。 + 要映射的存储实体容器。 + 父映射项集合。 + 指示是否生成更新视图的标志。 + + + 添加函数导入映射。 + 要添加的函数导入映射。 + + + 添加关联集映射。 + 要添加的关联集映射。 + + + 添加实体集映射。 + 要添加的实体集映射。 + + + 获取关联集映射。 + 关联集映射。 + + + 获取此项的类型种类。 + 此项的类型种类。 + + + 获取概念实体容器。 + 概念实体容器。 + + + 获取实体集映射。 + 实体集映射。 + + + 获取函数导入映射。 + 函数导入映射。 + + + 获取指示是否生成更新视图的标志。 + 若为 true,则生成更新视图;否则为 false。 + + + 获取父映射项集合。 + 父映射项集合。 + + + 删除函数导入映射。 + 要删除的函数导入映射。 + + + 删除关联集映射。 + 要删除的关联集映射。 + + + 删除关联集映射。 + 要删除的关联集映射。 + + + 获取存储实体容器。 + 存储实体容器。 + + + 表示 CS 空间中某一范围的映射元数据。 + + + 获取父容器映射。 + + + 获取或设置与此映射关联的查询视图。 + + + 表示 CS 空间中某一 EnitytSet 的映射元数据。 + + + 初始化新的 EntitySetMapping 实例。 + 要映射的实体集。 + 父容器映射。 + + + 添加函数映射。 + 要添加的函数映射。 + + + 添加类型映射。 + 要添加的类型映射。 + + + 获取映射的实体集。 + + + 获取包含的实体类型映射。 + + + 获取相应的函数映射。 + + + 删除函数映射。 + 要删除的函数映射。 + + + 删除类型映射。 + 要删除的类型映射。 + + + 实体类型的映射元数据。如果 EntitySet 表示多种类型的实体,则对于 EntitySet,我们将具有多个 EntityTypeMapping(例如:如果 PersonSet 实体范围表示 Person 和 Customer 类型的实体,则我们在 PersonSet 的映射下将具有两个 EntityType 映射)。 + + + 创建 EntityTypeMapping 实例。 + 包含此 EntityTypeMapping 的 EntitySetMapping。 + + + 添加映射片段。 + 要添加的映射片段。 + + + 将实体类型层次结构添加到映射中。层次结构由指定的根实体类型表示。 + 要添加的层次结构的根 EntityType。 + + + 将实体类型添加到映射中。 + 要添加的 EntityType。 + + + 获取包含此 EntityTypeMapping 的 EntitySetMapping。 + + + 获取要映射的单个 EntityType。如果发生层次结构类型映射,则引发异常。 + + + 获取映射的实体类型。 + + + 获取映射片段的只读集合。 + + + 获取指示这是否是类型层次结构映射的标志。 + + + 获取层次结构映射的已映射基类型。 + + + 删除映射片段。 + 要删除的映射片段。 + + + 从映射中删除实体类型层次结构。层次结构由指定的根实体类型表示。 + 要删除的层次结构的根 EntityType。 + + + 从映射中删除实体类型。 + 要删除的 EntityType。 + + + 描述实体集内的实体类型的修改函数映射。 + + + 初始化 类的新实例。 + EDM 实体类型。 + 功能删除的映射。 + 功能插入的映射。 + 功能更新的映射。 + + + 获取功能删除的映射。 + 功能删除的映射。 + + + 获取 EDM 实体类型。 + EDM 实体类型。 + + + 获取功能插入的映射。 + 功能插入的映射。 + + + 返回 对象的字符串表示形式。 + + 对象的字符串表示形式。 + + + 获取功能更新的映射。 + 功能更新的映射。 + + + 在设计时创建的、用于存储生成的视图的类型的基类。 + + + 初始化 类的新实例。 + + + 获取或设置 的名称。 + 容器名称。 + + + 返回指定索引处的键/值对,其中包含视图和其键。 + 索引处的键/值对,其中包含视图以及视图的键。 + 视图的索引。 + + + 视图的哈希值。 + 哈希值。 + + + 哈希值。 + 哈希值。 + + + 获取或设置存储架构中的 + 容器名称。 + + + 获取或设置视图计数。 + 视图计数。 + + + 用于标记包含生成的视图类型的程序集的特性。 + + + 初始化 类的新实例。 + 视图的类型。 + + + 获取视图的 T:System.Type。 + 视图的 T:System.Type。 + + + 表示函数导入结果的复杂类型映射。 + + + 初始化新的 FunctionImportComplexTypeMapping 实例。 + 返回类型。 + 函数导入的结果类型的属性映射。 + + + 获取返回类型。 + + + 表示函数导入实体类型映射。 + + + 初始化新的 FunctionImportEntityTypeMapping 实例。 + 要映射的类型层次结构的基础实体类型。 + 要映射的实体类型。 + 函数导入的结果类型的属性映射。 + 映射条件。 + + + 获取映射条件。 + + + 获取要映射的实体类型。 + + + 获取要映射的层次结构的基础实体类型。 + + + 表示函数导入结果的映射条件。 + + + 获取用于计算条件的列的名称。 + 用于计算此条件的列的名称。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 此当前实例的字符串表示形式。 + + + 表示通过检查 null 或非 null 来进行计算的函数导入的结果的映射条件。 + + + 初始化新的 FunctionImportEntityTypeMappingConditionIsNull 实例。 + 用于计算此条件的列的名称。 + 指示是执行 null 还是非 null 检查的标志。 + + + 获取指示是执行 null 还是非 null 检查的标志。 + + + 表示函数导入的结果的映射条件,通过与指定值作比较来计算此条件。 + + + 初始化新的 FunctionImportEntityTypeMappingConditionValue 实例。 + 用于计算此条件的列的名称。 + 要与之作比较的值。 + + + 获取用于比较的值。 + + + 表示从模型函数导入到存储可组合或不可组合函数的映射。 + + + 获取模型函数(或者映射的源) + + + 获取存储函数(或者映射的目标) + + + 表示从模型函数导入到存储可组合函数的映射。 + + + 初始化新的 FunctionImportMappingComposable 实例。 + 模型函数导入。 + 可组合的存储函数。 + 函数导入的结果映射。 + 父容器映射。 + + + 获取函数导入的结果映射。 + + + 表示从模型函数导入到不可组合的存储函数的映射。 + + + 初始化新的 FunctionImportMappingNonComposable 实例。 + 模型函数导入。 + 存储不可组合函数。 + 函数导入结果映射。 + 父容器映射。 + + + 获取函数导入结果映射。 + + + 表示函数导入的结果映射。 + + + 初始化 类的新实例。 + + + 添加类型映射。 + 要添加的类型映射。 + + + 删除类型映射。 + 要删除的类型映射。 + + + 获取类型映射。 + 类型映射。 + + + 用于映射函数导入返回类型的属性的基类。 + + + 将函数导入返回类型属性映射到表列。 + + + 初始化新的 FunctionImportReturnTypeScalarPropertyMapping 实例。 + 映射的属性名称。 + 映射的列名称。 + + + 获取映射的列名称。 + + + 获取映射的属性名称。 + + + 指定函数导入结构类型映射。 + + + 获取函数导入的结果类型的属性映射。 + + + 指定通过检查属性/列的值是否为 null 来进行计算的映射条件。 + + + 创建 IsNullConditionMapping 实例。 + 指定属性或列的 EdmProperty。 + 指示是执行 null 还是非 null 检查的布尔值。 + + + 获取指定是通过执行 null 检查还是非 null 检查来计算条件的布尔值。 + + + 表示所有映射元数据的项基类 + + + 表示映射片段的元数据。一组映射片段构成 Set 映射(EntitySet、AssociationSet 或 CompositionSet)。每个 MappingFragment 都为映射到单个表的类型的这些属性提供映射。 + + + 创建 MappingFragment 实例。 + 与要映射的表或视图对应的 EntitySet。 + 包含此 MappingFragment 的 TypeMapping。 + 指示在生成查询时是否包括“DISTINCT”的标志。 + + + 添加属性映射条件。 + 要添加的属性映射条件。 + + + 添加属性映射。 + 要添加的属性映射。 + + + 获取属性映射条件的只读集合。 + + + 获取指示在生成查询时是否包括“DISTINCT”的标志。 + + + 获取属性映射的只读集合。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 删除属性映射。 + 要删除的属性映射。 + + + 获取与要映射的表或视图对应的 EntitySet。 + + + 获取包含此 MappingFragment 的 TypeMapping。 + + + 表示映射空间 (DataSpace.CSSpace) 中项的基类。 + + + 初始化 类的新实例。 + + + 表示 Edm 空间中映射项的集合的类。 + + + 描述用于实体或关联的更改处理的修改函数绑定。 + + + 初始化 类的新实例。 + 实体或关联集。 + 实体或关联类型。 + 我们应绑定到的函数的元数据。 + 函数参数的绑定。 + 生成受影响行数的输出参数。 + 函数计算结果的绑定 + + + 获取我们应绑定到的函数的元数据。 + 我们应绑定到的函数的元数据。 + + + 获取函数参数的绑定。 + 函数参数的绑定。 + + + 获取函数计算的结果的绑定。 + 函数计算结果的绑定。 + + + 获取生成受影响行数的输出参数。可能为 null。 + 生成受影响行数的输出参数。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的字符串表示形式。 + + + 描述成员在实体或关联类型结构中的位置。 + + + 初始化 类的新实例。 + 从结构的叶(要绑定的成员)到根的路径中的成员。 + 我们通过此成员导航到的关联集。如果值为 null,则这不是导航成员路径。 + + + 获取我们通过此成员导航到的关联集。如果值为 null,则这不是导航成员路径。 + 我们通过此成员导航到的关联集。 + + + 获取从结构的叶(要绑定的成员)到根的路径中的成员。 + 从结构的叶(要绑定的成员)到根的路径中的成员。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 表示将修改函数参数绑定到要修改的实体或关联的成员。 + + + 初始化 类的新实例。 + 采用值的参数。 + 定义值的实体或关联成员的路径。 + 如果绑定当前或原始的成员值,则为 true;否则为 false。 + + + 获取指示是绑定当前的还是原始的成员值的标志。 + 如果绑定了当前或原始的成员值,则为 true;否则为 false。 + + + 获取定义值的实体或关联成员的路径。 + 定义值的实体或关联成员的路径。 + + + 获取采用值的参数。 + 采用值的参数。 + + + 使用指定格式将此实例的值转变为其等效字符串表示形式。 + 格式所指定的此实例的值的字符串表示形式。 + + + 定义从命名结果集列到采用值的成员的绑定。 + + + 初始化 类的新实例。 + 要从函数结果集绑定的列的名称。 + 要在实体上设置的属性。 + + + 获取要从函数结果集绑定的列的名称。 + 要从函数结果集绑定的列的名称。 + + + 获取要在实体上设置的属性。 + 要在实体上设置的属性。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 属性映射的所有类型的映射元数据。 + + + 获取指定已映射属性的 EdmProperty。 + + + 标量属性的映射元数据。 + + + 在简单属性和列之间创建映射。 + 要映射的属性。 + 要映射的列。 + + + 获取指定已映射列的 EdmProperty。 + + + 表示存储映射(CS 映射)空间中的项集合。 + + + 使用指定的 和 XML 读取器初始化 类的新实例。 + 此映射要使用的 。 + 此映射要使用的 。 + 此映射要使用的 XML 读取器。 + + + 使用指定的 以及指示元数据文件路径的字符串的集合初始化 类的新实例。 + 此映射要使用的 。 + 此映射要使用的 。 + 此映射要使用的文件路径。 + + + 计算集合中单个容器映射的哈希值。 + 指定计算出的哈希值的字符串。 + + + 计算由已映射容器的名称指定的容器映射的哈希值。 + 指定计算出的哈希值的字符串。 + 概念模型中容器的名称。 + 存储模型中容器的名称。 + + + 创建一个 + 如果未遇到错误,则为 实例。否则为 null。 + 要映射的 EDM 元数据集合。不得为 null。 + 要映射的存储元数据集合。不得为 null。 + 要加载的 MSL 项目。不得为 null。 + MSL 项目的路径。用于错误消息中。可为 null,在此情况下 XmlReader 的基 Uri 将用作路径。 + 加载时遇到的错误的集合。 + + + 为集合中的单个容器映射创建(范围、生成的视图)字典。 + 用于指定生成的视图()的字典。 + 积累潜在错误的列表。 + + + 为由已映射容器的名称指定的容器映射创建(范围,生成的视图)字典。 + 用于指定生成的视图()的字典。 + 概念模型中容器的名称。 + 存储模型中容器的名称。 + 积累潜在错误的列表。 + + + 获取此 表示的版本。 + 表示的版本。 + + + 获取或设置一个 ,它用于创建在检索预生成的映射视图时使用的 实例。 + 创建用于检索预生成的映射视图的 实例的 + + + 指定结构类型映射。 + + + 初始化 类的新实例。 + + + 添加属性映射条件。 + 要添加的属性映射条件。 + + + 添加属性映射。 + 要添加的属性映射。 + + + 获取属性映射条件的只读集合。 + + + 获取属性映射的只读集合。 + + + 删除属性映射条件。 + 要删除的属性映射条件。 + + + 删除属性映射。 + 要删除的属性映射。 + + + 表示 CS 空间中类型映射的映射元数据。 + + + 指定通过将属性或列的值与给定值作比较来进行计算的映射条件。 + + + 创建 ValueConditionMapping 实例。 + 指定属性或列的 EdmProperty。 + 指定要与之作比较的值的对象。 + + + 获取指定要检查的值的对象。 + + + 表示关联类型的端 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 创建一个只读的 AssociationEndMember 实例。 + 新创建的 AssociationEndMember 实例。 + 关联端成员的名称。 + 端的引用类型。 + 端的多重性。 + 指示端的删除行为的标志。 + 要与该实例相关联的元数据属性。 + 指定的名称为 null 或空。 + 指定的引用类型为 null。 + + + 表示关联集的类 + + + 获取此 的 End。 + 一个 类型的集合,其中包含此 的 End。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 从指定的参数创建一个只读 AssociationSet 实例。 + 新创建的 AssociationSet 实例。 + 关联集的名称。 + 关联集中元素的关联类型。 + 源关联集端的实体集。 + 目标关联集端的实体集。 + 要与该实例相关联的元数据属性。 + 指定的名称为 null 或空。 + 指定的关联类型为 null。 + 指定的关联类型的其中一端的实体类型与相应实体集端的实体类型不匹配。 + + + 获取与此 有关的关联。 + 一个 对象,表示与此 有关的关联。 + + + 表示 AssociationSet 端的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取与此 对象相对应的 End 成员。 + 一个 对象,表示与此 对象相对应的 End 成员。 + + + 获取由此 End 角色引用的实体集。 + 一个 对象,表示由此 End 角色引用的实体集。 + + + 获取此 的 End 名称。 + 的 End 名称。 + + + 获取此 的父关联集。 + 一个 对象,表示此 的父关联集。 + + + 获取此 的 End 角色名称。 + 的 End 角色名称。 + + + 返回此 的 End 角色名称。 + 的 End 角色名称。 + + + 描述概念模型中两个实体之间的关联/关系,或者描述存储模型中两个表之间的外键关系。在概念模型中,相关类不一定定义外键属性。如果定义了某一外键,则 属性将为 true,并且 属性将包含外键的详细信息 + + + 获取此 的端的列表。 + 一个 类型的集合,其中包含此 的 End 列表。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取或设置引用约束。 + 引用约束。 + + + 从指定的参数创建一个只读 AssociationType 实例。 + 新创建的 AssociationType 实例。 + 关联类型的名称。 + 关联类型的命名空间。 + 指示外键 (FK) 关系的标志。 + 关联类型的数据空间。 + 源关联端成员。 + 目标关联端成员。 + 一个引用约束。 + 要与该实例相关联的元数据属性。 + 指定的名称为 null 或空。 + 指定的命名空间为 null 或空。 + + + 获取一个布尔属性值,该值指定列是否为外键。 + 一个指定列是否为外键的布尔值。如果为 true,则列是外键。如果为 false(默认值),则列不是外键。 + + + 获取此 的约束列表。 + 一个 类型的集合,其中包含此 的约束列表。 + + + 所有内置类型的列表 + + + 关联类型种类 + + + AssociationSet 种类 + + + AssociationSetEnd 种类 + + + 关联类型种类 + + + 集合种类 + + + 集合类型种类 + + + 复杂类型种类 + + + 文档种类 + + + EdmFunction 种类 + + + EdmMember 类型种类 + + + EdmProperty 类型种类 + + + Edm 类型种类 + + + 实体容器种类 + + + 实体集种类 + + + EntitySetBase 种类 + + + 实体类型种类 + + + 实体类型基种类 + + + 枚举成员种类 + + + 枚举类型种类 + + + 方面种类 + + + 函数参数种类 + + + 全局项类型种类 + + + 元数据项类型种类 + + + 元数据属性种类 + + + 导航属性种类 + + + DeleteAction 类型种类 + + + 参数模式种类 + + + 基元类型种类 + + + 基元类型种类 + + + ProviderManifest 类型种类 + + + 引用约束类型种类 + + + Ref 类型种类 + + + RelationshipEnd 类型种类 + + + 关系多重性类型种类 + + + RelationshipEnd 类型种类 + + + 关系类型 + + + 行类型种类 + + + 简单类型种类 + + + 结构化类型种类 + + + 类型信息种类 + + + 集合的种类(适用于属性) + + + 集合具有包语义(允许未排序和重复项) + + + 集合具有列表语义(顺序明确并且允许重复项) + + + 属性不是集合 + + + 表示 Edm 集合类型 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取 类的一个实例,其中包含此当前 对象所包括的元素的类型以及该类型的各个方面。 + + 类的一个实例,其中包含此当前 对象所包括的元素的类型以及该类型的各个方面。 + + + 表示 Edm 复杂类型。这可用于从概念空间基于模型的约定配置复杂类型。在存储模型中不支持复杂类型。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 创建 类型的新实例。 + + 类型的新实例。 + 复杂类型的名称。 + 复杂类型的命名空间。 + 复杂类型属于的数据空间。 + 复杂类型的成员。 + 要与该实例相关联的元数据属性。 + 在 name、namespace 或 members 参数为 null 时引发。 + + + 获取此 的属性列表。 + 一个 类型的集合,其中包含此 的属性列表。 + + + 属性的并发模式。 + + + 固定并发模式:在写入时间始终验证属性 + + + 默认并发模式:在写入时间从不验证属性 + + + 将符合单个 CSDL 架构文件限制的 序列化到 XML 编写器。要序列化的模型必须包含单个 + + + 初始化 类的新实例。 + + + 当序列化模型过程中遇到错误时发生。 + + + 序列化到 XmlWriter。 + 如果模型有效,则为 true;否则为 false。 + 要序列化的 EdmModel。 + 要序列化到的 XmlWriter。 + 已序列化的模型的命名空间。 + + + 表示有关处理实体框架模型时所发生的错误的信息。 + + + 初始化 类的新实例。 + + + 获取描述所引发的错误的可选描述性消息。 + 描述所引发的错误的可选描述消息。 + + + 获取一个值,用于指示导致引发此事件的 + 如果 可引发此事件,则为 true;否则为 false。 + + + 获取一个可选值,用于指示导致引发此事件的源项的属性。 + 指示导致引发此事件的源项的属性。 + + + DataSpace + + + CSpace 指示 CSpace 中的项 - edm 基元类型 + 在 csdl 中定义的类型 + + + CSpace 和 SSpace 之间的映射 + + + OSpace 和 CSpace 之间的映射 + + + OSpace 指示 clr 空间中的项 + + + SSpace 指示 SSpace 中的项 + + + + 的扩展方法。 + + + 从指定 DbModel 获取概念模型。 + 表示概念模型的 EdmModel 的实例。 + 实现 IEdmModelAdapter 的类的实例(例如DbModel)。 + + + 从指定 DbModel 获取存储模型。 + 表示存储模型的 EdmModel 的实例。 + 实现 IEdmModelAdapter 的类的实例(例如DbModel)。 + + + 表示与某一项相关联的文档的类 + + + 初始化新的 Documentation 实例。 + 摘要字符串。 + 长描述字符串。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取一个值,该值指示此 对象是否只包含一个 null(即空的) 和一个 + 如果此 对象只包含一个 null(即空的) 和一个 ,则为 true;否则为 false。 + + + 获取有关此 的详细说明。 + 有关此 的详细说明。 + + + 获取此 的摘要。 + 的摘要。 + + + 返回此 的摘要。 + 的摘要。 + + + 此类包装有关一般性 EDM 错误的错误信息。 + + + 获取错误消息。 + 错误消息。 + + + 表示某一函数的类 + + + 向此函数添加参数。 + 要添加的参数。 + + + 获取此函数的聚合特性。 + + + 获取一个值,该值指示此函数中是否存在内置特性。 + 如果存在内置特性,则为 true;否则为 false。 + + + 获取此 的内置类型种类。 + + 枚举的枚举值之一。 + + + 获取采用数据库管理系统或存储模型所使用的语言的查询。 + 采用数据库管理系统或存储模型所使用语法的一个字符串值,其中包含 的查询或更新语句。 + + + 构造该 对象的工厂方法。 + + 类型的新的只读实例。 + 函数的名称。 + 函数的命名空间。 + 函数所属的命名空间。 + 其他函数特性和属性。 + 将添加到该函数的元数据属性。可以为 null。 + + + 返回此类型的全名(命名空间加名称)。 + 类型的全名。 + + + 获取是将此实例映射到函数还是映射到存储过程的信息。 + 如果将此实例映射到函数,则为 true;如果将此实例映射到存储过程,则为 false。 + + + 获取一个值,该值指示此实例是否来自提供程序清单。 + 如果此实例来自提供程序清单,则为 true;否则为 false。 + + + 获取一个值,该值指示此函数是否为 niladic 函数(不接受任何参数的函数)。 + 如果此函数为 niladic 函数,则为 true;否则为 false。 + + + 获取此 的参数。 + 一个 类型的集合,其中包含此 的参数。 + + + 获取此函数的参数类型语义特性。 + + + 获取此 的返回参数。 + 一个 对象,表示此 的返回参数。 + + + 获取此 的返回参数。 + 一个 类型的集合,表示 的返回参数。 + + + 获取或设置与函数关联的架构。 + 与函数关联的架构。 + + + 获取此函数的存储函数名称特性。 + + + 包含 的其他特性和属性。 + + + 初始化 类的新实例。 + + + 获取或设置与函数关联的命令文本。 + 与函数关联的命令文本。 + + + 获取或设置函数的实体集。 + 函数的实体集。 + + + 获取指示这是否为聚合函数的值。 + 如果这是聚合函数,则为 true;否则为 false。 + + + 获取或设置此函数是否为内置函数的信息。 + 如果此函数为内置函数,则为 true;否则为 false。 + + + 获取或设置此函数是否为缓存存储函数的信息。 + 如果此函数为缓存的存储函数,则为 true;否则为 false。 + + + 获取或设置此函数是否可以组合的信息。 + 如果此函数可以组合,则为 true;否则为 false。 + + + 获取或设置此函数是否来自提供程序清单的信息。 + 如果此函数来自提供程序清单,则为 true;否则为 false。 + + + 获取或设置此函数是否为函数导入的信息。 + 如果此函数为函数导入,则为 true;否则为 false。 + + + 获取或设置函数是否不包含参数的信息。 + 如果函数不包含参数,则为 true;否则为 false。 + + + 获取或设置函数参数。 + 函数参数。 + + + 获取或设置参数类型语义。 + 参数类型语义。 + + + 获取或设置返回参数。 + 返回参数。 + + + 获取或设置函数架构。 + 函数架构。 + + + 获取或设置存储函数名称。 + 存储函数名称。 + + + 表示 Edm 空间中项的集合的类。 + + + 使用概念架构定义语言 (CSDL) 文件所在的 XMLReader 对象的集合初始化 类的新实例。 + 概念架构定义语言 (CSDL) 文件所在的 XMLReader 对象的集合。 + + + 初始化 类的新实例。 + 实体数据模型。 + + + 使用概念架构定义语言 (CSDL) 文件所在的路径初始化 类的新实例。 + 概念架构定义语言 (CSDL) 文件所在的路径。 + + + 创建 的工厂方法。 + 如果未遇到错误,则为 实例。否则为 null。 + 要加载的 CSDL 项目。不得是 null。 + CSDL 项目的路径。用于错误消息中。可为 null,在此情况下,XmlReader 的基 Uri 将用作路径。 + 加载时遇到的错误的集合。 + + + 获取此集合的概念模型版本。 + 此集合的概念模型版本。 + + + 返回一个由 对象构成的集合。 + 一个 ReadOnlyCollection 对象,表示 对象的集合。 + + + 返回具有指定的概念模型版本的 对象的集合。 + 一个 ReadOnlyCollection 对象,表示 对象的集合。 + 概念模型版本。 + + + 表示 edm 成员类 + + + 获取已对其声明此成员的类型。 + 一个 对象,表示已对其声明此成员的类型。 + + + 指示此成员是否在 EDM 定义中标记为计算成员 + + + 指示此成员的存储生成的模式是否在 EDM 定义中标记为标识 + + + 获取或设置属性的名称。从存储空间模型约定对此进行设置将更改此属性的数据库列的名称。在概念模型中,这应该与来自实体类的相应属性保持一致并且不应更改。 + 此成员的名称。 + + + 返回此成员的名称。 + 此成员的名称。 + + + 获取既包含此成员的类型又包含该类型的各个方面的 类实例。 + 一个 对象,其中既包含此成员的类型又包含该类型的各个方面。 + + + 表示概念模型或存储模型。该类可用于访问与模型的形状有关的信息以及对其进行配置的方式。 + + + 将关联类型添加到模型中。 + 要添加的 AssociationType 实例。 + + + 将复杂类型添加到模型中。 + 要添加的 ComplexType 实例。 + + + 将函数添加到模型中。 + 要添加的 EdmFunction 实例。 + + + 将实体类型添加到模型中。 + 要添加的 EntityType 实例。 + + + 将枚举类型添加到模型中。 + 要添加的 EnumType 实例。 + + + 获取模型中的关联类型。 + + + 获取此类型的内置类型种类。 + 一个 对象,表示此类型的内置类型种类。 + + + 获取模型中的复杂类型。 + + + 获取存储实体和关联集以及函数导入的容器。 + + + 获取与此模型关联的数据空间,该数据空间指示它是概念模型 (DataSpace.CSpace) 还是存储模型 (DataSpace.SSpace)。 + + + 获取模型中的实体类型。 + + + 获取模型中的枚举类型。 + + + 获取模型中的函数。 + + + 获取与模型关联的全局项。 + 与模型关联的全局项。 + + + 从模型中删除关联类型。 + 要删除的 AssociationType 实例。 + + + 从模型中删除复杂类型。 + 要删除的 ComplexType 实例。 + + + 从模型中删除函数。 + 要删除的 EdmFunction 实例。 + + + 从模型中删除实体类型。 + 要删除的 EntityType 实例。 + + + 从模型中删除枚举类型。 + 要删除的 EnumType 实例。 + + + 在概念空间中,EdmProperty 表示某个实体的属性。在存储空间中,EdmProperty 表示某个表中的列。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取或设置此模型的集合种类。 + 此模型的集合种类。 + + + 获取此属性的复杂类型信息。 + 此属性的复杂类型信息。 + + + 获取或设置属性的并发模式。 + 属性的并发模式。 + + + 创建 EdmProperty 类型的新实例。 + EdmProperty 类型的新实例 + 属性的名称。 + 属性 + + + 新建复杂属性。 + 新创建的属性。 + 属性的名称。 + 属性的类型。 + + + 新建枚举属性。 + 新创建的属性。 + 属性的名称。 + 属性的类型。 + + + 新建基元属性。 + 新创建的属性。 + 属性的名称。 + 属性的类型。 + + + 获取此 的默认值。 + 的默认值。 + + + 获取此属性的枚举类型信息。 + 此属性的枚举类型信息。 + + + 获取属性是否为集合类型属性的信息。 + 如果属性为集合类型属性,则为 true;否则为 false。 + + + 获取此属性是否为复杂类型属性的信息。 + 如果此属性为复杂类型属性,则为 true;否则为 false。 + + + 获取此属性是否为枚举类型属性的信息。 + 如果此属性为枚举类型属性,则为 true;否则为 false。 + + + 获取或设置此属性的长度是否是固定的信息。 + 如果此属性的长度是固定的,则为 true;否则为 false。 + + + 获取固定长度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取或设置此属性是否使用提供程序支持的最大长度的信息。 + 如果此属性使用提供程序支持的最大长度,则为 true;否则为 false。 + + + 获取最大长度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取精度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取此属性是否为基元类型的信息。 + 如果此属性为基元类型,则为 true;否则为 false。 + + + 获取小数位数方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取此属性是否为基础基元类型的信息。 + 如果此属性为基础基元类型,则为 true;否则为 false。 + + + 获取或设置此属性是否为 Unicode 属性的信息。 + 如果此属性为 Unicode 属性,则为 true;否则为 false。 + + + 获取 Unicode 方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获得或设置属性的最大长度。 + 属性的最大长度。 + + + 获取一个值,该值指示此 的值是否可以为 null。 + 如果此 的值可以为 null,则为 true;否则为 false。 + + + 获取或设置此属性的精度。 + 此属性的精度。 + + + 获取此属性的基元类型信息。 + 此属性的基元类型信息。 + + + 获取或设置此属性的小数位数。 + 此属性的小数位数。 + + + 设置元数据属性。 + 要设置的元数据属性。 + + + 获取或设置与此属性相关联的数据库列的生成方法 + 属性的存储生成模式。 + + + 获取属性的类型名称。 + 属性的类型名称。 + + + 获取此属性的基础基元类型信息。 + 此属性的基础基元类型信息。 + + + 该类包装已遇到的架构错误的错误信息。 + + + 构造 EdmSchemaError 对象。 + 该错误的说明。 + 与此错误关联的代码。 + 错误的严重级别。 + + + 获取发生错误的列。 + 发生错误的列。 + + + 获取错误代码。 + 错误代码。 + + + 获取发生错误的行号。 + 发生错误的行号。 + + + 获取包含错误的架构的位置。此字符串还包括位于末尾的架构的名称。 + 包含错误的架构所在的位置。 + + + 获取包含错误的架构的名称。 + 包含错误的架构的名称。 + + + 获取错误的严重级别。 + + 值之一。默认值为 + + + 获取发生错误时的堆栈跟踪的字符串表示形式。 + 发生错误时的堆栈跟踪的字符串表示形式。 + + + 返回错误消息。 + 错误消息。 + + + 定义在验证实体框架模型时可能出现的错误的不同严重级别。 + + + 导致无法使用模型的错误。 + + + 不会导致无法使用模型的警告。 + + + 用于所有模型类型的 EdmType 基类 + + + 获取一个值,该值指示此类型是否为抽象的。 + 如果此类型是抽象的,则为 true;否则为 false。 + + + 获取此类型的基类型。 + 此类型的基类型。 + + + 获取此类型的全名。 + 此类型的全名。 + + + 返回其元素类型属于此类型的 的实例。 + 其元素类型属于此类型的 对象。 + + + 获取此类型的名称。 + 此类型的名称。 + + + 获取此类型的命名空间。 + 此类型的命名空间。 + + + 返回此类型的全名。 + 此类型的全名。 + + + 表示某一实体容器的类 + + + 创建具有指定名称和数据空间的实体容器。 + 实体容器名称。 + 实体容器数据空间。 + name 参数为 null 时引发。 + name 参数为空字符串时引发。 + + + 将指定的实体集添加到容器。 + 要添加的实体集。 + + + 将函数导入添加到容器中。 + 要添加的函数导入。 + + + 获取此实体容器的关联集。 + 此实体容器的关联集。 + + + 获取此 包括的实体集和关联集的列表。 + 一个 对象,其中包含此 包括的实体集和关联集的列表。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 用于构造 EntityContainer 对象的工厂方法。 + EntityContainer 对象。 + 要创建的实体容器的名称。 + 此实体容器所属的 DataSpace。 + 将包含在新容器中的实体集。可以为 null。 + 将包含在新容器中的函数。可以为 null。 + 要与该实例相关联的元数据属性。 + 在名称参数为 null 或是空字符串时引发。 + + + 获取此实体容器的实体集。 + 此实体容器的实体集。 + + + 指定 元素的集合。每个函数都包含数据库中存在的存储过程的详细信息,或映射到实体及其属性的等效 CommandText 的详细信息。 + 一个包含 元素的 + + + 使用实体集的指定名称返回一个 对象。 + 一个 对象,表示具有指定名称的实体集。 + 要搜索的实体集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用关系集的指定名称返回一个 对象。 + 一个 对象,表示具有指定名称的关系集。 + 要搜索的关系集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 获取此 的名称。 + 的名称。 + + + 从容器中删除特定实体集。 + 要删除的实体集。 + + + 返回此 的名称。 + 的名称。 + + + 使用实体集的指定名称返回一个 对象。 + 如果存在与搜索条件匹配的实体集,则为 true;否则为 false。 + 要搜索的实体集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,包含一个 对象。如果不存在实体集,此输出参数将包含 null。 + + + 使用关系集的指定名称返回一个 对象。 + 如果存在与搜索条件匹配的关系集,则为 true;否则为 false。 + 要搜索的关系集的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,包含一个 对象。 + + + 表示在 EntityType 中定义的结构的特定用法。在概念模型中,这表示可以查询和存储实体的集。在存储模型中,它表示一个表。从存储空间模型约定中,它可用来通过 属性配置表名称,通过 属性配置表架构。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 EntitySet 对象的工厂方法。 + EntitySet 对象。 + EntitySet 的名称。 + db 架构。可以为 null。 + db 表。可以为 null。 + 应该用于检索此 EntitySet 的数据的提供程序特定的查询。可以为 null。 + 此实体集类型包含的实体的实体类型。 + 将添加到新创建的 EntitySet 的元数据属性。可以为 null。 + 在名称参数为 null 或是空字符串时引发。 + + + 获取此 的实体类型。 + 一个 对象,表示此 的实体类型。 + + + 表示某一实体集的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取描述此实体集的已转义提供程序特定的 SQL。 + + + 获取此 的实体类型。 + 一个 对象,表示此 的实体类型。 + + + 获取当前实体集或关系集的实体容器。 + 一个 对象,表示当前实体集或关系集的实体容器。 + + + 获取或设置当前实体集或关系集的名称。如果从存储空间更改此属性,则也必须更新映射层,以便反映新名称。若要更改存储空间 的表名称,请使用 Table 属性。 + 当前实体集或关系集的名称。 + + + 获取或设置此实体集的数据库架构。 + + + 获取或设置此实体集的数据库表名称。 + + + 返回当前实体集或关系集的名称。 + 当前实体集或关系集的名称。 + + + 表示 的结构。在概念模型中,这表示某一实体的形状和结构。在存储模型中,这表示表的结构。若要更改架构和表名称,请使用 EntitySet。 + + + 将指定的导航属性添加到此类型的成员。添加导航属性,而与只读标志无关。 + 要添加的导航属性。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 EntityType 对象的工厂方法。 + EntityType 对象。 + 实体类型的名称。 + 此实体类型的命名空间。 + 此 EntityType 属于的数据空间。 + 该类型的键成员的名称。 + 该实体类型的成员(基元和导航属性)。 + 要与该实例相关联的元数据属性。 + 在 name 或 namespace 参数为 null 时引发。 + + + 构造该 EntityType 对象的工厂方法。 + EntityType 对象。 + 实体类型的名称。 + 此实体类型的命名空间。 + 此 EntityType 属于的数据空间。 + 基类型。 + 该类型的键成员的名称。 + 该实体类型的成员(基元和导航属性)。 + 要与该实例相关联的元数据属性。 + 在 name 或 namespace 参数为 null 时引发。 + + + 获取实体类型的已声明成员的集合。 + 实体类型的已声明成员的集合。 + + + 获取与实体类型关联的已声明导航属性。 + 与实体类型关联的已声明导航属性。 + + + 获取实体类型的已声明属性的列表。 + 实体类型的已声明属性。 + + + 返回一个引用此 对象。 + 一个引用此 对象。 + + + 获取此 的导航属性。 + 一个 类型的集合,其中包含此 的导航属性列表。 + + + 获取此 的属性列表。 + 一个 类型的集合,其中包含此 的属性列表。 + + + 表示实体类型 + + + 将指定的属性添加到当前实体的键的列表。 + 要添加的属性。 + 如果成员参数为 null + 在 EntityType 具有另一个 EntityTypeBase 的基类型时引发。在此情形下,KeyMembers 应该作为基类型添加 + 如果 EntityType 实例处于 ReadOnly 状态 + + + 获取当前实体或关系类型的所有键成员的列表。 + 一个 对象,表示当前实体或关系类型的键成员的列表。 + + + 获取此实体类型的所有键属性的列表。 + 此实体类型的所有键属性的列表。 + + + 从集合中删除指定的键成员。 + 要删除的键成员。 + + + 表示一个枚举成员。 + + + 获取此类型的种类。 + 此类型的种类。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 创建一个只读的 EnumMember 实例。 + 新创建的 EnumMember 实例。 + 枚举成员的名称。 + 枚举成员的值。 + 要与枚举成员相关联的元数据属性。 + name 为 null 或为空。 + + + 获取该枚举成员的名称。 + 此枚举成员的名称。 + + + 重写 System.Object.ToString 以提供针对此类型的更好的字符串表示形式。 + 此枚举成员的名称。 + + + 获取该枚举成员的值。 + 此枚举成员的值。 + + + 表示一个枚举类型。 + + + 返回类型的种类 + + + 创建一个只读的 EnumType 实例。 + 新创建的 EnumType 实例。 + 枚举类型的名称。 + 枚举类型的命名空间。 + 枚举类型的基础类型。 + 指示是否可以将枚举类型视为位域;即标志集。 + 枚举类型的成员。 + 要与枚举类型相关联的元数据属性。 + underlyingType 为 null。 + name 为 null 或为空。-或- namespaceName 为 null 或为空。-或- underlyingType 不是支持的基础类型。-或- 指定成员的名称不唯一。-或- 指定成员的值不在基础类型的范围内。 + + + 获取一个值,该值指示 enum 类型是否已定义为标志(即,可被视为位域) + + + 获取此枚举类型的枚举成员的集合。 + + + 获取此枚举类型的基础类型。 + + + 表示某一 Facet 对象的类。此对象是不可变的(不是仅设置为只读)并且系统的某些部分正依赖于该行为 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取有关此 的说明。 + + 对象,表示有关此 的说明。 + + + 获取此 的类型。 + + 对象,表示此 的类型。 + + + 获取一个值,该值指示是否未绑定方面的值。 + 如果未绑定方面的值,则为 true;否则为 false。 + + + 获取此 的名称。 + 的名称。 + + + 返回此 的名称。 + 的名称。 + + + 获取此 的值。 + 的值。 + + + 表示 FacetDescription 对象的类 + + + 获取具有此方面说明的方面的默认值。 + 具有此方面说明的方面的默认值。 + + + 获取此方面的名称。 + 此方面的名称。 + + + 获取此方面的类型。 + 一个 对象,表示此方面的类型。 + + + 获取一个值,该值指示此方面的值是否为常量。 + 如果此方面是一个常量,则为 true;否则为 false。 + + + 获取一个值,该值指示此方面是否为必需的方面。 + 如果此方面是必需的方面,则为 true;否则为 false。 + + + 获取此方面的最大值。 + 此方面的最大值。 + + + 获取此方面的最小值。 + 此方面的最小值。 + + + 返回此方面的名称。 + 此方面的名称。 + + + 表示函数参数的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 对象的工厂方法。 + + 类型的新的只读实例。 + 参数名。 + 参数的 EdmType。 + 参数的 。 + + + 获取已对其声明此参数的 + 一个 对象,表示已对其声明此参数的函数。 + + + 获取此参数是否使用数据库提供程序支持的最大长度的信息。 + 如果此参数使用数据库提供程序支持的最大长度,则为 true;否则为 false。 + + + 获取最大长度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取精度方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取小数位数方面是否为数据库提供程序的常量的信息。 + 如果此方面为常量,则为 true;否则为 false。 + + + 获取参数的最大长度。 + 参数的最大长度。 + + + 获取此 的模式。 + + 值之一。 + + + 获取此 的名称。 + 的名称。 + + + 获取参数的精度值。 + 参数的精度值。 + + + 获取参数的小数位数值。 + 参数的小数位数值。 + + + 返回此 的名称。 + 的名称。 + + + 获取此参数的类型名称。 + 此参数的类型名称。 + + + 获取既包含该参数的类型又包含该类型的各个方面的 类实例。 + 一个 对象,其中既包含该参数的类型又包含该类型的各个方面。 + + + 表示所有元数据的项基类 + + + 用于获取 的基础存储和概念模型的接口。 + + + 获取概念模型。 + + + 获取存储模型。 + + + 表示项的集合的类。该集合的实际维护的大部分实现由 MetadataCollection 完成 + + + 获取与此项集合关联的数据模型。 + 与此项集合关联的数据模型。 + + + 使用指定的实体容器名称返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + + + 使用指定的实体容器名称返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的名称从此项集合中返回所有函数重载。 + 一个 ReadOnlyCollection 类型的集合,其中包含具有指定名称的所有函数。 + 一个函数字典。 + 函数的全名。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的名称从此项集合中返回所有函数重载。 + 一个 类型的集合,其中包含具有指定名称的所有函数。 + 函数的全名。 + + + 使用指定的名称从此项集合中返回所有函数重载。 + 一个 类型的集合,其中包含具有指定名称的所有函数。 + 函数的全名。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的标识返回一个强类型的 对象。 + 由标识指定的项。 + 项的标识。 + 由方法返回的类型。 + + + 通过使用指定的标识进行区分大小写或不区分大小写的搜索,返回一个强类型的 对象。 + 由标识指定的项。 + 项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 由方法返回的类型。 + + + 从此项集合中返回属于指定类型的所有项。 + 一个 类型的集合,其中包含属于指定类型的所有项。 + 由方法返回的类型。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 一个 对象,表示此项集合中与指定的类型名称和命名空间名称匹配的类型。如果不存在匹配的类型,此方法将返回 null。 + 类型名称。 + 类型的命名空间。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 一个 对象,表示此项集合中与指定的类型名称和命名空间名称匹配的类型。如果不存在匹配的类型,此方法将返回 null。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 使用指定的实体容器名称返回一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将包含第一个实体容器。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 它在此方法返回时会包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将包含第一个实体容器。 + + + 使用指定的实体容器名称返回一个 对象。如果不存在实体容器,该输出参数将包含 null;否则,它将包含第一个实体容器。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 它在此方法返回时会包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将包含第一个实体容器。 + + + 使用指定的标识从此项集合中返回一个强类型的 对象。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,此输出参数会包含一个 对象。如果项集合中不存在具有指定标识的全局项,此输出参数将包含 null。 + 由方法返回的类型。 + + + 使用指定的标识从此项集合中返回一个强类型的 对象。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 项的标识。 + 在此方法返回时,此输出参数会包含一个 对象。如果项集合中不存在具有指定标识的全局项,此输出参数将包含 null。 + 由方法返回的类型。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,此输出参数会包含一个 对象。如果此项集合中不存在具有指定的名称和命名空间名称的类型,此输出参数将包含 null。 + + + 使用指定的类型名称和命名空间名称从此项集合中返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 在此方法返回时,此输出参数会包含一个 对象。如果此项集合中不存在具有指定的名称和命名空间名称的类型,此输出参数将包含 null。 + + + 表示所有元数据的项基类 + + + 添加或更新具有指定名称和值的批注。 + 批注属性的名称。 + 批注属性的值。 + + + 获取此类型的内置类型种类。 + 一个 对象,表示此类型的内置类型种类。 + + + 获取或设置与此类型关联的文档。 + 一个 对象,表示介绍此类型的文档。 + + + 返回一个与 值之一匹配的概念模型内置类型。 + 一个 对象,表示 EDM 中的内置类型。 + + 值之一。 + + + 返回有关指定类型的常规方面的说明列表。 + 一个 对象,表示有关指定类型的常规方面的说明列表。 + + + 获取当前类型的属性列表。 + 一个 类型的集合,其中包含当前类型的属性列表。 + + + 删除具有指定名称的批注。 + 如果删除了批注,则为 true;否则为 false。 + 批注属性的名称。 + + + 表示某一项的元数据特性的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 MetadataProperty 对象的工厂方法。 + MetadataProperty 对象。 + 元数据属性的名称。 + 该元数据属性的类型用法。 + 元数据属性的值。 + + 为 null 时引发。 + + + 创建具有指定名称和值的元数据批注。 + 表示创建的批注的 MetadataProperty 实例。 + 批注名称。 + 批注值。 + + + 获取指示元数据属性是否为注释的布尔值。 + + + 获取此 的名称。 + 的名称。 + + + 获取此 的值。 + 的值。 + + + 获取既包含此 的类型又包含该类型的各个方面的 类实例。 + 一个 对象,其中既包含此 的类型又包含该类型的各个方面。 + + + 获取此 的值。 + 的值。 + + + 运行时元数据工作区 + + + 初始化 类的新实例。 + + + 使用指定的路径和程序集初始化 类的新实例。 + 工作区元数据的路径。 + 用于构造工作区的程序集的名称。 + + + 使用来自传统 EDMX 映射的所有项集合 () 的加载程序构造一个 。将使用默认的 o-space 和 o/c 映射集合。首次使用给定集合时,会惰式执行项集合委托。可以传递一个委托,以便在集合从不会被使用时返回 null,但极少这样做,因为在这种情况下,EF 使用集合的任何尝试都将导致异常。 + 委托以返回 c-space (CSDL) 项集合。 + 委托以返回 s-space (SSDL) 项集合。 + 委托以返回 c/s 映射 (MSL) 项集合。 + + + 使用 EF 所需的所有项集合 () 的加载程序构造一个 ,o/c 映射除外,将基于给定的 o-space 和 c-space 加载程序自动创建该映射。首次使用给定集合时,会惰式执行项集合委托。可以传递一个委托,以便在集合从不会被使用时返回 null,但极少这样做,因为在这种情况下,EF 使用集合的任何尝试都将导致异常。 + 委托以返回 c-space (CSDL) 项集合。 + 委托以返回 s-space (SSDL) 项集合。 + 委托以返回 c/s 映射 (MSL) 项集合。 + 委托以返回 o-space 项集合。 + + + 清除所有的元数据缓存条目。 + + + 创建配置为使用 数据空间的 + 创建的分析器对象。 + + + 基于指定的查询表达式,创建限定为此元数据工作区的新 + 使用指定表达式作为其 属性的新 + 一个定义查询的 。 + 如果 为 null + 如果 包含在此元数据工作区无法解析的元数据 + 如果 因为包含无法解析的变量引用导致结构无效 + + + 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 一个表示 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个在对象空间中提供类型的 。 + + + 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 一个表示 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个在对象空间中提供类型的 。 + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索实体容器的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果不存在实体容器,此方法将返回 null;否则它将返回第一个实体容器。 + 实体容器的名称。 + 要从中搜索实体容器的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的名称、命名空间名称和数据模型返回所有函数重载。 + 一个 类型的集合,其中包含给定命名空间和数据模型中与指定名称匹配的所有函数。 + 函数的名称。 + 函数的命名空间。 + 要从中搜索函数的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的名称、命名空间名称和数据模型返回所有函数重载。 + 一个 类型的集合,其中包含给定命名空间和数据模型中与指定名称匹配的所有函数。 + 函数的名称。 + 函数的命名空间。 + 要从中搜索函数的概念模型。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的标识和数据模型返回一个项。 + 指定的数据模型中与给定标识匹配的项。 + 项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 由方法返回的类型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的标识和数据模型返回一个项。 + 指定的数据模型中与给定标识匹配的项。 + 项的标识。 + 要从中搜索项的概念模型。 + 由方法返回的类型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 获取 项。 + + 项。 + 要从其中检索项的 。 + + + 获取指定数据模型中的所有项。 + 一个 类型的集合,其中包含指定数据模型中的所有项。 + 需要其项列表的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 获取指定数据模型中的所有项。 + 一个 类型的集合,其中包含指定数据模型中的所有项。 + 需要其项列表的概念模型。 + 由方法返回的类型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 返回一个 对象,该对象表示与参数 edmSpaceType 提供的类型匹配的对象空间类型。 + 一个表示对象空间类型的 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个表示 对象。 + + + 返回一个 对象,该对象表示与参数 edmSpaceType 提供的类型匹配的对象空间类型。 + 一个表示对象空间类型的 对象。如果不存在匹配的类型,此方法将返回 null。 + 一个表示 对象。 + + + 返回指定数据模型中的基元类型列表。 + 一个 类型的集合,其中包含指定数据模型中的所有基元类型。 + 需要获取其基元类型列表的数据模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 返回在修改实体时需要对其使用原始值的给定 / 的成员。 + 需要原始值的 + 属于 C-Space 的 。 + 参与给定 。 + 如果可以部分更新实体,则为 true;否则为 false。 + + + 从实体集和实体类型获取原始值成员。 + 实体集和实体类型中的原始值成员。 + 从中检索原始值的实体集。 + 对其检索原始值的实体类型。 + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 一个 对象。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索类型的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 一个 对象,表示指定的数据模型中与给定的类型名称和命名空间名称匹配的类型。如果不存在匹配的类型,此方法将返回 null。 + 类型名称。 + 类型的命名空间。 + 要从中搜索类型的概念模型。 + 空间无效时引发。有效空间为 C、O、CS 或 OCSpace + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + 用于记录加载消息的委托。 + + + 运行时将支持的最高 EDM 版本。 + + + 在每个关联的数据模型中注册项集合。 + 需要填充的输出参数集合。 + + + 通过输出参数 edmSpaceType 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 如果成功,则为 true;如果失败,则为 false。 + 一个表示对象空间类型的 对象。 + 在此方法返回时,包含一个表示 对象。此参数未经初始化即被传递。 + + + 通过输出参数 edmSpaceType 返回一个 对象,该对象表示与参数 objectSpaceType 提供的类型匹配的 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示对象空间类型的 对象。 + 在此方法返回时,包含一个表示 对象。此参数未经初始化即被传递。 + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索实体容器的概念模型。 + 在此方法返回时,包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将返回第一个实体容器。此参数未经初始化即被传递。 + + + 使用指定的实体容器名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的实体容器,则为 true;否则为 false。 + 实体容器的名称。 + 要从中搜索实体容器的概念模型。 + 在此方法返回时,包含一个 对象。如果不存在实体容器,此输出参数将包含 null;否则,它将返回第一个实体容器。此参数未经初始化即被传递。 + + + 使用指定的标识和数据模型返回一个项。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + 由方法返回的类型。 + + + 使用指定的标识和数据模型返回一个项。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 要从中搜索项的概念模型。 + 要从中搜索项的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + 由方法返回的类型。 + + + 测试对 的检索。 + 如果检索成功,则为 true,否则为 false。 + 从中尝试 检索的 。 + 在此方法返回时,包含项集合。此参数未经初始化即被传递。 + + + 通过输出参数 objectSpaceType 返回一个 对象,该对象表示与参数 edmSpaceType 提供的 匹配的类型。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示 对象。 + 此方法返回时,包含一个 对象,该对象表示对象空间类型。此参数未经初始化即被传递。 + + + 通过输出参数 objectSpaceType 返回一个 对象,该对象表示与参数 edmSpaceType 提供的 匹配的类型。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示 对象。 + 此方法返回时,包含一个 对象,该对象表示对象空间类型。此参数未经初始化即被传递。 + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 要从中搜索类型的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + + + 使用指定的类型名称、命名空间名称和数据模型返回一个 对象。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 类型名称。 + 类型的命名空间。 + 要从中搜索类型的概念模型。 + 在此方法返回时,包含一个 对象。此参数未经初始化即被传递。 + + + 表示 edm 导航属性类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 从指定的参数创建一个 NavigationProperty 实例。 + 新创建的 NavigationProperty 实例。 + 导航属性的名称。 + 指定导航属性类型及其方面。 + 导航的关系类型。 + 导航中的源端成员。 + 导航中的目标端成员。 + 导航属性的元数据属性。 + + + 获取此导航中的“源”关系 End 成员。 + 此导航中的“源”关系 End 成员。 + + + 在给定的导航属性位于引用约束的依赖端时,返回外键属性。否则,返回空集。我们将按主体端键属性的顺序返回这些成员。 + 外键属性的集合。 + + + 获取此导航属性操作的关系类型。 + 此导航属性操作的关系类型。 + + + 获取此导航的“目标”关系 End 成员。 + 此导航的“目标”关系 End 成员。 + + + 表示对象层的项集合的类。该集合的实际维护的大部分实现由 ItemCollection 完成 + + + 初始化 类的新实例。 + + + 该方法返回指定 OSpace 类型参数的基础 CLR 类型。如果该参数的 DataSpace 不为 OSpace,则引发 ArgumentException。 + OSpace 参数的 CLR 类型。 + 要查找的 OSpace 类型。 + + + 返回与 objectSpaceType 参数提供的 相对应的 CLR 类型。 + OSpace 参数的 CLR 类型。 + 一个表示对象空间类型的 。 + + + 从此项集合中返回属于指定类型的所有项。 + 一个 类型的集合,其中包含属于指定类型的所有项。 + 由方法返回的类型。 + + + 返回基元类型对象集合。 + 基元类型对象的集合。 + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + + + 从指定的程序集加载元数据。 + 将加载其元数据的程序集。 + O space 元数据的 EDM 元数据源。 + + + 加载给定程序集中的元数据。 + 将加载其元数据的程序集。 + O space 元数据的 EDM 元数据源。 + 将向其发送日志消息的委托。 + + + 返回指定的枚举类型参数的基础 CLR 类型。如果该参数的 DataSpace 不为 OSpace,则此方法返回 false 并将 out 参数设置为 null。 + 如果成功,则为 true;如果失败,则为 false + 要查找的 OSpace 枚举类型 + OSpace 参数的 CLR 枚举类型 + + + 返回与 objectSpaceType 参数提供的 相对应的 CLR 类型。 + 如果存在与搜索条件匹配的类型,则为 true;否则为 false。 + 一个表示对象空间类型的 。 + CLR 类型。 + + + 表示针对删除操作的可能操作的列表 + + + 级联到其他端 + + + 不执行任何操作 + + + 定义参数的模式的枚举 + + + In 参数 + + + in 和 out 参数 + + + Out 参数 + + + 返回参数 + + + 定义用于解析函数重载的类型语义的枚举。这些标志是在提供程序清单中根据函数定义来定义的。 + + + 允许在给定参数类型和形参类型(默认值)之间进行隐式转换。 + + + 允许在给定参数类型和形参类型之间进行类型提升。 + + + 仅使用严格等效。 + + + 表示基元类型的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 返回与此 等效的公共语言运行时 (CLR) 类型。请注意, 属性始终返回不可以为 null 的类型值。 + 一个 对象,表示与此 等效的公共语言运行时 (CLR) 类型。 + + + 获取有关此 各方面的说明列表。 + 一个 类型的集合,其中包含有关此 的方面说明列表。 + + + 返回与此 等效的 + 一个与此 等效的 对象。 + + + 返回 的等效 + 一个 对象,该对象是指定的 的等效项。 + 一个 类型的值。 + + + 返回基元类型的列表。 + 一个 类型的集合,其中包含基元类型的列表。 + + + 获取一个 枚举值,该值指示此 的基元类型。 + 一个指示此 的基元类型的 枚举值。 + + + EDM 定义的基元类型 + + + Binary 类型种类 + + + Boolean 类型种类 + + + Byte 类型种类 + + + DateTime 类型种类 + + + DateTimeOffset 类型种类 + + + Decimal 类型种类 + + + Double 类型种类 + + + Geography 类型种类 + + + Geographic 集合类型种类 + + + Geographic 线性环类型种类 + + + Geographic 多线性环类型种类 + + + Geographic 多点类型种类 + + + Geographic 多多边形类型种类 + + + Geographic 单点类型种类 + + + Geographic 多边形类型种类 + + + Geometry 类型种类 + + + Geometric 集合类型种类 + + + Geometric 线性环类型种类 + + + Geometric 多线性环类型种类 + + + Geometric 多点类型种类 + + + Geometric 多多边形类型种类 + + + Geometric 单点类型种类 + + + Geometric 多边形类型种类 + + + Guid 类型种类 + + + Int16 类型种类 + + + Int32 类型种类 + + + Int64 类型种类 + + + SByte 类型种类 + + + Single 类型种类 + + + String 类型种类 + + + Time 类型种类 + + + 指定概念模型中项特性的种类。 + + + 一个指示项特性为 Extended 的枚举成员。 + + + 一个指示项特性为 System 的枚举成员 + + + 表示 MetadataCollection 周围的只读包装的类 + 此集合中项的类型 + + + 确定集合中是否包含具有指定标识的项。 + 如果集合中包含要搜索的项,则为 true;否则为 false。默认值为 false。 + 项的标识。 + + + 返回一个可循环访问此集合的枚举器。 + 一个可用于循环访问此 + + + 使用指定的标识从此集合中检索一个项。 + 此集合中的一个项。 + 要搜索的项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + + + 返回指定的值在此集合中的索引。 + 指定的值在此集合中的索引。 + 要搜寻的值。 + + + 获取一个值,该值指示此集合是否是只读的。 + 如果此集合是只读的,则为 true;否则为 false。 + + + 使用指定的标识从此集合中获取一个项。 + 此集合中的一个项。 + + + 使用指定的标识从此集合中检索一个项。 + 如果存在与搜索条件匹配的项,则为 true;否则为 false。 + 要搜索的项的标识。 + 如果执行不区分大小写的搜索,则为 true;否则为 false。 + 在此方法返回时,此输出参数会包含集合中的一个项。如果不存在匹配的项,此输出参数将包含 null。 + + + MetadataCollection 的枚举器 + + + 获取位于当前位置的成员。 + 位于当前位置的成员。 + + + 释放此枚举器。 + + + 移至 类型的集合中的下一个成员。 + 如果枚举器在 类型的集合中发生了移动,则为 true;否则为 false。 + + + 将枚举器定位在 类型的集合中的第一个位置之前。 + + + 获取位于当前位置的成员 + + + 该类表示指定关系的“to”和“from”端的两个实体之间的引用约束。 + + + 在该关系上构造一个新约束 + 该关系源自的角色 + 该关系链接到/针对的角色 + 参与约束的目标角色的实体类型上的属性 + 参与约束的源角色的实体类型上的属性 + 如果任何参数为 null,则引发参数 Null 异常 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取定义此 时使用的“源角色”的属性列表。 + 一个 类型的集合,其中包含定义此 时使用的“源角色”的属性列表。 + + + 获取参与此 的“源角色”。 + 一个 对象,表示参与此 的“源角色”。 + + + 获取定义此 时使用的“目标角色”的属性列表。 + 一个 类型的集合,其中包含定义此 时使用的“目标角色”的属性列表。 + + + 获取参与此 的“目标角色”。 + 一个 对象,表示参与此 的“目标角色”。 + + + 返回 的名称组合。 + + 的名称组合。 + + + 表示引用类型的类。 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取此 引用的实体类型。 + 一个 对象,表示此 引用的实体类型。 + + + 确定指定对象等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 初始化 RelationshipEndMember 类的新实例 + + + 获取此关系 End 成员的操作行为。 + + 值之一。默认值为 + + + 访问关联中的 EndMember 的 EntityType。 + 关联中的 EndMember 的 EntityType。 + + + 获取此关系 End 成员的重数。 + + 值之一。 + + + 表示与关系类型的端有关的多重性信息 + + + 下限为 0,上限为 null + + + 下限和上限均为 1 + + + 下限为 0,上限为 1 + + + 表示关系集的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 获取此 的关系类型。 + 一个 对象,表示此 的关系类型。 + + + 表示关系类型 + + + 获取此关系类型的 End 列表。 + 一个 类型的集合,其中包含此关系类型的 End 列表。 + + + 表示 Edm 行类型 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 构造该 对象的工厂方法。 + + 对象的新的只读实例。 + 行类型对象的属性。 + 将添加到该函数的元数据属性。可以为 null。 + + + 获取由当前类型定义的属性集合。 + 由当前类型定义的属性集合。 + + + 获取此 的属性列表。 + 一个 类型的集合,其中包含此 的属性列表。 + + + 表示简单类型的类 + + + 提供用于将 的存储(数据库)部分序列化到 XML 的方法。 + + + 初始化 类的新实例。 + + + 当序列化模型过程中遇到错误时发生。 + + + 序列化到 + 如果模型可以序列化,则为 true;否则为 false。 + 要序列化的 EdmModel。 + 架构元素上的命名空间名称。 + 架构元素上的提供程序信息。 + 架构元素上的 ProviderManifestToken 信息。 + 要序列化到的 XmlWriter。 + 指示在将可为空的属性设置为默认值时是否对其进行序列化的值。 + + + 序列化到 + 如果模型可以序列化,则为 true;否则为 false。 + 要序列化的 EdmModel。 + 架构元素上的提供程序信息。 + 架构元素上的 ProviderManifestToken 信息。 + 要序列化到的 XmlWriter。 + 指示在将可为空的属性设置为默认值时是否对其进行序列化的值。 + + + 服务器生成的属性的模式。 + + + 执行 INSERT 和 UPDATE 时都将生成一个值。 + + + 执行 INSERT 时生成一个值,但在执行 UPDATE 时保持不变。 + + + 不是服务器生成的属性。这是默认值。 + + + 表示存储空间中项的集合的类。 + + + 使用指定的 XMLReader 初始化 类的新实例。 + 用于创建元数据的 XMLReader。 + + + 初始化 类的新实例。 + + 的模型。 + + + 使用指定的文件路径初始化 类的新实例。 + 用于创建元数据的文件路径。 + + + 创建 的工厂方法。 + 如果未遇到错误,则为 实例。否则为 null。 + 要加载的 SSDL 项目。不得是 null。 + SSDL 项目的路径。用于错误消息中。可为 null,在此情况下,XmlReader 的基 Uri 将用作路径。 + 自定义解析程序。目前用于解析 DbProviderServices 实现。如果为 null,将使用默认解析程序。 + 加载时遇到的错误的集合。 + + + 返回一个由 对象构成的集合。 + 一个 对象,表示 对象的集合。 + + + 获取 StoreItemCollection 的提供程序工厂。 + StoreItemCollection 的提供程序工厂。 + + + 获取 StoreItemCollection 的固定名称。 + StoreItemCollection 的固定名称。 + + + 获取 StoreItemCollection 的提供程序清单。 + StoreItemCollection 的提供程序清单。 + + + 获取 StoreItemCollection 的清单标记。 + StoreItemCollection 的清单标记。 + + + 获取此集合的存储架构版本。 + 此集合的存储架构版本。 + + + 表示结构化类型 + + + 向此类型添加成员 + 要添加的成员 + + + 获取此类型的成员列表。 + 一个 类型的集合,其中包含此类型的一组成员。 + + + 从此类型删除成员。 + 要删除的成员。 + + + 表示某一项的类型信息的类 + + + 获取此 的内置类型种类。 + 一个 对象,表示此 的内置类型种类。 + + + 用于创建具有指定 EdmType 和方面的 TypeUsage 的工厂方法 + 新的 TypeUsage 实例 + 要为其创建类型用法的 EdmType + 要复制到新的 TypeUsage 中的方面 + + + 创建一个使用指定方面值描述二进制类型的 对象。 + 一个使用指定方面值描述二进制类型的 对象。 + 要为其创建 对象的 。 + 如果将二进制类型的长度设置为固定数值,则为 true;否则为 false。 + + + 创建一个使用指定方面值描述二进制类型的 对象。 + 一个使用指定方面值描述二进制类型的 对象。 + 要为其创建 对象的 。 + 如果将二进制类型的长度设置为固定数值,则为 true;否则为 false。 + 二进制类型的最大长度。 + + + 创建参数所描述类型的 对象。 + + 对象。 + 用于定义偏移的度量单位的简单类型。 + 用秒的小数部分(基于支持的小数位数)表示的 DateTimeOffset 的粒度。例如,精度为 3 表示支持的粒度为毫秒。 + + + 创建参数所描述类型的 对象。 + + 对象。 + 用于定义 DateTime 对象的度量单位的简单类型。 + 用秒的小数部分(基于支持的小数位数)表示的 DateTimeOffset 的粒度。例如,精度为 3 表示支持的粒度为毫秒。 + + + 创建一个用无限精度和小数位数方面值描述十进制类型的 对象。 + 一个使用无限精度和小数位数方面值描述十进制类型的 对象。 + 要为其创建 对象的 。 + + + 创建一个使用指定方面值描述十进制类型的 对象。 + 一个使用指定方面值描述十进制类型的 对象。 + 要为其创建 对象的 。 + 十进制类型(以 类型表示)的精度。 + 十进制类型(以 类型表示)的小数位数。 + + + 创建一个具有指定概念模型类型的 对象。 + 一个具有指定 的默认方面值的 对象。 + 要为其创建 对象的 。 + + + 创建一个使用指定方面值和无限 MaxLength 描述字符串类型的 对象。 + 一个使用指定方面和无限 MaxLength 描述字符串类型的 对象。 + 要为其创建 对象的 。 + 如果将字符串类型的字符编码标准设置为 Unicode,则为 true;否则为 false。 + 如果将字符串类型的长度设置为固定数值,则为 true;否则为 false + + + 创建一个使用指定方面值描述字符串类型的 对象。 + 一个使用指定方面值描述字符串类型的 对象。 + 要为其创建 对象的 。 + 如果将字符串类型的字符编码标准设置为 Unicode,则为 true;否则为 false。 + 如果将字符串类型的字符编码标准设置为 Unicode,则为 true;否则为 false。 + 如果将字符串类型的长度设置为固定数值,则为 true;否则为 false。 + + + 创建参数所描述类型的 对象。 + + 对象。 + 用于定义 DateTime 对象的度量单位的简单类型。 + 用秒的小数部分(基于支持的小数位数)表示的 DateTimeOffset 的粒度。例如,精度为 3 表示支持的粒度为毫秒。 + + + 获取由此 描述的类型信息。 + 一个 对象,表示由此 描述的类型信息。 + + + 获取由此 描述的类型的方面列表。 + 一个 类型的集合,其中包含由此 描述的类型的方面列表。 + + + 检查此 是否为指定 的子类型。 + 如果此 是指定 的子类型,则为 true;否则为 false。 + 要检查的 对象。 + + + 返回某一提供程序类型的模型类型用法 + 模型 (CSpace) 类型用法 + + + 返回由此 描述的类型的全名。 + 描述的类型的全名(采用字符串的形式)。 + + + 缓存 ELinq 查询 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg13 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg13 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg14 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg8 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg9 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg10 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg11 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg12 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg13 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg14 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg15 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 创建一个表示已编译的 LINQ to Entities 查询的新委托。 + + ,这是一个表示已编译的 LINQ to Entities 查询的泛型委托。 + 要编译的 lambda 表达式。 + 派生的类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg1 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg2 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg3 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg4 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg5 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg6 必须为基元类型。 + 表示在执行由此方法返回的委托时必须传入的参数的类型。TArg7 必须为基元类型。 + 通过执行由 方法返回的委托所返回的查询结果的类型 T。 + + + 当前赋给实体的各个属性的值。 + + + 提供对对象数据的原始值的访问。DbUpdatableDataRecord 实现可用于更新对象的原始值的方法。 + + + 获取数据记录信息。 + + 对象。 + + + 获取记录中的字段数。 + 整数值字段数。 + + + 检索布尔值形式的字段值。 + 布尔值形式的字段值。 + 字段的序号。 + + + 检索字节形式的字段值。 + 字节形式的字段值。 + 字段的序号。 + + + 检索字节数组形式的字段值。 + 已复制的字节数。 + 字段的序号。 + 开始复制数据的位置的索引。 + 将数据复制到其中的目标缓冲区。 + 目标缓冲区中开始复制的位置的索引。 + 要复制的字节数。 + + + 检索字符形式的字段值。 + 字符形式的字段值。 + 字段的序号。 + + + 检索字符数组形式的字段值。 + 已复制的字符数。 + 字段的序号。 + 开始复制数据的位置的索引。 + 将数据复制到其中的目标缓冲区。 + 目标缓冲区中开始复制的位置的索引。 + 要复制的字符数。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索字段数据类型的名称。 + 字段数据类型的名称。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索十进制形式的字段值。 + 十进制形式的字段值。 + 字段的序号。 + + + 检索双精度值形式的字段值。 + 双精度值形式的字段值。 + 字段的序号。 + + + 检索字段的类型。 + 字段类型。 + 字段的序号。 + + + 检索浮点形式的字段值。 + 浮点形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 检索字段的名称。 + 字段的名称。 + 字段的序号。 + + + 使用字段名检索字段的序号。 + 字段的序号。 + 字段的名称。 + + + 检索字段的值。 + 字段值。 + 字段的序号。 + + + 检索字符串形式的字段值。 + 字段值。 + 字段的序号。 + + + 检索字段的值。 + 字段值。 + 字段的序号。 + + + 使用当前记录的字段值来填充对象数组。 + 返回的字段值的数目。 + 用于存储字段值的对象数组。 + + + 返回指定字段是否设置为 + 如果字段设置为 ,则为 true;否则为 false。 + 字段的序号。 + + + 返回具有给定字段序号的值。 + 具有给定字段序号的值。 + + + 获取具有给定字段名称的值。 + 字段值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 将一个字段设置为 值。 + 字段的序号。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中一个字段的值。 + 字段的序号。 + 字段的值。 + + + 设置记录中的字段值。 + 已设置的字段数。 + 字段的值。 + + + 检索 形式的字段值。 + + 形式的字段值。 + 字段的序号。 + + + 提供在 LINQ to Entities 查询中使用的公开 EDM 规范函数的公共语言运行时 (CLR) 方法。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddDays EDM 函数以将指定的天数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的天数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddHours EDM 函数以将指定的小时数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的小时数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMicroseconds EDM 函数以将指定的微秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的微秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMilliseconds EDM 函数以将指定的毫秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的毫秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMinutes EDM 函数以将指定的分钟数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的分钟数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddMonths EDM 函数以将指定的月数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的月数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddNanoseconds EDM 函数以将指定的纳秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的纳秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddSeconds EDM 函数以将指定的秒数加到某个时间跨度。 + 所得到的时间跨度。 + 输入日期/时间。 + 要添加的秒数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 AddYears EDM 函数以将指定的年数加到某个日期/时间。 + 所得到的日期/时间。 + 输入日期/时间。 + 要添加的年数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为非 Unicode 字符串处理的运算符。 + 作为非 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法充当确保将输入作为 Unicode 字符串处理的运算符。 + 作为 Unicode 字符串处理的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTime EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateDateTimeOffset EDM 函数以创建新的 对象。 + 新的日期/时间。 + 年。 + 月(从 1 开始)。 + 日(从 1 开始)。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + 新日期的时区偏移量部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 CreateTime EDM 函数以创建新的 对象。 + 新的时间跨度。 + 小时。 + 分钟。 + 秒,根据需要可包括秒的分数部分。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffDays EDM 函数以计算两个日期/时间间隔的天数。 + 第一个日期/时间和第二个日期/时间间隔的天数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个日期/时间间隔的小时数。 + 第一个日期/时间和第二个日期/时间间隔的小时数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffHours EDM 函数以计算两个时间跨度间隔的小时数。 + 第一个时间跨度和第二个时间跨度间隔的小时数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个日期/时间间隔的微秒数。 + 第一个日期/时间和第二个日期/时间间隔的微秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMicroseconds EDM 函数以计算两个时间跨度间隔的微秒数。 + 第一个时间跨度和第二个时间跨度间隔的微秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个日期/时间间隔的毫秒数。 + 第一个日期/时间和第二个日期/时间间隔的毫秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMilliseconds EDM 函数以计算两个时间跨度间隔的毫秒数。 + 第一个时间跨度和第二个时间跨度间隔的毫秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个日期/时间间隔的分钟数。 + 第一个日期/时间和第二个日期/时间间隔的分钟数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMinutes EDM 函数以计算两个时间跨度间隔的分钟数。 + 第一个时间跨度和第二个时间跨度间隔的分钟数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffMonths EDM 函数以计算两个日期/时间间隔的月数。 + 第一个日期/时间和第二个日期/时间间隔的月数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个日期/时间间隔的纳秒数。 + 第一个日期/时间和第二个日期/时间间隔的纳秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffNanoseconds EDM 函数以计算两个时间跨度间隔的纳秒数。 + 第一个时间跨度和第二个时间跨度间隔的纳秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个日期/时间间隔的秒数。 + 第一个日期/时间和第二个日期/时间间隔的秒数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffSeconds EDM 函数以计算两个时间跨度间隔的秒数。 + 第一个时间跨度和第二个时间跨度间隔的秒数。 + 第一个时间跨度。 + 第二个时间跨度。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 DiffYears EDM 函数以计算两个日期/时间间隔的年数。 + 第一个日期/时间和第二个日期/时间间隔的年数。 + 第一个日期/时间。 + 第二个日期/时间。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 GetTotalOffsetMinutes EDM 函数以返回指定的日期/时间偏移 UTC 的分钟数。该值通常介于 +780 到 -780 之间(+ 或 - 13 小时)。 + 输入对 UTC 的偏移量。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Left 函数以返回字符串中最左侧指定数目的字符。 + 包含从输入字符串左侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Reverse 函数以返回其字符顺序反转的指定字符串。 + 以反转字符顺序显示的输入字符串。 + 输入字符串。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Right 函数以返回字符串中最右侧指定数目的字符。 + 包含从输入字符串右侧算起的所请求的字符数的字符串。 + 输入字符串。 + 要返回的字符数 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDev EDM 函数以计算集合的标准差。 + 标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 StDevP EDM 函数以计算总体的标准差。 + 总体的标准差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Truncate EDM 函数以将指定的值截断为指定的位数。 + 截整值。 + 要截断的值。 + 要保留的位数。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 TruncateTime EDM 函数以返回清除了时间部分的指定日期。 + 清除了时间部分的输入日期。 + 要使用的日期/时间值。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 Var EDM 函数以计算集合的方差。 + 方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 作为 LINQ to Entities 查询的一部分使用时,此方法调用规范 VarP EDM 函数以计算总体的方差。 + 总体的方差。 + 要对其执行计算的集合。 + + + 表示查询执行的选项。 + + + 创建 的新实例。 + 要用于实体结果的合并选项。 + + + 创建 的新实例。 + 要用于实体结果的合并选项。 + 如果流式处理查询,则为 true;否则为 false。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取用于实体结果的合并选项。 + 要用于实体结果的合并选项。 + + + 确定指定的对象是否相等。 + 如果两个对象相等,则为 true;否则为 false。 + 要比较的左侧对象。 + 要比较的右侧对象。 + + + 确定指定的对象是否不相等。 + 如果两个对象不相等,则为 true;否则为 false。 + 要比较的左侧对象。 + 要比较的右侧对象。 + + + 获取指示查询是否是流式处理还是缓存的一个值。 + 如果查询是流式处理,则为 true;否则为 false。 + + + 定义 IQueryable 实现的行为,该实现允许修改结果集的成员资格。 + 从查询返回的实体类型。 + + + 通知对象集,必须将表示新实体的对象添加到该集中。 + 要添加到集中的新对象。 + + + 通知对象集,必须将表示现有实体的对象添加到该集中。 + 要添加到集中的现有对象。 + + + 通知对象集,必须从中删除表示现有实体的对象。 + 要从集中删除的现有对象。 + + + 通知对象集,必须从中分离表示现有实体的对象。 + 要从对象集中分离的对象。 + + + 可将从数据库加载的新对象与内存中现有对象合并的不同方法。 + + + 将仅追加新的(顶级唯一)行。这是默认行为。 + + + 将不修改缓存。 + + + 与 LoadOption.OverwriteChanges 的行为相同。 + + + 与 LoadOption.PreserveChanges 的行为相同。 + + + ObjectContext 是封装 CLR 和数据库之间的连接的顶级元素,充当“创建”、“读取”、“更新”和“删除”操作的网关。 + + + 使用给定的连接初始化 类的新实例。在构造过程中,从 对象提取元数据工作区。 + 一种包含对模型和数据源连接的引用的 。 + connection 为 null。 + connection 无效或元数据工作区无效。 + + + 使用给定的连接和元数据工作区创建 ObjectContext。 + 与存储区的连接 + 如果设置为 true,则释放上下文时将释放该连接;否则调用方必须释放该连接。 + + + 使用给定连接和实体容器名称初始化 类的新实例。 + 一种包含对模型和数据源连接的引用的 。 + 默认实体容器的名称。通过此方法设置 defaultContainerName 时,该属性为只读属性。 + connection 为 null。 + connection、defaultContainerName 或元数据工作区无效。 + + + 使用给定连接字符串和默认实体容器名称初始化 类的新实例。 + 连接字符串,该连接字符串还提供对元数据信息的访问。 + connectionString 为 null。 + connectionString 无效或元数据工作区无效。 + + + 使用给定连接字符串和实体容器名称初始化 类的新实例。 + 连接字符串,该连接字符串还提供对元数据信息的访问。 + 默认实体容器的名称。通过此方法设置 defaultContainerName 时,该属性为只读属性。 + connectionString 为 null。 + connectionString、defaultContainerName 或元数据工作区无效。 + + + 接受在对象上下文中对对象所做的所有更改。 + + + 将对象添加到对象上下文。 + 表示实体集名称,可以选择通过实体容器名称对它进行限定。 + 要添加的 。 + entity 参数为 null 或 entitySetName 未限定。 + + + 将标量值从提供的对象复制到 中具有相同键的对象中。 + 已更新的对象。 + 对象所属实体集的名称。 + 其属性更新将应用于原始对象的已分离对象。currentEntity 的实体键必须与 中某个项的 属性相匹配。 + 对象的实体类型。 + entitySetName 或 current 为 null。 + 来自 entitySetName 的 与对象 不匹配,或对象不在 中,或对象处于 状态,或所提供对象的实体键无效。 + entitySetName 为空字符串。 + + + 将标量值从提供的对象复制到 中具有相同键的对象的原始值集中。 + 已更新的对象。 + 对象所属实体集的名称。 + 具有要应用于对象的原始值的已分离对象。originalEntity 的实体键必须与 中某个项的 属性相匹配。 + 实体对象的类型。 + entitySetName 或 original 为 null。 + 来自 entitySetName 的 与对象 不匹配,或在 中找不到对象的 ,或对象处于 状态,或所提供对象的实体键无效或属性发生了更改。 + entitySetName 为空字符串。 + + + 将已分离对象的属性更改应用于已附加到对象上下文的对象。 + 对象所属实体集的名称。 + 其属性更新将应用于原始对象的已分离对象。 + 当 entitySetName 为 null 或空字符串时,或当 changed 为 null 时。 + 当来自 entitySetName 的 与对象 不匹配时,或实体未处于 状态时,或原始对象未附加到上下文时。 + 当 changed 对象的类型与原始对象的类型不同时。 + + + 在对象具有实体键时将对象或对象图附加到对象上下文。 + 要附加的对象。 + entity 为 null。 + 无效的实体键。 + + + 将特定实体集中的对象或对象图附加到对象上下文。 + 表示实体集名称,可以选择通过实体容器名称对它进行限定。 + 要附加的 。 + entity 为 null。 + 实体集无效,或对象具有临时键,或对象具有 与作为方法参数传入的实体集不匹配,或对象没有 且未提供任何实体集,或对象图的任意对象具有临时 ,或对象图的任意对象具有无效的 (例如,键中的值与对象中的值不匹配),或无法根据给定的 entitySetName 名称和实体容器名称找到实体集,或对象图的任意对象已存于其他状态管理器中。 + + + 获取或设置所有对象上下文操作的超时值(以秒为单位)。null 值指示将使用基础提供程序的默认值。 + 作为超时值的 值(以秒为单位)。 + + + 获取对象上下文使用的连接。 + 一个作为连接的 对象。 + + + 获取 实例,该实例包含影响 行为的选项。 + + 实例,该实例包含影响 的行为的选项。 + + + 使用当前数据源连接和 中的元数据创建数据库。 + + + 生成数据定义语言 (DDL) 脚本,该脚本为 中的元数据创建架构对象(表、主键、外键)。 用于加载存储架构定义语言 (SSDL) 文件中的元数据。 + 一个 DDL 脚本,该脚本为 中的元数据创建架构对象。 + + + 为特定对象创建实体键,如果实体键已存在,则返回该键。 + 对象的 + 实体对象所属实体集的完全限定名称。 + 要为其检索实体键的对象。 + 当任一参数为 null 时。 + 当 entitySetName 为空时,或实体对象的类型在实体集中不存在时,或 entitySetName 没有完全限定时。 + 当无法根据提供的参数成功构造实体键时。 + + + 创建并返回所请求的类型的实例。 + 所请求类型 T 的实例,或一个使得 T 能够与实体框架一起使用的派生类型的实例。返回的对象是所请求类型的实例或使得请求的类型能够与实体框架一起使用的派生类型的实例。 + 要返回的对象的类型。 + + + 创建新的 实例,该实例用于查询、添加、修改和删除指定实体类型的对象。 + 新的 实例。 + 所请求的 的实体类型。 + 未在 上设置 属性,或指定的类型属于多个实体集。 + + + 创建新的 实例,该实例用于查询、添加、修改和删除具有指定类型和指定实体集名称的对象。 + 新的 实例。 + 返回的 的实体集的名称。如果未在 上设置 属性,则字符串必须使用默认容器名称进行限定。 + 所请求的 的实体类型。 + 来自 entitySetName 的 与对象 不匹配,或未在 上设置 属性且名称未限定为 entitySetName 参数的一部分,或指定的类型属于多个实体集。 + + + 为提供的枚举中的每个类型生成可与实体框架一同使用的等效类型。 + + 对象的枚举,这些对象表示映射到概念模型的自定义数据类。 + + + 使用指定查询字符串在当前对象上下文中创建 + 具有指定类型的 + 要执行的查询字符串。 + 要传递给查询的参数。 + 返回的 的实体类型。 + queryString 或 parameters 参数为 null。 + + + 检查在当前存储连接中指定为数据库的数据库是否在存储区上存在。大部分实际工作由当前存储连接的 DbProviderServices 实现完成。 + 如果数据库存在,则为 true;否则为 false。 + + + 获取或设置默认容器名称。 + 作为默认容器名称的 + + + 删除在当前数据源连接中指定为数据库的数据库。 + + + 标记对象以备删除。 + 指定待删除实体的对象。该对象可以为任何状态( 除外)。 + + + 从对象上下文移除对象。 + 要分离的对象。仅移除实体;如果存在任何由相同 跟踪的相关对象,则不会自动分离这些对象。 + entity 为 null。 + 实体不与此 关联(例如,是新创建的,仍未与任何上下文关联,或是通过其他上下文获取,或是已分离)。 + + + 确保 更改与由 跟踪的所有对象中的更改进行同步。 + + + 释放对象上下文使用的资源。 + + + 释放对象上下文使用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 对默认容器执行给定的函数。 + 一个表示执行此函数的结果的对象。 + 函数的名称。可能包含容器名称(例如 ContainerName.FunctionName),如果知道 DefaultContainerName,也可以仅包含函数名称。 + 用于执行此函数的选项。 + 要用于函数的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 函数结果的元素类型。 + 如果函数为 null 或为空 + 如果函数无效(语法错误、不存在或引用其返回类型与 T 不兼容的函数) + + + 使用指定的参数和合并选项,执行在数据源中定义并在概念模型中表示的给定存储过程或函数。返回一个类型化的 + 存储过程返回的数据的 + 存储过程或函数的名称。该名称可以包含容器名称,如 <容器名称>.<函数名称>。如果默认容器名称已知,则只需要函数名称。 + 要在执行查询时使用的 。 + 一个 对象数组。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 对数据源执行函数时,将返回 的实体类型。该类型必须实现 + function 为 null 或为空,或未找到 function。 + 实体读取器不支持此函数或读取器和函数的类型不匹配。 + + + 使用指定的参数,执行在数据源中定义并在概念模型中映射的存储过程或函数。返回一个类型化的 + 存储过程返回的数据的 + 存储过程或函数的名称。该名称可以包含容器名称,如 <容器名称>.<函数名称>。如果默认容器名称已知,则只需要函数名称。 + 一个 对象数组。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 对数据源执行函数时,将返回 的实体类型。该类型必须实现 + function 为 null 或为空,或未找到 function。 + 实体读取器不支持此函数或读取器和函数的类型不匹配。 + + + 执行在数据源中定义并在概念模型中表示的存储过程或函数,丢弃该函数返回的任何结果,并返回执行该函数影响的行数。 + 受影响的行数。 + 存储过程或函数的名称。该名称可以包含容器名称,如 <容器名称>.<函数名称>。如果默认容器名称已知,则只需要函数名称。 + 一个 对象数组。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + function 为 null 或为空,或未找到 function。 + 实体读取器不支持此函数或读取器和函数的类型不匹配。 + + + 使用现有连接对数据源直接执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 受影响的行数。 + 对于此命令控制事务的创建。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 受影响的行数。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 对于此命令控制事务的创建。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 对于此命令控制事务的创建。 + 使用服务器的本机查询语言指定的命令。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 使用服务器的本机查询语言指定的命令。 + 要用于查询的参数值。 + + + 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含受影响的行数。 + 使用服务器的本机查询语言指定的命令。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 要在执行查询时使用的 。默认值为 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 用于执行此查询的选项。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 用于执行此查询的选项。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + TResult 类型的实体集。如果未提供实体集名称,则不会跟踪结果。 + 用于执行此查询的选项。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + 表示异步操作的任务。任务结果包含类型为 的对象的枚举。 + 使用服务器的本机查询语言指定的查询。 + 等待任务完成期间要观察的 。 + 要用于查询的参数值。如果使用输出参数,则它们的值在完全读取结果之前不可用。这是由于 DbDataReader 的基础行为而导致的,有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=398589。 + 结果序列的元素类型。 + + + 终结 类的实例。 + + + 返回所有现有代理类型。 + 所有现有代理类型的 + + + 返回具有指定实体键的对象。 + 一个 ,它是实体类型的实例。 + 要查找的对象的键。 + key 参数为 null。 + 和数据源中都未找到对象。 + + + 返回与指定类型的代理对象关联的 POCO 实体的实体类型。 + 关联的 POCO 实体的 + 代理对象的 。 + + + 返回用于此上下文的 + + + 通过指定的导航属性并使用默认合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的实体。 + 可返回要加载的相关对象的导航属性的名称。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 通过指定的导航属性并使用指定的合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的实体。 + 可返回要加载的相关对象的导航属性的名称。 + 在加载相关对象时要使用的 值。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 通过指定的 LINQ 查询并使用默认合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的源对象。 + 定义要加载的相关对象的 LINQ 表达式。 + 实体的类型。 + selector 未提供有效的输入参数。 + selector 为 null。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 通过指定的 LINQ 查询并使用指定的合并选项,显式加载与提供的对象相关的对象。 + 要为其加载相关对象的源对象。 + 定义要加载的相关对象的 LINQ 表达式。 + 在加载相关对象时要使用的 值。 + 实体的类型。 + selector 未提供有效的输入参数。 + selector 为 null。 + 实体处于 状态,或实体已附加到 的另一个实例。 + + + 获取对象上下文使用的元数据工作区。 + 与此 关联的 对象。 + + + 当使用数据源中的数据创建新的实体对象(作为查询或加载操作的一部分)时发生。 + + + 获取对象上下文用于跟踪对象更改的对象状态管理器。 + 使用的 + + + 获取与此对象上下文关联的 LINQ 查询提供程序。 + 由此对象上下文使用的 实例。 + + + 使用数据库中的数据更新对象上下文中的对象集合。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象的 集合。 + collection 为 null。 + refreshMode 无效。 + collection 为空或对象未附加到上下文。 + + + 使用数据库中的数据更新对象上下文中的对象。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象。 + entity 为 null。 + refreshMode 无效。 + 实体未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象集合。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象的 集合。 + collection 为 null。 + refreshMode 无效。 + collection 为空或对象未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象集合。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象的 集合。 + 等待任务完成期间要观察的 。 + collection 为 null。 + refreshMode 无效。 + collection 为空或对象未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象。 + entity 为 null。 + refreshMode 无效。 + 实体未附加到上下文。 + + + 使用数据库中的数据异步更新对象上下文中的对象。 + 表示异步操作的任务。 + 一个 值,指示是否使用数据库中的属性值重写对象上下文中的属性更改。 + 要刷新的对象。 + 等待任务完成期间要观察的 。 + entity 为 null。 + refreshMode 无效。 + 实体未附加到上下文。 + + + 将所有更新保存到数据库并重置对象上下文中的更改跟踪。 + 在调用 时处于 状态的对象数。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新保存到数据库并可选择重置对象上下文中的更改跟踪。 + 在调用 时处于 状态的对象数。 + 客户端事务支持需要此参数。如果为 true,则所有对象上的更改跟踪都会在 完成后重置。如果为 false,则必须在 之后调用 方法。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新保存到数据库并可选择重置对象上下文中的更改跟踪。 + 在调用 时处于 状态的对象数。 + 一个确定操作的行为的 值。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并可选择重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 一个确定操作的行为的 值。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并可选择重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 一个确定操作的行为的 值。 + 等待任务完成期间要观察的 。 + 保存更改时发生了开放式并发冲突。 + + + 将所有更新异步保存到数据库并重置对象上下文中的更改跟踪。 + 表示异步操作的任务。任务结果包含在调用 时处于 状态的对象数。 + 等待任务完成期间要观察的 。 + 保存更改时发生了开放式并发冲突。 + + + 在将更改保存到数据源时发生。 + + + 返回自身。ObjectContext 实现 以便为 和 ObjectContext(这两者将返回基础 ObjectContext)提供通用接口。 + + + 获取正由此上下文使用的事务处理程序。如果尚未启动任何事务,则可能为 null。 + 事务处理程序。 + + + 将包含实体数据行的 转换为请求的实体类型的对象。 + 类型为 TResult 的对象的枚举。 + 包含要转换为实体对象的实体数据的 。 + 实体类型。 + 当 reader 为 null 时。 + + + 在特定的实体集中,使用指定的合并选项将包含实体数据行的 转换为请求的实体类型的对象。 + 类型为 TResult 的对象的枚举。 + 包含要转换为实体对象的实体数据的 。 + TResult 类型的实体集。 + 在将转换后的对象添加到对象上下文时要使用的 。默认值为 。 + 实体类型。 + 当 reader 为 null 时。 + 当提供的 mergeOption 不是有效的 值时。 + 当提供的 entitySetName 不是 TResult 类型的有效实体集时。 + + + 返回具有指定实体键的对象。 + 如果成功检索到对象,则为 true。如果 key 是临时的、connection 为 null 或值为 null,则为 false。 + 要查找的对象的键。 + 在此方法返回时包含对象。 + 元数据对 key 不兼容。 + key 为 null。 + + + 定义影响 ObjectContext 的行为的选项。 + + + 获取或设置某值,该值确定是否应在事务中始终执行 SQL 函数和命令。 + 默认事务行为。 + + + 获取或设置一个布尔值,该值确定在访问导航属性时是否自动加载相关对象。 + 如果启用了延迟加载,则为 true;否则为 false。 + + + 获取或设置一个布尔值,该值确定是否为持久性未知的自定义数据类创建代理实例。 + 如果创建了代理,则为 true;否则为 false。默认值为 true。 + + + 获取或设置一个布尔值,该值确定是否要使用一致的 NullReference 行为。 + 如果应使用一致的 NullReference 行为,则为 true;否则为 false。 + + + 获取或设置一个布尔值,该值确定是否要使用 C# NullComparison 行为。 + 如果应使用 C# NullComparison 行为,则为 true;否则为 false。 + + + 获取或设置一个布尔值,该值确定是否要使用旧式 PreserveChanges 行为。 + 如果应使用旧式 PreserveChanges 行为,则为 true;否则为 false。 + + + ObjectMaterialized 事件的 EventArgs。 + + + 获取已创建的实体对象。 + 已创建的实体对象。 + + + ObjectMaterialized 事件的委托。 + + + 此类表示对象层的查询参数,它包含 Name、Type 和 Value。 + + + 使用指定的名称和值初始化 类的新实例。 + 参数名称。此名称不应包含“@”参数标记(它用在实体 SQL 语句中),只能为实际名称。表达式的第一个字符必须为字母。表达式中的所有后续字符都必须为字母、数字或下划线 (_) 字符。 + 参数的初始值(及固有类型)。 + 如果任一参数的值为 null。 + 如果名称参数的值无效。参数名称必须以字母开头,并且只能包含字母、数字和下划线。 + + + 利用指定的名称和类型初始化 类的新实例。 + 参数名称。此名称不应包含“@”参数标记(它用在实体 SQL 语句中),只能为实际名称。表达式的第一个字符必须为字母。表达式中的所有后续字符都必须为字母、数字或下划线 (_) 字符。 + 参数的公共语言运行库 (CLR) 类型。 + 如果任一参数的值为 null。 + 如果名称参数的值无效。参数名称必须以字母开头,并且只能包含字母、数字和下划线。 + + + 获取参数名称,该名称只能通过构造函数进行设置。 + 参数名称,它只能通过构造函数进行设置。 + + + 获取参数类型。 + 参数的 + + + 获取或设置参数值。 + 参数值。 + + + 表示对象层上的查询参数集合。 + + + 将指定的 添加到集合。 + 要添加到集合的参数。 + parameter 参数为 null。 + parameter 参数已存在于集合中。此行为与允许重复项的大多数集合的行为不同。-或-与实参同名的另一个形参已存在于集合中。注意,查找是区分大小写的。此行为与大多数集合的行为不同,更类似于 的行为。 + parameter 的类型无效。 + + + 删除集合中的所有 实例。 + + + 按引用检查集合中是否存在指定的 + 如果在集合中找到参数对象,则返回 true;否则返回 false。 + 要在集合中查找的 。 + parameter 参数为 null。 + + + 确定集合中是否存在具有指定名称的 + 如果在集合中找到具有指定名称的参数,则返回 true;否则为 false。 + 要在集合中查找的参数的名称。此名称不应包含“@”参数标记(它用在实体 SQL 语句中),只能为实际名称。 + name 参数为 null。 + + + 允许将集合中的参数复制到提供的数组中(从指定索引处的对象开始)。 + 要将参数复制到其中的数组。 + 数组中开始复制参数的位置的索引。 + + + 获取集合中当前存在的参数的数量。 + 集合中当前存在的 对象的数量。 + + + 返回枚举器实例,这些实例允许循环访问和遍历集合。 + 可用于循环访问集合的 对象。 + + + 获取供调用方按名称检索参数的索引器。 + 供调用方按名称检索参数的索引器。 + 项名称。 + + + 按引用从集合中移除 的实例(如果集合中存在该实例)。 + 如果从集合中找到并删除参数对象,则返回 true;否则为 false。 + 要从集合中移除的对象。 + parameter 参数为 null。 + + + 获取一个值,该值指示 是否为只读。 + 如果 是只读的,则为 true;否则为 false。 + + + 返回集合上的非类型化枚举器。 + 一个 实例。 + + + 此类在对象层实现非类型化的查询。 + + + 返回查询的命令文本。 + 一个字符串值。 + + + 获取与此对象查询相关联的对象上下文。 + 与此 实例关联的 + + + 获取或设置一个值,该值指示是否应缓存查询计划。 + 一个指示是否应缓存查询计划的值。 + + + 使用指定合并选项执行非类型化对象查询。 + 一个 ,它包含查询返回的实体对象的集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定合并选项异步执行非类型化对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定合并选项异步执行非类型化对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + 等待任务完成期间要观察的 。 + + + 返回有关查询的结果类型的信息。 + 一个 值,它包含有关查询的结果类型的信息。 + + + 获取或设置从查询返回的对象添加到对象上下文的方式。 + 查询 + + + 获取此对象查询的参数集合。 + 的参数集合。 + + + 查询是流式处理还是缓存 + + + 返回一个循环访问集合的枚举器。 + 可用于循环访问集合的 + + + 获取一个值,该值指示此查询是否包含查询对象的集合。 + 如果此查询包含查询对象的集合,则为 true;否则为 false。 + + + 返回 形式的集合用于数据绑定。 + 实体对象的 + + + 返回 ,被枚举时它将针对数据库执行给定的 SQL 查询。 + 查询结果。 + + + 获取此查询实例的结果元素类型。 + + + 获取描述此查询的表达式。对于使用 LINQ 生成器模式生成的查询,会返回完全 LINQ 表达式树;否则,返回包装此查询的常量表达式。请注意,默认表达式不进行缓存。这允许用户区分 LINQ 和 Entity-SQL 查询。 + + + 获取与此查询实例关联的 + + + 返回对数据源执行的命令。 + 一个 string,表示查询对数据源执行的命令。 + + + ObjectQuery 在对象层实现强类型化的查询。使用 Entity-SQL 字符串指定查询并可以通过调用由 ObjectQuery 声明的基于 Entity-SQL 的查询生成器方法来创建它们。 + 此 ObjectQuery 的结果类型 + + + 使用指定的实体 SQL 命令作为初始查询来创建新的 实例。 + 实体 SQL 查询。 + 对其执行查询的 。 + + + 使用指定的实体 SQL 命令(作为初始查询)和指定的合并选项创建新的 实例。 + 实体 SQL 查询。 + 对其执行查询的 。 + 指定此查询所检索的实体应如何与以前对同一 的查询所返回的实体合并。 + + + 将查询限制为唯一结果。 + 一个新的 实例,等效于应用了 SELECT DISTINCT 的原始实例。 + + + 此查询生成器方法创建其结果是此查询的所有结果(除了那些也是指定另一个查询结果的一部分之外)的新查询。 + 新的 ObjectQuery 实例。 + 表示要排除的结果的查询。 + 如果查询参数是 null。 + + + 使用指定的合并选项执行对象查询。 + 一个 ,它包含查询返回的实体对象的集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定的合并选项异步执行对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + + + 使用指定的合并选项异步执行对象查询。 + 表示异步操作的任务。任务结果包含一个 ,其中包含查询返回的实体对象集合。 + 要在执行查询时使用的 。默认值为 。 + 等待任务完成期间要观察的 。 + + + 按指定的条件对查询结果进行分组。 + 一个 类型的新 实例,等效于应用了 GROUP BY 的原始实例。 + 作为结果分组依据的键列。 + 用于定义投影的所选属性的列表。 + 此方法中使用的零个或多个参数。 + query 参数为 null 或空字符串,或 projection 参数为 null 或空字符串。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在查询结果中返回的相关对象的列表(以点分隔)。 + path 为 null。 + path 为 empty。 + + + 此查询生成器方法创建其结果同时包含在此查询和指定的另一查询的结果中的新查询。 + 新的 ObjectQuery 实例。 + 表示结果要与其相交的查询。 + 如果查询参数是 null。 + + + 获取或设置此对象查询的名称。 + 一个字符串值,它是此 的名称。 + + + 将查询限制为仅包括特定类型的结果。 + 一个新的 实例,等效于应用了 OFTYPE 的原始实例。 + 使用应用筛选器执行查询时, 的类型返回。 + 指定的类型无效。 + + + 按指定条件对查询结果进行排序。 + 一个新的 实例,等效于应用了 ORDER BY 的原始实例。 + 作为结果排序依据的键列。 + 此方法中使用的零个或多个参数。 + keys 或 parameters 参数为 null。 + key 为空字符串。 + + + 将查询结果限制为仅包含在指定投影中定义的属性。 + 一个 类型的新 实例,等效于应用了 SELECT 的原始实例。 + 用于定义投影的所选属性的列表。 + 此方法中使用的零个或多个参数。 + projection 为 null 或 parameters 为 null。 + projection 为空字符串。 + + + 将查询结果限制为仅包含投影中指定的属性。 + 一个类型与特定投影兼容的新 。返回的 等效于应用了 SELECT VALUE 的原始实例。 + 投影列表。 + 在分析时应在作用域内的一组可选查询参数。 + 方法返回的 的类型。 + projection 为 null 或 parameters 为 null。 + projection 为空字符串。 + + + 按指定条件对查询结果进行排序并跳过指定数目的结果。 + 一个新 实例,等效于同时应用了 ORDER BY 和 SKIP 的原始实例。 + 作为结果排序依据的键列。 + 要跳过的结果数。它可以是常量或参数引用。 + 在分析时应在作用域内的一组可选查询参数。 + 任何参数为 null。 + keys 为空字符串或 count 为空字符串。 + + + 返回 ,被枚举时它将针对数据库执行给定的 SQL 查询。 + 查询结果。 + + + 返回 ,被枚举时它将针对数据库执行给定的 SQL 查询。 + 查询结果。 + + + 将查询结果限制为指定的项数。 + 一个新的 实例,等效于应用了 TOP 的原始实例。 + 字符串形式的结果项数。 + 在分析时应在作用域内的一组可选查询参数。 + count 为 null。 + count 为空字符串。 + + + 此查询生成器方法创建其结果是此查询的所有结果加上另一个查询的所有结果但是不允许重复(即结果是唯一的)的新查询。 + 新的 ObjectQuery 实例。 + 表示要添加的结果的查询。 + 如果查询参数是 null。 + + + 此查询生成器方法创建其结果是此查询的所有结果加上另一个查询的所有结果且包括所有重复项(即结果不一定是唯一的)的新查询。 + 新的 ObjectQuery 实例。 + 表示要添加的结果的查询。 + 如果查询参数是 null。 + + + 将查询限制为包含与指定筛选条件匹配的结果。 + 一个新的 实例,等效于应用了 WHERE 的原始实例。 + 筛选谓词。 + 此方法中使用的零个或多个参数。 + predicate 为 null 或 parameters 为 null。 + predicate 为空字符串。 + + + 此类实现 IEnumerable 和 IDisposable。从 ObjectQuery.Execute 方法返回此类的实例。 + + + 仅当创建将重写具有模拟或伪造行为的成员的测试替身时,才使用此构造函数。将此构造函数用于其他目的可能导致意外的行为,包括但不限于引发 + + + 执行与释放 (free)、释放 (release) 或重置资源关联的任务。 + + + 释放对象结果使用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 在派生类中重写时,获取泛型 的类型。 + 泛型 的类型。 + + + 获取存储过程的下一个结果集。 + 枚举下一个结果集的值的 ObjectResult。如果没有其他值,或 ObjectResult 不是存储过程调用的结果,则为 Null。 + 元素的类型。 + + + 返回一个循环访问查询结果的枚举器。 + 一个循环访问查询结果的枚举器。 + + + IListSource.ContainsListCollection 实现。始终返回 false。 + + + 以数据绑定所用的格式返回结果。 + 实体对象的 + + + 返回一个循环访问查询结果的异步枚举器。 + 一个循环访问查询结果的异步枚举器。 + + + 此类表示 方法的结果。 + 结果的类型。 + + + 仅当创建将重写具有模拟或伪造行为的成员的测试替身时,才使用此构造函数。将此构造函数用于其他目的可能导致意外的行为,包括但不限于引发 + + + 释放由 占用的非托管资源,还可以释放托管资源。 + 如果为 true,则释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 获取 的类型。 + 一个 ,它是 的类型。 + + + 返回一个循环访问查询结果的枚举器。 + 一个循环访问查询结果的枚举器。 + + + 异步获取循环访问 的枚举器。 + 循环访问 的枚举器。 + + + 表示用于执行创建、读取、更新和删除操作的类型化实体集。 + 实体的类型。 + + + 将对象添加到当前实体集中的对象上下文。 + 要添加的对象。 + + + 将标量值从提供的对象复制到 中具有相同键的对象中。 + 已更新的对象。 + 其属性更新将应用于原始对象的已分离对象。currentEntity 的实体键必须与 中某个项的 属性相匹配。 + + + 属性设置为与所提供对象的属性值相匹配。 + 已更新的对象。 + 其属性更新将应用于原始对象的已分离对象。originalEntity 的实体键必须与 中某个项的 属性相匹配。 + + + 将对象或对象图附加到当前实体集中的对象上下文。 + 要附加的对象。 + + + 创建指定类型的实例。 + 所请求类型 T 的实例,或与类型 T 对应的代理类型的实例。 + 要返回的对象的类型。 + + + 创建一个新的实体类型对象。 + 新的实体类型对象,或与实体类型对应的代理类型的实例。 + + + 标记对象以备删除。 + 表示要删除的实体的对象。该对象可以为任何状态( 除外)。 + + + 从对象上下文移除对象。 + 要分离的对象。仅移除实体;如果存在任何由相同 跟踪的相关对象,则不会自动分离这些对象。 + + + 获取用此 实例表示的实体集的元数据。 + 一个 对象。 + + + 表示实体、实体存根或关系 + + + 接受当前值作为原始值。 + + + 设置项的当前值,使其与所提供对象的属性值相匹配。 + 具有要应用于对象的更新值的已分离对象。currentEntity 还可以是对象的实体键。 + + + 设置项的原始值,使其与所提供对象的属性值相匹配。 + 具有要应用于对象的原始值的已分离对象。originalEntity 还可以是对象的实体键。 + + + 将该项的状态更改为指定的 值。 + 要为该项的 属性设置的 值。 + + + 获取与此 关联的对象或关系的当前属性值。 + 一个 ,它包含与此 关联的对象或关系的当前值。 + + + 将实体标记为已删除。 + + + 获取实体对象。 + 实体对象。 + + + 获取实体键。 + 实体键。 + + + 获取该对象或关系的 + 用于对象或关系的 + + + 返回自上次调用 以来已更改的对象属性的名称。 + 一个 集合,包含字符串形式的名称。 + + + 获取与此 关联的对象的原始值的可更新版本。 + 对象数据的可更新原始值。 + + + 使用 DetectChanges 确定具有给定名称的属性的当前值与原始值是否不同。请注意这可能不同于正在标记为“已修改”的属性,因为尚未更改的属性仍可能标记为“已修改”。 + 如果属性已更改,则为 true;否则为 false。 + 属性的名称。 + + + 获取一个值,该值指示 是否表示一个关系。 + 如果 表示一个关系,则为 true;否则为 false。 + + + 获取 + + + + + 获取与此的对象或关系关联的原始值的只读版本。 + 关系集项或实体的原始值的只读版本。 + + + 拒绝自上次加载、附加或保存属性以来对具有给定名称的属性所做的任何更改,或接受更改。存储属性的原始值,且属性将不再标记为“已修改”。 + 要更改的属性的名称。 + + + 获取项所表示的对象的 实例。 + + 对象。 + + + 将对象或关系的状态设置为 modify。 + 如果状态不为“已修改”或“未更改” + + + 将指定属性标记为已修改。 + 属性的名称。 + 如果状态不为“已修改”或“未更改” + + + 获取 的状态。 + + 的状态。 + + + 用于报告复杂属性已更改。现在将在 EntityMemberChanging 期间缓存的属性值添加到 OriginalValues + 已更改的顶级实体属性的名称 + 包含已更改属性的复杂对象 + complexObject 上更改的属性的名称 + + + 用于报告将要更改复杂属性。在调用此方法时,缓存指定属性的当前值。 + 要更改的顶级实体属性的名称 + 包含要更改的属性的复杂对象 + complexObject 上要更改的属性的名称 + + + 用于报告标量实体属性已更改。现在将在 EntityMemberChanging 期间缓存的属性值添加到 OriginalValues + 要更改的实体属性的名称 + + + 用于报告将要更改标量实体属性。在调用此方法时,缓存指定属性的当前值。 + 要更改的实体属性的名称 + + + 从 ObjectStateEntry 返回 EntityState + + + 维护实体类型实例和关系实例的对象状态和标识管理。 + + + 初始化 类的新实例。 + 提供映射和元数据信息的 。 + + + 将特定对象的 状态更改为指定的 entityState。 + 所提供实体的 + 必须更改状态的对象。 + 对象的新状态。 + 当 entity 为 null 时。 + 当对象未分离且在状态管理器没有任何项时,或当您尝试将状态从任何其他 更改为 时,或状态为无效的 值时。 + + + 更改两个实体对象之间的指定关系的状态,其中的关系状态根据两个相关对象和导航属性的名称来指定。 + 已更改的关系的 + 位于关系一端的对象实例或源实体的 。 + 位于关系另一端的对象实例或目标实体的 。 + 源上可返回指定目标的导航属性的名称。 + 请求的所指定关系的 。 + 当 source 或 target 为 null 时。 + 当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当状态为无效的 值时。 + + + 更改两个实体对象之间的指定关系的状态,其中的关系状态根据两个相关对象和关系属性来指定。 + 已更改的关系的 + 位于关系一端的对象实例或源实体的 。 + 位于关系另一端的对象实例或目标实体的 。 + 关系的名称。 + 关系的目标端的角色名称。 + 请求的所指定关系的 。 + 当 source 或 target 为 null 时。 + 当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当状态为无效的 值时。 + + + 更改两个实体对象之间的指定关系的状态,根据两个相关对象和用于定义导航属性的 LINQ 表达式来指定关系。 + 已更改的关系的 + 位于关系一端的对象实例或源实体的 。 + 位于关系另一端的对象实例或目标实体的 。 + 一个 LINQ 表示式,用于选择返回指定 target 的 source 的导航属性。 + 请求的所指定关系的 。 + 源对象的实体类型。 + 当 source、target 或 selector 为 null 时。 + selector 格式不正确或无法返回导航属性。 + 当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当您尝试在 source 或 target 处于 状态时将关系的状态更改为 以外的状态时,或当状态为无效的 值时。 + + + 返回具有给定状态的对象或关系的 对象的集合。 + 具有给定 对象的集合。 + 用于筛选返回的 对象的 。 + 当状态为 时。 + + + 返回具有指定键的对象或关系项的 + 给定 的对应 + + 。 + 当 key 为 null 时。 + 在状态管理器中找不到指定的 key 时。 + + 中不存在具有指定 的实体。 + + + 返回指定对象的 + 给定 的对应 + 检索到的 所属的 。 + + 中不存在具有指定 的实体。 + + + 返回指定对象所使用的 + 所指定对象的 + 要为其返回 的对象。 + 实体不实现 IEntityWithRelationships 且不由此 ObjectStateManager 跟踪 + + + 获取与此状态管理器关联的 + 与此 关联的 + + + 在从状态管理器中添加或移除实体时发生。 + + + 尝试检索具有指定 的对象或关系的对应 + 一个布尔值,如果给定的 有对应的 ,则为 true;否则为 false。 + 给定的 。 + 此方法返回时,包含给定 。此参数传递时未经初始化。 + 为 key 提供了一个 null(在 Visual Basic 中为 Nothing)值。 + + + 尝试检索指定的 的对应 + 一个布尔值,如果给定的对象有对应的 ,则为 true;否则为 false。 + 检索到的 所属的 。 + 此方法返回时,包含给定 。此参数传递时未经初始化。 + + + 返回指定对象所使用的 + 如果为提供的实体返回了 实例,则为 true;否则为 false。 + 要为其返回 的对象。 + 此方法返回时将包含实体的 。 + + + 从数据库检索实体时,实体各属性的原始值。 + + + 一个 DataContractResolver,它知道如何将为持久未知的类创建的代理类型解析为基类型。它与 DataContractSerializer 一起使用。 + + + 初始化 类的新实例。 + + + 在反序列化过程中,将任何 xsi:type 信息映射到持久性未知对象的实际类型。 + 返回 xsi:type 映射到的类型。如果找不到与 xsi:type 匹配的已知类型,则返回 null。 + 要映射的 xsi:type 信息。 + xsi:type 的命名空间。 + 已声明的类型。 + + 的一个实例。 + + + 在序列化过程中,将实际类型映射到 xsi:type 信息。 + 如果类型已解析,则为 true;否则为 false。 + 持久性未知对象的实际类型。 + 已声明的类型。 + + 的一个实例。 + 此方法返回时,包含 xsi:type 声明的列表。 + 此方法返回时,包含使用的命名空间的列表。 + + + 定义在从数据库刷新内存中数据时处理已修改属性的不同方法。 + + + 对于未修改的客户端对象,行为与 StoreWins 相同。对于已修改的客户端对象,使用存储值刷新原始值,保留客户端对象上的所有值。下次更新时,所有客户端更改单元将被视为“已修改”,需要更新。 + + + 丢弃客户端上的所有更改并使用存储值刷新值。更新客户端原始值以匹配存储值。 + + + 用于修改 ObjectContext.SaveChanges() 行为的标志 + + + 在保存更改后,调用 AcceptAllChangesAfterSave 方法,该方法会在 ObjectStateManager 中重置更改跟踪。 + + + 在保存更改之前,调用 DetectChanges 方法,使用 ObjectStateManager 中的数据同步附加到对象上下文的对象的属性值。 + + + 保存更改,不调用 DetectChanges 或 AcceptAllChangesAfterSave 方法。 + + + 这是表示在 ADO.NET 中成为某一实体所需的最小接口的接口。 + + + 初始化 类的新实例。 + + + 通知更改跟踪器,某个复杂对象的属性已更改。 + 已更改的属性的名称。 + property 为 null。 + + + 通知更改跟踪器,对复杂对象的属性更改挂起。 + 更改的属性的名称。 + property 为 null。 + + + 针对复杂属性的特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 初始化 类的新实例。 + + + 复杂类型的特性 + + + 初始化 类的新实例。 + + + 标识 Edm 基类的特性 + + + 初始化 类的新实例。 + + + 指示枚举类型的特性。 + + + 初始化 类的新实例。 + + + 指示给定的方法是 EDM 函数的代理。 + + + 创建新的 DbFunctionAttribute 实例。 + 特性化方法所表示的 EDM 函数的命名空间名称。 + 特性化方法所表示的 EDM 函数的函数名称。 + + + 映射到存储元素的属性的基特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 定义两个实体类型之间的基于概念性模型中关联的关系。 + + + 创建 类的实例。 + 此实体所参与的关联的命名空间名称。 + 此实体所参与的关系的名称。 + 关联一端的类型的角色名称。 + + 的值,指示在关联一端的重数,例如一重或多重。 + 关联一端的实体类型。 + 关联另一端的类型的角色名称。 + + 的值,指示在关联另一端的重数,例如一重或多重。 + 关联另一端的实体类型。 + + + 初始化 类的新实例。 + 此实体所参与的关联的命名空间名称。 + 此实体所参与的关系的名称。 + 关联一端的类型的角色名称。 + + 的值,指示在关联一端的重数,例如一重或多重。 + 关联一端的实体类型。 + 关联另一端的类型的角色名称。 + + 的值,指示在关联另一端的重数,例如一重或多重。 + 关联另一端的实体类型。 + 一个指示关系是否基于外键值的值。 + + + 获取一个布尔值,该值指示关系是否基于外键值。 + 如果关系基于外键值,则为 true;否则为 false。 + + + 关系的名称。 + 一个 ,表示此 定义的关系的名称。 + + + 关系的命名空间。 + 表示关系命名空间的 + + + 关系一端的重数。 + 指示重数的 值。 + + + 关系一端的角色名称。 + 表示角色名称的 + + + 关系一端的实体类型。 + 表示关联此端对象类型的 + + + 关系另一端的重数。 + 指示重数的 值。 + + + 关系另一端的角色名称。 + 表示角色名称的 + + + 关系另一端的实体类型。 + 表示关联另一端对象类型的 + + + 标识为 RelationshipSet 定义的端的特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 初始化 类的新实例。 + 关系属性的命名空间名称。 + 关系的名称。关系名称不由命名空间限定。 + 关系另一端的角色名称。 + + + 获取非限定的关系名称。 + 关系名。 + + + 导航属性的命名空间名称。 + 表示命名空间名称的 + + + 获取关系另一端的角色名称。 + 目标角色名称由在概念性模型中定义此关系的关联中的另一个 End 元素的 Role 属性指定。有关更多信息,请参见“关联 (EDM)”。 + + + IEntity 中标量属性的特性。隐含的默认 AttributeUsage 属性 Inherited=True、AllowMultiple=False。元数据系统要求此行为,并且将仅查看其中每个特性的第一个,即使存在多个。 + + + 初始化 类的新实例。 + + + 获取或设置一个值,该值指示属性是否为实体键的一部分。 + 一个指示属性是否为实体键的一部分的值。 + + + 获取或设置一个值,该值指示属性是否可以具有 null 值。 + 一个值,该值指示属性是否可以具有 null 值。 + + + 静态类型的特性 + + + 初始化 类的新实例。 + + + 使用对程序集引用的每个模型都唯一的值初始化 类的新实例。 + 一个字符串,表示程序集中模型的唯一 GUID 值。 + + + 程式化类型的基特性 + + + 概念性架构中类型的名称,该类型映射到此属性所应用于的类。 + 表示名称的 + + + 概念性架构中映射到此类型的实体对象类型或复杂类型的命名空间名称。 + 表示命名空间名称的 + + + 对某一特定 EDM 构造进行建模的实体(可以是某一特定类型的所有实体或者是参与某一特定关系的实体)的集合。 + 此集合中实体的类型。 + + + 初始化 类的新实例。 + + + 将对象添加到集合。 + 添加到集合的对象。entity 必须实现 。 + entity 为 null。 + + + 定义对象上下文中对象和相关对象集合之间的关系。 + 对象上下文中与源对象相关的对象集合。 + entities 集合为 null。 + 源对象或 entities 集合中的对象为 null 或者不处于 状态。-或-关系不能基于 EDM 元数据定义。这会在概念性架构中的关联不支持两种类型间的关系时发生。 + + + 定义对象上下文中两个附加对象之间的关系。 + 附加的对象。 + 当 entity 为 null 时。 + 当 entity 无法与源对象关联时。这会在概念性架构中的关联不支持两种类型间的关系时发生。-或-当对象为 null 或不处于 状态时。 + + + 从集合中移除所有实体。 + + + 确定特定对象是否存在于集合中。 + 如果在 中找到该对象,则为 true;否则为 false。 + 要在 中定位的对象。 + + + 将集合中的所有内容复制到数组,从目标数组的指定索引处开始。 + 要复制到的数组。 + 数组中从零开始的索引,在此处开始复制。 + + + 获取集合中包含的对象数。 + + 中包含的元素数。 + + + 返回一个对象查询,执行该查询时返回的对象集合与当前集合包含的对象相同。 + 表示实体集合的 + 当对象处于 状态时,或当对象处于 状态且 不为 时。 + + + 返回一个枚举器,用于循环访问集合中的对象。 + 一个 ,循环访问 缓存的值集。 + + + 获取一个值,指示 是否是只读的。 + 始终返回 false。 + + + 使用指定的合并选项将相关对象加载到集合中。 + 指定此集合中的对象应如何与从以前针对相同 的查询中返回的对象合并。 + + + 使用默认合并选项异步将一个或多个相关实体加载到相关端中。 + 表示异步操作的任务。 + 合并选项。 + 等待任务完成期间要观察的 CancellationToken。 + + + 在内部使用,用于反序列化实体对象。 + 流上下文。 + + + 在内部使用,用于序列化实体对象。 + 流上下文。 + + + 从集合移除对象,并标记要删除的关系。 + 如果成功移除该项,则为 true;否则为 false。 + 要从集合中移除的对象。 + 实体对象为 null。 + 实体对象未附加到相同的对象上下文,或者,实体对象没有有效的关系管理器。 + + + 返回一个枚举器,用于循环访问 缓存的值集。 + 一个 ,循环访问 缓存的值集。 + + + IListSource.ContainsListCollection 实现。始终返回 false。这意味着我们返回的 IList 是包含我们的实际数据的 IList,而不是集合的列表。 + + + 返回 形式的集合用于数据绑定。 + 实体对象的 + + + 这是所有描述的 EntityObject 类的基类。 + + + 初始化 类的新实例。 + + + 获取或设置此对象的键。 + 此对象的 + + + 获取对象的实体状态。 + 此对象的 + + + 通知更改跟踪器,属性已更改。 + 已更改的属性的名称。 + property 为 null。 + + + 通知更改跟踪器,属性更改挂起。 + 更改的属性的名称。 + property 为 null。 + + + 由 ObjectStateManager 用来将此 EntityObject 附加到缓存或者分离这两者。 + 对包含此实体的 ObjectStateEntry 的引用 + + + 返回惰式创建的关系导航属性对象、集合和 ref 的容器。 + + + 对多重性为 1 的关系端进行建模。 + + + 返回相关对象的键。 + 一个 ,表示相关对象的键。 + + + 对多重性为 1 的关系端进行建模。 + 要引用的实体类型。 + + + 创建 的新实例。 + + + 在对象上下文中创建两个对象之间的多对一或一对一关系。 + 附加的对象。 + 当 entity 为 null 时。 + 当 entity 无法与当前相关端关联时。这会在概念性架构中的关联不支持两种类型间的关系时发生。 + + + 创建一个返回相关对象的等效对象查询。 + 一个 ,其返回相关对象。 + 当对象处于 状态时,或当对象处于 状态且 不为 时。 + + + 使用指定的合并选项为此 加载相关对象。 + 指定当 中已存在该对象时,应如何返回它。 + + 的源为 null;或一个查询返回多个相关端;或一个查询返回零个相关端,但应返回一个相关端。 + + + 使用默认合并选项异步将一个或多个相关实体加载到相关端中。 + 已加载到相关端的相关实体。 + 合并选项。 + 等待任务完成期间要观察的 CancellationToken。 + + + 此方法在内部使用,用于序列化相关实体对象。 + 序列化的流。 + + + 此方法在内部使用,用于序列化相关实体对象。 + 序列化的流。 + + + 获取或设置此 返回的相关对象。 + 返回的对象。 + + + 此接口由更改跟踪器实现并且由数据类用来报告更改 + + + 通知更改跟踪器,某个复杂类型的属性已更改。 + 已更改的实体类型的复杂属性的名称。 + 包含已更改属性的复杂类型。 + 复杂类型上更改的属性的名称。 + + + 通知更改跟踪器,复杂属性更改挂起。 + 要更改的顶级实体属性的名称。 + 包含要更改的属性的复杂类型。 + 复杂类型上要更改的属性的名称。 + + + 通知更改跟踪器,某个实体类型的属性已更改。 + 已更改的属性的名称。 + + + 通知更改跟踪器即将更改某个实体类型的属性。 + 要更改的属性的名称。 + + + 获取所跟踪对象的当前状态。 + 一个 ,它是所跟踪对象的状态。有关更多信息,请参见“标识解析、状态管理和更改跟踪”和“在 POCO 实体中跟踪更改”。 + + + 数据类必须实现以便由更改跟踪器进行管理的最小接口。 + + + 获取或设置用于报告更改的 + 用于报告更改的 。 + + + 定义包含键的实体的接口。 + + + 为实现此接口的实体类型的实例获取或设置 + 实现此接口的实体类型实例的 + + + 在公开关系时数据类必须实现的接口 + + + 返回关系管理器,该管理器管理实体类型的实例的关系。 + 此实体的 + + + 表示关系的一端。 + + + 将对象添加到相关端。 + 添加到集合的对象。entity 必须实现 。 + + + 将对象添加到相关端。 + 添加到集合的对象。 + + + 定义两个附加对象之间的关系。 + 附加的对象。entity 必须实现 。 + + + 定义两个附加对象之间的关系。 + 附加的对象。 + + + 返回一个 ,它表示属于相关端的对象。 + 一个 ,它表示属于相关端的对象。 + + + 返回一个 ,它循环访问相关对象的集合。 + 一个 ,它循环访问相关对象的集合。 + + + 获取或设置一个值,该值指示是否已从数据库加载实体(对于 )或集合中的所有实体(对于 )。 + 如果加载所有相关实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 使用默认合并选项将一个或多个相关对象加载到此相关端中。 + + + 使用指定合并选项将一个或多个相关对象加载到相关端中。 + 将对象合并到现有 时使用的 。 + + + 使用指定合并选项将一个或多个相关对象异步加载到相关端中。 + 表示异步操作的任务。 + 将对象合并到现有 时使用的 。 + 等待任务完成期间要观察的 。 + + + 使用默认合并选项将一个或多个相关对象异步加载到此相关端中。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取此相关端所参与的关系的名称。 + 所参与的关系的名称。关系名称不由命名空间限定。 + + + 返回对相关端的元数据的引用。 + 包含关系一端的元数据的 对象。 + + + 从相关端的对象的集合中移除一个对象。 + 如果 entity 已成功删除,则为 true;如果 entity 不是 的一部分,则为 false。 + 要从集合中移除的对象。entity 必须实现 。 + + + 从相关端的对象的集合中移除一个对象。 + 如果 entity 已成功删除,则为 true;如果 entity 不是 的一部分,则为 false。 + 要从集合中移除的对象。 + + + 获取关系的源端的角色名称。 + 关系的源端的角色名称。 + + + 获取关系的目标端的角色名称。 + 关系的目标端的角色名称。 + + + EntityCollection 和 EntityReference 的基类 + + + 对相关端进行更改时发生。 + + + 返回一个 ,它循环访问相关对象的集合。 + 一个 ,它循环访问相关对象的集合。 + + + 获取一个值,该值指示是否已加载所有相关对象。 + 如果相关端包含数据库中的所有相关对象,则为 true;否则为 false。 + + + 使用默认合并选项将一个或多个相关对象加载到相关端中。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 使用指定合并选项从相关端加载一个或多个对象。 + 将对象合并到现有 时使用的 。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 使用指定合并选项从相关端异步加载一个或多个对象。 + 表示异步操作的任务。 + 将对象合并到现有 时使用的 。 + 等待任务完成期间要观察的 。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 使用默认合并选项将一个或多个相关对象异步加载到相关端中。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + 当源对象是使用 查询检索的,且 不是 或相关对象已加载时;或当源对象未附加到 时;或当正在跟踪源对象,但是它处于 状态,或用于 时。 + + + 在内部使用,用于反序列化实体对象及 实例。 + 序列化的流。 + + + 获取此相关端所参与的关系的名称。 + 所参与的关系的名称。关系名称不由命名空间限定。 + + + 获取对相关端的元数据的引用。 + 包含关系一端的元数据的 对象。 + + + 获取关系的源端的角色名称。 + 表示角色名称的 + + + 将实体添加到相关端。此方法与 Add(object) 的工作方式完全相同。保留此方法是为了与以前版本的 IRelatedEnd 向后兼容。 + 要添加到相关端的实体实例 + + + 将实体添加到相关端。如果所有者附加到某一缓存,则所有连接端都添加到该对象缓存,并且其对应关系也添加到 ObjectStateManager。关系的 RelatedEnd 也是固定的。 + 要添加到相关端的实体实例 + + + 将实体附加到相关端。此方法与 Attach(object) 的工作方式完全相同。保留此方法是为了与以前版本的 IRelatedEnd 向后兼容。 + 要附加到相关端的实体 + 为 null 时引发。 + 在无法通过当前关系端与实体相关时引发。 + + + 将实体附加到相关端。如果相关端已经填充或部分填充,则此操作将合并现有实体和给定实体。不假定给定实体为相关实体的完整集。所有者和所有传入的实体必须处于 Unchanged 或 Modified 状态。仅当状态管理器已在跟踪关系实例时,才允许已删除的元素。 + 要附加到相关端的实体 + 为 null 时引发。 + 在无法通过当前关系端与实体相关时引发。 + + + 返回一个 ,它表示属于相关端的对象。 + 一个 ,它表示属于相关端的对象。 + + + 从相关端删除实体。此方法与 Remove(object) 的工作方式完全相同。保留此方法是为了与以前版本的 IRelatedEnd 向后兼容。 + 如果实体已成功删除,则返回 true;如果实体不是 RelatedEnd 的一部分,则返回 false。 + 要从相关端中删除的实体实例 + + + 从相关端删除实体。如果所有者附加到缓存,则将关系标记为待删除;如果关系是复合关系,也将实体标记为待删除。 + 如果实体已成功删除,则返回 true;如果实体不是 RelatedEnd 的一部分,则返回 false。 + 要从相关端中删除的实体实例 + + + 获取关系的目标端的角色名称。 + 表示角色名称的 + + + 标识关系的种类 + + + 该关系为关联 + + + 惰式创建的关系导航属性对象(集合和 ref)的容器。 + + + 创建一个新的 对象。 + 请求的 + 对调用此方法的实体的引用。 + + + 返回关系管理器管理的所有相关端的枚举。 + 实现 的对象的 。如果尚未填充关系,则返回空枚举。 + + + 获取具有指定关系名称和目标角色名称的相关对象的 + 相关对象的 + 要浏览的关系的名称。关系名称不由命名空间限定。 + 要浏览的目标角色的名称。指示在关系中浏览的方向。 + 返回的 的类型。 + 指定角色返回 而不是 + + + 为关系中的指定目标角色返回正确类型的 + 已检索的表示 + 在其中定义 targetRoleName 的关系的名称。关系名称不由命名空间限定。 + 用于检索 relationshipName 的另一端的目标角色. + relationshipName 或 targetRoleName 为 null。 + 源类型不匹配所有者类型。 + targetRoleName 无效或无法在元数据中找到关系类型。 + + + 通过使用关系名称和目标角色名称的指定组合,获取相关对象的 + 相关对象的 + 要浏览的关系的名称。关系名称不由命名空间限定。 + 要浏览的目标角色的名称。指示在关系中浏览的方向。 + 返回的 的类型。 + 指定角色返回 而不是 + + + 采用通过默认构造函数创建的现有 EntityCollection,并且使用提供的关系和目标角色名称初始化它。此方法设计为仅在反序列化期间使用;如果已初始化提供的 EntityCollection 或者关系管理器已附加到某一 ObjectContext,此方法将引发异常。 + 关系名。 + 目标角色名。 + 现有 EntityCollection。 + targetRoleName 表示的实体的类型 + + + 采用通过默认构造函数创建的现有 EntityReference,并且使用提供的关系和目标角色名称初始化它。此方法设计为仅在反序列化期间使用;并且在以下情况下此方法将引发异常:已初始化提供的 EntityReference、关系管理器已包含具有此名称和目标角色的关系或者关系管理器已附加到某一 ObjectContext。 + 关系名。 + 相关端的角色名称。 + 要初始化的 。 + 正在初始化的 的类型。 + 当提供的 已初始化时。-或-当关系管理器已附加到某一 时,或当关系管理器已包含具有此名称和目标角色的关系时。 + + + 在内部使用,用于反序列化实体对象及 实例。 + 序列化的流。 + + + 由对象服务调用,用来准备 以序列化关系进行二进制序列化。 + 说明给定序列化流的源和目标,并提供另一个调用方定义的上下文。 + + + 此类包含某一日期对象所需的公共方法。 + + + 初始化 类的新实例。 + + + 确定指定的字节数组是否包含完全相同的值。 + 如果两个数组具有相同长度且包含相同字节值,或两个数组都为 null,则为 true;否则为 false。 + 要比较的第一个字节数组值。 + 要比较的第二个字节数组。 + + + 返回数据源支持的最小日期时间值。 + 一个 值,表示数据源支持的最小日期时间值。 + + + 用于更改跟踪的公共常量名称。通过提供此定义可允许用户使用此常量,而不是对字符串进行硬编码。这有助于确保属性名称正确,并且允许在我们在查找此特定字符串的位置更快地进行比较。用户仍可以直接使用区分大小写的字符串,而不是常量,只是在比较时速度稍慢。在名称周围包括短划线 (-) 字符将确保这将不会与某一真实的数据属性冲突,因为 -EntityKey- 不是有效的标识符名称 + + + 返回当前字节值的副本。 + 当前 值的副本。 + 当前字节数组值。 + + + 返回指定属性的复杂类型。 + 属性的复杂类型对象。 + 从复杂对象继承的复杂对象。 + 复杂属性的名称,该复杂属性为复杂对象。 + 指示类型是否允许 Null 值。 + 指示类型是否已初始化。 + 正在请求的复杂对象的类型。 + + + 引发 事件。 + 已更改的属性的名称。 + + + 引发 事件。 + 更改的属性的名称。 + + + 属性已更改的通知。 + + + 属性将要更改的通知。 + + + 引发用于报告属性已更改的事件。 + 已更改的属性的名称。 + + + 引发用于报告属性更改挂起的事件。 + 更改的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + 布尔值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + 布尔值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 设置的 值。 + 正在验证的值。 + + + 确保正在为属性设置的 值有效。 + 一个已设置的 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + 正在设置的值。 + 指示属性是否可为 null。 + + + 确保正在为属性设置的 值有效。 + 正在验证的 值。 + 传入属性 setter 中的值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 对于不可为 null 的值如果值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 要检查的 值。 + 指示此属性是否允许为 null 的标志。 + 对于不可以为 null 的属性,该值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 待检查的 值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 对于不可以为 null 的属性,该值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 待检查的 值。 + 指示此属性是否允许为 null 的标志。 + 对于不可以为 null 的属性,该值为 null。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 正在设置的 值。 + 要检查的 值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 对于不可以为 null 的属性,该值为 null。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 值。 + 可以为 null 的 值。 + 要验证的属性的名称。 + + + 确保要为属性设置的 UInt16 值有效。 + 正在设置的可以为 null 的 UInt16 值。 + 可以为 null 的 UInt16 值。 + + + 确保要为属性设置的 UInt16 值有效。 + 正在设置的可以为 null 的 UInt16 值。 + 可以为 null 的 UInt16 值。 + 要验证的属性的名称。 + + + 确保要为属性设置的 UInt32 值有效。 + 正在设置的可以为 null 的 UInt32 值。 + 可以为 null 的 UInt32 值。 + + + 确保要为属性设置的 UInt32 值有效。 + 正在设置的可以为 null 的 UInt32 值。 + 可以为 null 的 UInt32 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 UInt64 值。 + 可以为 null 的 UInt64 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的可以为 null 的 UInt64 值。 + 可以为 null 的 UInt64 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保要为属性设置的单精度值有效。 + 正在设置的 值。 + + 值。 + + + 确保要为属性设置的单精度值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 验证的 值。 + 待检查的字符串值。 + 指示此属性是否允许为 null 的标志。 + + + 验证属性是否不为 null,如果为 null 则引发。 + 经过验证的属性。 + 待检查的字符串值。 + 指示此属性是否允许为 null 的标志。 + 要验证的属性的名称。 + 该字符串值对于不可以为 null 的字符串为 null。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + + + 确保正在为属性设置的 值有效。 + 正在设置的 值。 + + 值。 + 要验证的属性的名称。 + + + 设置指定属性的复杂对象。 + 从复杂对象派生的复杂类型。 + 属性的原始复杂对象(如果有)。 + 正在设置的复杂对象。 + 正在设置为复杂对象的复杂属性。 + 被替换的对象的类型。 + + + 检验复杂对象是否不为 null。 + 正在验证的复杂对象。 + 正在检验的复杂对象。 + 与 complexObject 关联的父对象上的复杂属性。 + 正在验证的复杂对象的类型。 + + + 在提交 期间出错时引发的异常。 + + + 使用默认值初始化 的新实例。 + + + 使用序列化数据初始化 类的新实例。 + 序列化或反序列化对象时所需的数据。 + 指定序列化流的源和目标的说明。 + + + 使用错误消息初始化 的新实例。 + 异常消息。 + + + 使用错误消息和内部异常初始化 的新实例。 + 异常消息。 + 内部异常。 + + + 表示事务处理程序,该程序允许在事务提交期间通过在数据库中存储事务跟踪信息,来从连接故障中正常恢复。需要使用 注册它。 + + + 使用默认 初始化 类的新实例。 + + + 初始化 类的新实例。 + 事务上下文工厂。 + + + 将新事务的跟踪信息存储到同一事务中的数据库。 + 开始事务的连接。 + 与调用关联的上下文信息。 + + + 生成数据库初始化脚本。 + 数据库初始化脚本。 + + + 删除所有事务历史记录。 + + + 异步删除所有事务历史记录。 + 表示异步操作的任务。 + + + 异步删除所有事务历史记录。 + 表示异步操作的任务。 + 取消标记。 + + + 如果引发了异常,请检查此事务的数据库,如果找不到,则会再次引发异常。否则将提交标记为成功并为将删除的事务信息进行排队。 + 已提交的事务。 + 与调用关联的上下文信息。 + + + 释放此事务对象占用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 停止跟踪已处理的事务。 + 已释放的事务。 + 与调用关联的上下文信息。 + + + 获取与 关联的 (如果存在);否则返回 null。 + 关联的 + 上下文。 + + + 获取与 关联的 (如果存在);否则返回 null。 + 关联的 + 上下文。 + + + 初始化实例的属性。 + 上下文。 + + + 初始化实例的属性。 + 上下文。 + 连接。 + + + 将指定事务添加到可从数据库中删除的事务列表 + 要从数据库中删除的事务。 + + + 删除标记为删除的事务。 + + + 如果标记为删除的事务的数目超出 ,则删除这些事务。 + 如果即使其数量未超出 仍然删除所有旧事务,则为 true;否则为 false。 + 如果使用关联执行来执行操作,则为 true;否则为 false。 + + + 异步删除标记为删除的事务。 + 表示异步操作的任务。 + + + 如果标记为删除的事务的数目超出 ,则删除这些事务。 + 表示异步操作的任务。 + 如果即使其数量未超出 仍然删除所有旧事务,则为 true;否则为 false。 + 如果使用关联执行来执行操作,则为 true;否则为 false。 + 取消标记。 + + + 异步删除标记为删除的事务。 + 表示异步操作的任务。 + 取消标记。 + + + 在清除事务日志之前获取要在上下文中执行的事务数。默认值为 20。 + 在清除事务日志之前要在上下文中执行的事务数。 + + + 停止跟踪回滚的事务。 + 已回滚的事务。 + 与调用关联的上下文信息。 + + + 获取事务上下文。 + 事务上下文。 + + + 的 ChangeTracker 方法返回以提供对与实体的更改跟踪相关的上下文的功能的访问。 + + + 检测对 POCO 实体的属性和关系所做的更改。请注意,某些类型的实体(如更改跟踪代理和派生自 的实体)会自动报告更改,并且这些类型的实体通常不需要调用 DetectChanges。另请注意,通常, 的许多方法及其相关类会自动调用 DetectChanges,这样一来,便很少需要显式调用此方法。但通常出于性能原因,可能需要使用 中的 AutoDetectChangesEnabled 标志来关闭对 DetectChanges 的自动调用。 + + + 获取此上下文跟踪的所有实体的 对象。 + 项。 + + + 获取此上下文跟踪的给定类型的所有实体的 对象。 + 项。 + 实体的类型。 + + + 指定 是否与指定的对象相同。 + 如果 与指定的对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与 关联的哈希代码。 + 关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 检查 是否正在跟踪任何新建、已删除或有更改的实体或关系,这些实体或关系将在调用 时,发送到数据库。 + 如果基础 有更改,则为 true;否则为 false。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 表示非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 集合元素的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 获取此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载此集合的所有实体。 + 如果已加载所有相关实体或 IsLoaded 已显示设置为 true,则为 true;否则为 false。 + + + 从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回将用于从数据库加载此集合的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作,例如,计算数据库中的集合中的实体数,而不实际加载这些实体。 + 针对集合的查询。 + + + 此类的实例从 的 Collection 方法返回,并且允许对实体的集合导航属性执行各种操作(如加载)。 + 此属性所属的实体的类型。 + 实体集合中的元素的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载此集合的所有实体。 + 如果加载所有相关实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + + + 异步从数据库中加载实体的集合。请注意,不会使用数据库中的值覆盖上下文中已存在的实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回由此对象表示的导航属性的非泛型 类的新实例。 + 非泛型版本。 + 表示导航属性的对象。 + + + 返回将用于从数据库加载此集合的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作,例如,计算数据库中的集合中的实体数,而不实际加载这些实体。 + 针对集合的查询。 + + + 实体数据模型 (EDM) 模型的不可变表示形式,该模型可用于创建 ,也可将该模型传递给 的构造函数。为了提高性能,应缓存和重用此类型的实例以构造上下文。 + + + 创建 ObjectContext 的实例或派生自 ObjectContext 的类的实例。请注意,可使用适当的 DbContext 构造函数来改为创建 DbContext 的实例。如果使用派生的 ObjectContext,则它必须具有带单个 EntityConnection 参数的公共构造函数。传递的连接由创建的 ObjectContext 使用,但不属于上下文。在释放上下文后,调用方必须释放连接。 + 上下文。 + 供上下文使用的数据库的现有连接。 + 要创建的上下文的类型。 + + + 非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 复杂属性的类型。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 此类的实例从 的 ComplexProperty 方法返回,并允许访问复杂属性的状态。 + 此属性所属的实体的类型。 + 属性的类型。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 表示嵌套属性的表达式。 + 嵌套属性的类型。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 获取表示此属性的嵌套复杂属性的对象。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + 嵌套属性的类型。 + + + 返回由此对象表示的属性的非泛型 类的新实例。 + 非泛型版本。 + 表示属性的对象。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 表示嵌套属性的表达式。 + 嵌套属性的类型。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + 嵌套属性的类型。 + + + 获取表示此属性的嵌套属性的对象。此方法可用于标量属性和/或复杂属性。 + 表示嵌套属性的对象。 + 嵌套属性的名称。 + + + 表示有关数据库连接的信息。 + + + 初始化表示应用程序配置文件中指定的连接的 类的新实例。 + 应用程序配置中的连接字符串的名称。 + + + 初始化基于连接字符串的 类的新实例。 + 用于连接的连接字符串。 + 用于连接的提供程序的名称。将“System.Data.SqlClient”用于 SQL Server。 + + + 确定当前 类型是否等于提供的对象类型。 + 如果当前 类型等于指定的对象类型,则为 true;否则为 false。 + 要与当前 对象进行比较的对象。 + + + 生成表示当前连接的值。 + 表示当前连接的值。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 对象转换为字符串。 + 当前驱动器。 + + + 描述与 关联的数据库连接字符串的来源。 + + + 该连接字符串是从外部配置中进行读取的。 + + + 该连接字符串是按约定创建的。 + + + 该连接字符串是由提供给 DbContextInfo 的连接信息重写的。 + + + 该连接字符串是在运行时显式指定的。 + + + 的 Configuration 方法返回以提供对上下文的配置选项的访问。 + + + 获取或设置一个值,该值指示是否通过 和相关类的方法自动调用 方法。默认值为 true。 + 如果应自动调用,则为 true;否则为 false。 + + + 获取或设置某值,该值确定是否应在事务中始终执行 SQL 函数和命令。 + 默认事务行为。 + + + 指定配置是否与指定的对象相同。 + 如果配置与指定的对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与配置关联的哈希代码。 + 与配置关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 获取或设置一个值,该值指示是否启用针对公开为导航属性的关系的延迟加载。延迟加载在默认情况下处于启用状态。 + 如果启用延迟加载,则为 true;否则为 false。 + + + 获取或设置一个值,该值指示框架在创建实体类型的实例时是否会创建动态生成的代理类的实例。请注意,即使使用此标记启用了代理创建,也只会为满足代理设置要求的实体类型创建代理实例。默认情况下启用代理创建。 + 如果启用了代理创建,则为 true;否则为 false。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 获取或设置一个值,该值指示当比较两个操作数,而它们都可能为 null 时,是否展示数据库 null 语义。默认值为 false。例如:如果 UseDatabaseNullSemantics 为 true,则 (operand1 == operand2) 将转换为 (operand1 = operand2);如果 UseDatabaseNullSemantics 为 false,则将转换为 (((operand1 = operand2) AND (NOT (operand1 IS NULL OR operand2 IS NULL))) OR ((operand1 IS NULL) AND (operand2 IS NULL)))。 + 如果启用数据库 null 比较行为,则为 true;否则为 false。 + + + 获取或设置一个值,该值指示在调用 时,是否应自动验证所跟踪的实体。默认值为 true。 + + + 提供有关给定 类型的运行时信息。 + + + 使用指定上下文类型初始化 类的新实例。 + 具体 类型。 + + + 使用指定上下文类型和配置文件初始化 类的新实例。 + 具体 类型。 + 表示配置文件的对象。 + + + 使用指定连接信息、上下文类型和配置文件初始化 类的新实例。 + 派生自 的类型。 + 表示配置文件的对象。 + 要使用的数据库的连接信息。 + + + 使用指定上下文类型、配置文件和提供程序信息初始化 类的新实例。 + 派生自 的类型。 + 表示配置文件的对象。 + 指定要面向的基础 ADO.NET 提供程序的 。 + + + 通过使用指定上下文类型和连接字符串的设置来初始化 类。 + 派生自 的类型。 + 连接字符串的集合。 + + + 使用指定上下文类型和连接信息初始化 类的新实例。 + 派生自 的类型。 + 要使用的数据库的连接信息。 + + + 使用指定上下文类型和提供程序信息初始化 类的新实例。 + 派生自 的类型。 + 指定要面向的基础 ADO.NET 提供程序的 。 + + + 获取基础 类型使用的连接的 ADO.NET 提供程序名称。 + 基础 类型使用的连接的 ADO.NET 提供程序名称。 + + + 获取基础 类型使用的连接字符串。 + 基础 类型使用的连接字符串。 + + + 获取基础 类型使用的连接字符串名称。 + 基础 类型使用的连接字符串名称。 + + + 获取基础 类型使用的连接字符串的来源。 + 基础 类型使用的连接字符串的来源。 + + + 获取具体 类型。 + 具体 类型。 + + + 创建 对象的实例。 + 已创建的实例。 + + + 获取是否可创建基础 类型。 + 如果基础 类型可创建,则为 true;否则为 false。 + + + 获取或设置在 OnModelCreating 已在上下文中运行后将对 DbModelBuilder 执行的操作。 + 在 OnModelCreating 已在上下文中运行后将对 DbModelBuilder 执行的操作。 + + + 非泛型版本的 类。 + + + 返回由此对象表示的跟踪实体的给定泛型类型的泛型 类的新实例。请注意跟踪实体的类型必须与泛型类型兼容,否则将引发异常。 + 泛型版本。 + 实体的类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 复杂属性的名称。 + + + 获取由此对象表示的跟踪实体的当前属性值。 + 当前值。 + + + 获取实体。 + 实体。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 在数据库中查询跟踪实体的值的副本,因为当前它们位于数据库中。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + 等待任务完成期间要观察的 。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码,适合在哈希算法和类似哈希表的数据结构中使用。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此 实例并返回验证结果。 + 实体验证结果。如果重写 方法,则可能为 Null。 + + + 获取表示实体成员的对象。返回的对象的运行时类型将随要求的成员类型的不同而不同。当前支持的成员类型及其返回类型为:引用导航属性:.集合导航属性:.基元/标量属性:.复杂属性: + 表示成员的对象。 + 成员名。 + + + 获取由此对象表示的跟踪实体的原始属性值。原始值通常是实体的属性值,就像上次从数据库查询这些值一样。 + 原始值。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 属性的名称。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取或设置实体的状态。 + 状态。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 此类的实例提供对有关由 跟踪的实体的信息和控制的访问权。使用上下文的 Entity 或 Entities 方法来获取此类型的对象。 + 实体的类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 表示导航属性的表达式。 + 集合中的元素类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + 集合中的元素类型。 + + + 获取一个对象,该对象表示从该实体到相关实体集合的集合导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 表示复杂属性的表达式。 + 复杂属性的类型。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 复杂属性的名称。 + 复杂属性的类型。 + + + 获取一个对象,此对象表示该实体的复杂属性。 + 表示复杂属性的对象。 + 复杂属性的名称。 + + + 获取由此对象表示的跟踪实体的当前属性值。 + 当前值。 + + + 获取实体。 + 实体。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 确定指定的 是否等于此实例。如果两个 实例都是同一 上的同一实体的项,则将这两个实例视为相等。 + 如果指定的 等于此实例,则为 true;否则为 false。 + 要与此实例进行比较的 。 + + + 在数据库中查询跟踪实体的值的副本,因为当前它们位于数据库中。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + + + 跟踪的实体当前位于数据库中时,在数据库中异步查询这些实体的值的副本。请注意更改返回的字典中的值将不会更新数据库中的值。如果未在数据库中找到实体,则返回 null。 + 表示异步操作的任务。任务结果包含存储值。 + 等待任务完成期间要观察的 。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码,适合在哈希算法和类似哈希表的数据结构中使用。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此 实例并返回验证结果。 + 实体验证结果。如果重写 方法,则可能为 Null。 + + + 获取表示实体成员的对象。返回的对象的运行时类型将随要求的成员类型的不同而不同。当前支持的成员类型及其返回类型为:引用导航属性:.集合导航属性:.基元/标量属性:.复杂属性: + 表示成员的对象。 + 成员名。 + 成员的类型。 + + + 获取表示实体成员的对象。返回的对象的运行时类型将随要求的成员类型的不同而不同。当前支持的成员类型及其返回类型为:引用导航属性:.集合导航属性:.基元/标量属性:.复杂属性: + 表示成员的对象。 + 成员名。 + + + 返回此对象所表示跟踪实体的非泛型 类的新实例。 + 非泛型版本。 + 表示跟踪实体的对象。 + + + 获取由此对象表示的跟踪实体的原始属性值。原始值通常是实体的属性值,就像上次从数据库查询这些值一样。 + 原始值。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 表示属性的表达式。 + 属性的类型。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 属性的名称。 + + + 获取一个对象,此对象表示该实体的标量属性或复杂属性。 + 表示属性的对象。 + 属性的名称。 + 属性的类型。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 表示导航属性的表达式。 + 属性的类型。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + + + 获取一个对象,该对象表示从该实体到其他实体的引用(即非集合)导航属性。 + 表示导航属性的对象。 + 导航属性的名称。 + 属性的类型。 + + + 从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + + + 异步从数据库重新加载该实体时会用数据库中的值覆盖任何属性值。调用此方法后,该实体将处于“未更改”状态。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取或设置实体的状态。 + 状态。 + + + 返回数据库实体值的字符串表示形式。 + 数据库实体值的字符串表示形式。 + + + 为在两次重试之间使用以指数形式增长的延迟时间的不可靠操作和瞬时条件提供重试机制的基实现。 + + + 初始化 类的新实例。 + + + 使用指定的重试次数限制值和两次重试之间的延迟时间初始化 类的新实例。 + 最大重试次数。 + 两次重试之间的最大延迟时间(毫秒)。 + + + 在指定操作满足当前重试策略时重复执行此操作。 + 一个表示不返回任何结果的可执行操作的委托。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 在指定操作满足当前重试策略时重复执行此操作。 + 操作的结果。 + 一个表示返回 类型的结果的可执行操作的委托。 + 从可执行操作预期获得的结果类型。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 在指定异步操作满足当前重试策略时重复执行此操作。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回 类型的已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + 返回的 的结果类型。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 在指定异步操作满足当前重试策略时重复执行此操作。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + 如果重试延迟策略确定不应再重试操作。 + 如果检测到现有事务且执行策略不支持它。 + 如果此实例已用于执行某个操作。 + + + 确定是否应重试操作以及在下次重试前的延迟时间。 + 如果应重试操作,则返回一个延迟值,它指示在下一次执行尝试前要等待多长时间;否则返回 null。 + 在最后一次执行尝试期间引发的异常。 + + + 获取一个值,该值指示此 在失败后是否可能重试执行。 + 如果 在失败后可能重试执行,则为 true;否则为 false。 + + + 确定指定的异常是否表示可以通过重试解决的瞬态失败。 + 如果指定异常视为瞬态的,则为 true;否则为 false。 + 要验证的异常对象。 + + + 只要它是 ,就以递归方式从 获取 InnerException,并将其传递给 + + 的结果。 + 要取消包装的异常。 + 一个将使用未包装的异常调用的委托。 + 未包装异常的类型。 + + + 这是一个抽象基类,用于表示实体的标量/复杂属性或导航属性。标量和复杂属性使用派生类 ,引用导航属性使用派生类 ,而集合导航属性使用派生类 + + + 初始化 类的新实例。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 属性的类型。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此成员所属的 + 拥有此成员的实体的项。 + + + 确定指定的项是否等于当前项。 + 如果指定的项等于当前项,则为 true;否则为 false。 + 要与当前项进行比较的对象。 + + + 返回此项的哈希函数。 + 此项的哈希函数。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此属性。 + + 对象的集合。绝不会为 null。如果实体有效,则集合将为空。 + + + 获取属性的名称。 + 属性名称。 + + + 返回数据库属性值的字符串表示形式。 + 数据库属性值的字符串表示形式。 + + + 这是一个抽象基类,用于表示实体的标量/复杂属性或导航属性。标量和复杂属性使用派生类 ,引用导航属性使用派生类 ,而集合导航属性使用派生类 + 此属性所属的实体的类型。 + 属性的类型。 + + + 初始化 类的新实例。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此成员所属的 + 拥有此成员的实体的项。 + + + 指定对象是否等于指定的对象。 + 如果对象等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与对象关联的哈希代码。 + 与对象关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 验证此属性。 + + 对象的集合。绝不会为 null。如果实体有效,则集合将为空。 + + + 获取属性的名称。 + 属性的名称。 + + + 返回由此对象表示的属性的非泛型 类的新实例。 + 非泛型版本。 + 表示属性的对象。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 表示由 创建的实体数据模型 (EDM)。Compile 方法,可用来从此 EDM 的表示形式转换到 ,后者是适合缓存和创建 实例的模型的编译快照。 + + + 为此模式创建 ,它是适合缓存和创建 实例的编译快照。 + 已编译的模型。 + + + 获取概念模型。 + + + 获取映射模型。 + + + 获取提供程序信息。 + + + 获取提供程序清单。 + + + 获取存储模型。 + + + 非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 属性的类型。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此属性所属的 + 拥有此属性的实体的项。 + + + 获取或设置一个值,该值指示是否在从数据库加载此属性的值后修改了该值。 + 如果修改此实例,则为 true;否则为 false。 + + + 获取属性名称。 + 属性名称。 + + + 获取或设置此属性的原始值。 + 原始值。 + + + 此属性嵌套在其中的属性的 。此方法仅为复杂对象的属性返回非 null 项;它将为实体本身的属性返回 null。 + 父复杂属性的项,如果这是一个实体属性,则为 null。 + + + 此类的实例从 的 Property 方法返回,并允许访问标量属性或复杂属性。 + 此属性所属的实体的类型。 + 属性的类型。 + + + 获取或设置此属性的当前值。 + 当前值。 + + + 此属性所属的 + 拥有此属性的实体的项。 + + + 获取或设置一个值,该值指示是否在从数据库加载此属性的值后修改了该值。 + 如果修改此实例,则为 true;否则为 false。 + + + 获取属性名称。 + 属性名称。 + + + 返回由此对象表示的属性的非泛型 类的新实例。 + 非泛型版本。 + 表示属性的对象。 + + + 获取或设置此属性的原始值。 + 原始值。 + + + 此属性嵌套在其中的属性的 。此方法仅为复杂对象的属性返回非 null 项;它将为实体本身的属性返回 null。 + 父复杂属性的项,如果这是一个实体属性,则为 null。 + + + 基础实体或复杂对象的所有属性的集合。 + + + 创建一个包含此字典中所有属性的副本的新字典。对新字典所做的更改不会反映在此字典中,反之亦然。 + 此字典的副本。 + + + 指定 是否等于特定对象。 + 如果 等于特定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与属性值关联的哈希代码。 + 与属性值关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 获取属性的值,正如使用索引属性 getter 但将类型设置为泛型参数的类型一样。这在使用嵌套字典以避免编写包含大量强制转换的表达式时特别有用。 + 属性的值。 + 属性的名称。 + 属性的类型。 + + + 获取或设置带指定属性名称的属性的值。该值可能为此类的嵌套实例。 + 属性的值。 + + + 获取作为只读集的此字典中所有属性的名称集。 + 属性名称。 + + + 通过从其他字典中读取值来设置此字典的值。另一个字典必须基于与此字典相同的类型,或基于此字典的类型所派生的类型。 + 从中读取值的字典。 + + + 通过从给定对象中读取值来设置此字典的值。给定对象可以是任何类型。如果对象具有任何与字典中的属性名称匹配且可读取的名称的属性,则将读取这些属性。其他属性将被忽略。例如,这样便能从简单的数据传输对象 (DTO) 中复制属性。 + 从中读取值的对象。 + + + 为此字典创建一个基础类型对象,并使用此字典中的属性值冻结该对象。 + 已复制到新对象中的此字典的属性。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 分组一对字符串,它们将提供程序和服务器版本一起标识为一个对象。 + + + 为给定的提供程序固定名称和清单标记创建一个新对象。 + 标识该提供程序的字符串。例如,SQL Server 提供程序使用字符串“System.Data.SqlCient”。 + 标识正在使用的数据库服务器版本的字符串。例如,SQL Server 提供程序对 SQL Server 2008 使用字符串“2008”。此值不能为 null 但可以为空。清单标记有时也称为版本提示。 + + + 确定指定的对象是否等于此当前对象。 + 如果指定的对象等于此当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 获取此当前对象的哈希函数。 + 此当前对象的哈希函数。 + + + 标识该提供程序的字符串。例如,SQL Server 提供程序使用字符串“System.Data.SqlCient”。 + + + 标识正在使用的数据库服务器版本的字符串。例如,SQL Server 提供程序对 SQL Server 2008 使用字符串“2008”。此值不能为 null 但可以为空。 + + + 表示针对 DbContext 的非泛型 LINQ to Entities 查询。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 返回等效泛型 对象。 + 泛型集对象。 + 已为其创建查询的元素的类型。 + + + IQueryable 元素类型。 + + + 指定查询是否等于指定的对象。 + 如果查询等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与查询关联的哈希代码。 + 与查询关联的哈希代码。 + + + 获取与查询关联的类型。 + 与查询关联的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 DbQuery&lt;T&gt;,它具有所定义的查询路径。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。相反,用数据填充 DbSet,例如,使用 Load 扩展方法,然后绑定到本地数据。对于 WPF,绑定到 DbSet.Local。对于 Windows 窗体,则绑定到 DbSet.Local.ToBindingList()。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + IQueryable LINQ 表达式。 + + + IQueryable 提供程序。 + + + 返回基础查询的 表示形式。 + 查询字符串。 + + + 表示针对 DbContext 的 LINQ to Entities 查询。 + 要查询的实体的类型。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 确定当前查询是否等于指定的查询。 + 如果当前查询等于指定的查询,则为 true;否则为 false。 + 要与当前查询进行比较的对象。 + + + 返回此查询的哈希函数。 + 此查询的哈希函数。 + + + 获取当前查询的类型。 + 当前查询的类型。 + + + 指定要包括在查询结果中的相关对象。 + 一个新的 ,它具有定义的查询路径。 + 要在查询结果中返回的相关对象列表(以点号分隔)。 + + + 返回此查询的非泛型 类的新实例。 + 非泛型版本。 + 查询。 + + + 获取此查询的枚举会导致对存储区执行此查询。 + 查询的 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。相反,用数据填充 DbSet,例如,使用 Load 扩展方法,然后绑定到本地数据。对于 WPF,绑定到 DbSet.Local。对于 Windows 窗体,则绑定到 DbSet.Local.ToBindingList()。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + 返回 ,其枚举的对象将针对数据库执行查询。 + 查询结果。 + + + IQueryable 元素类型。 + + + IQueryable LINQ 表达式。 + + + IQueryable 提供程序。 + + + 返回基础查询的 表示形式。 + 查询字符串。 + + + 表示非实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。实体的 SQL 查询是使用 创建的。请参见 了解此类的泛型版本。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 指定查询是否等于指定的对象。 + 如果查询等于指定的对象,则为 true;否则为 false。 + 要比较的对象。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要对每个元素执行的操作。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要对每个元素执行的操作。 + 等待任务完成期间要观察的 。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 获取与查询关联的哈希代码。 + 与查询关联的哈希代码。 + + + 获取与查询关联的类型。 + 与查询关联的类型。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含查询的元素。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含查询的元素。 + 等待任务完成期间要观察的 。 + + + 返回一个包含 SQL 字符串的 ,该字符串是在创建查询时设置的。不包括参数。 + 表示此实例的 + + + 表示非实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。实体的 SQL 查询是使用 创建的。请参见 了解此类的非泛型版本。 + 查询所返回元素的类型。 + + + 异步确定查询的所有元素是否满足条件。 + 表示异步操作的任务。如果查询结果的每个元素都通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + + + 异步确定查询的所有元素是否满足条件。 + 表示异步操作的任务。如果查询结果的每个元素都通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + + + 异步确定查询是否包含任何元素。 + 表示异步操作的任务。如果查询结果包含任何元素,则任务结果包含 true;否则包含 false。 + + + 异步确定查询的任何元素是否满足条件。 + 表示异步操作的任务。如果查询结果的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + + + 异步确定查询的任何元素是否满足条件。 + 表示异步操作的任务。如果查询结果的任何元素通过指定谓词中的测试,则任务结果包含 true;否则包含 false。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + + 异步确定查询是否包含任何元素。 + 表示异步操作的任务。如果查询结果包含任何元素,则任务结果包含 true;否则包含 false。 + 等待任务完成期间要观察的 。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 通过使用默认的相等比较器异步确定查询是否包含指定的元素。 + 表示异步操作的任务。如果查询结果包含指定的值,则任务结果包含 true;否则包含 false。 + 要在查询结果中查找的对象。 + + + 通过使用默认的相等比较器异步确定查询是否包含指定的元素。 + 表示异步操作的任务。如果查询结果包含指定的值,则任务结果包含 true;否则包含 false。 + 要在查询结果中查找的对象。 + 等待任务完成期间要观察的 。 + + + 异步返回查询中的元素数。 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 查询结果中的元素数大于 + + + 异步返回满足条件的查询中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回满足条件的查询中的元素数。 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回查询中的元素数。 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 等待任务完成期间要观察的 。 + 查询结果中的元素数大于 + + + 确定当前查询是否等于指定的查询。 + 如果当前查询等于指定的查询,则为 true;否则为 false。 + 要与当前查询进行比较的查询。 + + + 异步返回查询的第一个元素。 + 表示异步操作的任务。任务结果包含查询结果中的第一个元素。 + 查询结果为空。 + + + 异步返回满足指定条件的查询的第一个元素。 + 表示异步操作的任务。任务结果包含满足指定条件的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + 查询结果为空。 + + + 异步返回满足指定条件的查询的第一个元素。 + 表示异步操作的任务。任务结果包含满足指定条件的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + 查询结果为空。 + + + 异步返回查询的第一个元素。 + 表示异步操作的任务。任务结果包含查询结果中的第一个元素。 + 等待任务完成期间要观察的 。 + 查询结果为空。 + + + 异步返回查询的第一个元素;如果查询结果不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空,则任务结果包含 default ();否则包含查询结果中的第一个元素。 + + + 异步返回满足指定条件的查询的第一个元素;如果未找到这样的元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + + + 异步返回满足指定条件的查询的第一个元素;如果未找到这样的元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空或没有元素通过 所指定的测试,则任务结果包含 default ();否则它包含通过 所指定的测试的查询结果中的第一个元素。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + + + 异步返回查询的第一个元素;如果查询结果不包含任何元素,则返回默认值。 + 表示异步操作的任务。如果查询结果为空,则任务结果包含 default ();否则包含查询结果中的第一个元素。 + 等待任务完成期间要观察的 。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要执行的操作。 + + + 异步枚举查询结果并对每个元素执行指定的操作。 + 表示异步操作的任务。 + 要执行的操作。 + 等待任务完成期间要观察的 。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 返回此查询的哈希函数。 + 此查询的哈希函数。 + + + 获取当前查询的类型。 + 当前查询的类型。 + + + 异步返回表示查询中的总元素数的 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 查询结果中的元素数大于 + + + 异步返回表示满足条件的查询中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回表示满足条件的查询中元素数的 + 表示异步操作的任务。任务结果包含满足谓词函数中的条件的查询结果中的元素数。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + 满足谓词函数中的条件的查询结果中的元素数大于 + + + 异步返回表示查询中的总元素数的 + 表示异步操作的任务。任务结果包含查询结果中的元素数。 + 等待任务完成期间要观察的 。 + 查询结果中的元素数大于 + + + 异步返回查询的最大值。 + 表示异步操作的任务。任务结果包含查询结果中的最大值。 + + + 异步返回查询的最大值。 + 表示异步操作的任务。任务结果包含查询结果中的最大值。 + 等待任务完成期间要观察的 。 + + + 异步返回查询的最小值。 + 表示异步操作的任务。任务结果包含查询结果中的最小值。 + + + 异步返回查询的最小值。 + 表示异步操作的任务。任务结果包含查询结果中的最小值。 + 等待任务完成期间要观察的 。 + + + 异步返回查询的唯一元素;如果该查询结果并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素。 + 查询结果有多个元素。 + 查询结果为空。 + + + 异步返回满足指定条件的查询的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回满足指定条件的查询的唯一元素;如果有多个这样的元素,则引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + 没有元素满足 中的条件。 + 多个元素满足 中的条件。 + + + 异步返回查询的唯一元素;如果该查询结果并非恰好包含一个元素,则引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素。 + 等待任务完成期间要观察的 。 + 查询结果有多个元素。 + 查询结果为空。 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 查询结果有多个元素。 + + + 异步返回满足指定条件的查询的唯一元素;如果这类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素;如果没有找到这样的元素,则任务结果包含 default ()。 + 用于测试每个元素是否满足条件的函数。 + + 为 null。 + 多个元素满足 中的条件。 + + + 异步返回满足指定条件的查询的唯一元素;如果这类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。 + 表示异步操作的任务。任务结果包含满足 中条件的查询结果的单个元素;如果没有找到这样的元素,则任务结果包含 default ()。 + 用于测试每个元素是否满足条件的函数。 + 等待任务完成期间要观察的 。 + + 为 null。 + 多个元素满足 中的条件。 + + + 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。 + 表示异步操作的任务。任务结果包含查询结果的单个元素;如果该序列不包含元素,则任务结果包含 default ()。 + 等待任务完成期间要观察的 。 + 查询结果有多个元素。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 返回 false。 + false . + + + 引发一个异常,该异常指示不支持直接绑定到存储查询。 + 决不返回;总是引发。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 返回 ,其枚举的对象将针对数据库执行 SQL 查询。 + 一个 对象,可用于循环访问元素。 + + + 通过异步枚举从查询创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + + + 通过异步枚举从查询创建数组。 + 表示异步操作的任务。任务结果包含一个数组,该数组包含输入序列的元素。 + 等待任务完成期间要观察的 。 + + + 通过异步枚举它根据指定的键选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + + 返回的键类型。 + + + 通过异步枚举它根据指定的键选择器函数和比较器从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + + 返回的键类型。 + + + 通过异步枚举它根据指定的键选择器函数和比较器从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + + 通过异步枚举它根据指定的键选择器函数和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从查询选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数、比较器和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数、比较器和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从输入序列选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 一个用于比较键的 。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数和元素选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含从查询选择的类型 的值。 + 用于从每个元素中提取键的函数。 + 用于从每个元素产生结果元素值的转换函数。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + 返回的值的类型。 + + + 通过异步枚举它根据指定的键选择器函数从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含所选的键和值。 + 用于从每个元素中提取键的函数。 + 等待任务完成期间要观察的 。 + + 返回的键类型。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + + + 通过异步枚举它从查询创建 + 表示异步操作的任务。任务结果包含一个 ,后者包含输入序列的元素。 + 等待任务完成期间要观察的 。 + + + 返回一个包含 SQL 字符串的 ,该字符串是在创建查询时设置的。不包括参数。 + 表示此实例的 + + + 非泛型版本的 类。 + + + 返回等效泛型 对象。 + 等效泛型对象。 + 在其上声明该成员的实体的类型。 + 属性的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载该实体。 + 如果加载了该实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 从数据库加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回将用于从数据库加载此实体的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作。 + 针对实体的查询。 + + + 此类的实例从 的 Reference 方法返回,并且允许对实体的引用导航属性执行各种操作(如加载)。 + 此属性所属的实体的类型。 + 属性的类型。 + + + 获取或设置导航属性的当前值。当前值为导航属性引用的实体。 + 当前值。 + + + 此导航属性所属的 + 拥有此导航属性的实体的项。 + + + 获取或设置一个值,该值指示是否已从数据库加载该实体。 + 如果加载了该实体或 IsLoaded 已显式设置为 true,则为 true;否则为 false。 + + + 从数据库加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + + + 从数据库异步加载实体。请注意,如果实体已在上下文中,则不会使用数据库中的值覆盖该实体。 + 表示异步操作的任务。 + 等待任务完成期间要观察的 。 + + + 获取属性名称。 + 属性名称。 + + + 返回由此对象表示的导航属性的非泛型 类的新实例。 + 非泛型版本。 + 表示导航属性的对象。 + + + 返回将用于从数据库加载此实体的查询。可使用 LINQ 修改返回的查询以便在数据库中执行筛选或操作。 + 针对实体的查询。 + + + 表示实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从该实体类型的 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。非实体的 SQL 查询是使用 创建的。请参见 了解此类的泛型版本。 + + + 从派生类的构造函数中进行调用时,创建一个 实例,它将用作 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking 和 AsStreaming,它们的默认实现是空操作。 + + + 返回一个新查询,其中查询的结果将不由关联的 跟踪。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要与当前实例进行比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取与查询关联的类型。 + 与查询关联的类型。 + + + 返回一个包含 SQL 字符串的 ,该字符串是在创建查询时设置的。不包括参数。 + 表示此实例的 + + + 表示实体的一个 SQL 查询,该查询从 创建并通过该上下文中的连接来执行。此类的实例是从该实体类型的 实例中获取的。创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。非实体的 SQL 查询是使用 创建的。请参见 了解此类的非泛型版本。 + 查询所返回实体的类型。 + + + 从派生类的构造函数中进行调用时,创建一个 实例,它将用作 的测试替身。将由测试替身使用的方法和属性必须由测试替身来实现,除了 AsNoTracking 和 AsStreaming,它们的默认实现是空操作。 + + + 返回一个新查询,其中返回的实体将不会在 中进行缓存。 + 应用了 NoTracking 的新查询。 + + + 返回将流式处理结果而非缓存它的新查询。 + 应用了 AsStreaming 的新查询。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取与此实例关联的类型。 + 与此实例关联的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 当预期实体的 SaveChanges 将导致数据库更新而实际上未影响数据库中的任何行时 引发的异常。这通常指示,当前已并发更新数据库,使得应匹配的并发标记实际上并不匹配。请注意为了安全起见,不会序列化此异常引用的状态项,并且在序列化后对状态项的访问将返回 null。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 消息。 + + + 初始化 类的新实例。 + 消息。 + 内部异常。 + + + 将更改保存到数据库失败时,由 引发的异常。请注意为了安全起见,不会序列化此异常引用的状态项,并且在序列化后对状态项的访问将返回 null。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 消息。 + + + 初始化 类的新实例。 + 消息。 + 内部异常。 + + + 获取表示无法保存到数据库的实体的 对象。 + 表示无法保存的实体的项。 + + + 表示如果失败不重试操作的默认 + + + 初始化 类的新实例。 + + + 执行一次指定的操作。 + 一个表示不返回任何结果的可执行操作的委托。 + + + 执行一次指定的操作并返回结果。 + 操作的结果。 + 一个表示返回 类型的结果的可执行操作的委托。 + + 的返回类型。 + + + 执行一次指定的异步操作,失败时不重试。 + 如果原始任务成功完成将要运行以完成的任务。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + 返回的 的结果类型。 + + + 执行一次指定的异步操作,失败时不重试。 + 如果原始任务成功完成将要运行以完成的任务。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + + 获取 在失败后是否将重试执行。 + 如果 在失败后将重试执行,则为 true;否则为 false。 + + + 表示使用基础提供程序以获取清单标记的 的默认实现。请注意,为避免多个查询,此实现基于 实例的实际类型、 属性和 属性使用缓存。 + + + 初始化 类的新实例。 + + + 返回要用于给定连接的清单标记。 + 要使用的清单标记。 + 需要清单标记的连接。 + + + 表示用于存储有关数据库中 EDM 的元数据的实体。 + + + 初始化 类的新实例。 + + + 获取或设置元数据实体的 ID,它当前总是为 1。 + ID。 + + + 获取或设置模型哈希,用于检查自从模型中创建数据库后,模型是否发生了更改。 + 模型哈希。 + + + 尝试为给定上下文获取 Code First 计算的模型哈希。如果未在 Code First 模式中使用上下文,则此方法将返回 null。 + 哈希字符串。 + 上下文。 + + + 包含用于访问由 Code First 创建的 EDMX 格式的实体数据模型的方法。通常,在需要查看 Code First 内部创建的模型时,这些方法将用于调试。 + + + 将 Code First 用于给定上下文,然后以 EDMX 形式将生成的实体数据模型写入给定编写器。此方法只能用于使用 Code First 且内部创建模型的上下文实例。此方法不能用于使用 Database First 或 Model First 创建的上下文、使用预先存在的 创建的上下文或使用预先存在的 创建的上下文。 + 上下文。 + 编写器。 + + + 将给定的 表示的实体数据模型以 EDMX 形式写入给定编写器。 + 表示 EDM 的对象。 + 编写器。 + + + 一个用于解析 的键。它包含 ADO.NET 提供程序固定名称和在连接字符串中指定的数据库服务器名称。 + + + 初始化 的新实例。 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + 确定指定的对象是否等于此键。 + 如果指定的对象等于此键,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + + + 将与连接字符串中的服务器名称进行匹配的字符串。 + + + + 接口的异步版本,它允许异步检索元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + + + 获取一个枚举器,它可用于异步枚举序列。 + 用于对序列异步枚举的枚举器。 + + + + 接口的异步版本,它允许异步检索可枚举序列的元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + 要枚举的对象的类型。此类型参数是协变。即可以使用指定的类型或派生程度更高的类型。 有关协变和逆变的详细信息,请参阅。 + + + 获取一个枚举器,它可用于异步枚举序列。 + 用于对序列异步枚举的枚举器。 + + + + 接口的异步版本,它允许异步检索元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + + + 获取迭代中的当前元素。 + + + 将枚举器前移到序列中的下一个元素,异步返回结果。 + 表示异步操作的任务。如果枚举器成功前移到下一个元素,则任务结果包含 true;如果枚举器已过序列末尾,则包含 false。 + 等待任务完成期间要观察的 。 + + + + 接口的异步版本,它允许异步检索元素。此接口用于与实体框架查询交互且不应由自定义类来实现。 + 要枚举的对象的类型。此类型参数是协变。即可以使用指定的类型或派生程度更高的类型。 有关协变和逆变的详细信息,请参阅。 + + + 获取迭代中的当前元素。 + + + 定义用于创建和异步执行 对象所描述的查询的方法。此接口用于与实体框架查询交互且不应由自定义类来实现。 + + + 异步执行指定表达式树所表示的强类型查询。 + 表示异步操作的任务。任务结果包含执行指定查询所生成的值。 + 表示 LINQ 查询的表达式树。 + 等待任务完成期间要观察的 。 + 执行查询所生成的值的类型。 + + + 异步执行指定表达式树所表示的查询。 + 表示异步操作的任务。任务结果包含执行指定查询所生成的值。 + 表示 LINQ 查询的表达式树。 + 等待任务完成期间要观察的 。 + + + 此接口的实现用来基于给定的数据库名称创建某个数据库服务器类型的 DbConnection 对象。默认情况下,可在 类上设置一个实例以便创建所有 DbContext 对象(不具有连接信息或只有数据库名称或连接字符串)以使用特定类型的数据库服务器。提供此接口的两种实现: 用于创建与速成版等 Microsoft SQL Server 的连接。 用于创建与 Microsoft SQL Server Compact Edition 的连接。可根据需要添加其他数据库服务器的其他实现。请注意实现应视为是线程安全的或不可变的,因为实现可同时被多个线程访问。 + + + 基于给定的数据库名称或连接字符串创建连接。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 用于创建派生 实例的工厂。实现此接口可为没有公共默认构造函数的上下文类型启用设计时服务。在设计时,可以创建派生的 实例,以启用特定设计时体验,如模型呈现和 DDL 生成。要为没有公共默认构造函数的派生 启用设计时实例化,请实现此接口。设计时服务将自动发现与派生 类型位于同一程序集中的此接口的实现。 + 上下文的类型。此类型参数是协变。即可以使用指定的类型或派生程度更高的类型。 有关协变和逆变的详细信息,请参阅。 + + + 创建派生 类型的新实例。 + TContext 的一个实例 + + + 用于对数据库执行命令或查询的策略,可能具有在失败时进行重试的逻辑。 + + + 执行指定的操作。 + 一个表示不返回任何结果的可执行操作的委托。 + + + 执行指定的操作并返回结果。 + 操作的结果。 + 一个表示返回 类型的结果的可执行操作的委托。 + + 的返回类型。 + + + 执行指定的异步操作并返回结果。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回 类型的已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + 返回的 的结果类型。 + + + 执行指定的异步操作。 + 如果原始任务成功完成(第一次执行或在瞬态失败后重试)将要运行以完成的任务。如果任务失败且发生非瞬态错误或达到重试限制值,则返回的任务将出错且必须显示异常。 + 用于返回已启动任务的函数。 + 用于取消重试操作的取消标记,但是不取消已在执行中或已成功完成的操作。 + + + 指示此 在失败后是否可能重试执行。 + + + 表示一个键值,它唯一地标识已加载到内存中的实体框架模型。 + + + 确定当前缓存的模型键是否等于指定的缓存模型键。 + 如果当前缓存的模型键等于指定的缓存模型键,则为 true;否则为 false。 + 要与当前缓存的模型键比较的缓存模型键。 + + + 返回此缓存模型键的哈希函数。 + 此缓存模型键的哈希函数。 + + + 对您的上下文实现此接口,使用自定义逻辑来计算在缓存中查找已创建模型时所用的键。此接口允许您具有可与同一 AppDomain 中不同模型一起使用的单个上下文类型,或是具有使用同一模型的多个上下文类型。 + + + 获取与提供程序关联的缓存键。 + 与提供程序关联的缓存键。 + + + 用于从给定的 获取正确的 的服务。 + + + 返回给定连接的 + 连接的提供程序工厂。 + 连接。 + + + 用于获取给定连接的提供程序清单标记的服务。默认情况下使用 类并利用基础提供程序来获取通常涉及打开连接的标记。通过将 添加到可能使用连接中的任何信息来返回标记的 ,可以改用其他实现。例如,如果已知连接指向 SQL Server 2008 数据库,则可以返回“2008”而无需打开连接。 + + + 返回要用于给定连接的清单标记。 + 要使用的清单标记。 + 需要清单标记的连接。 + + + 实现此接口以允许由 实例表示的自定义注释序列化为 EDMX XML 以及从 EDMX XML 进行序列化。通常,使用 方法设置序列化程序实例。 + + + 将给定字符串反序列化为预期的注释值。 + 反序列化的注释值。 + 要反序列化的注释的名称。 + 要反序列化的字符串。 + + + 将给定注释值序列化为要存储在 EDMX XML 中的字符串。 + 序列化值。 + 要序列化的注释的名称。 + 要序列化的值。 + + + 约定将导致 DbModelBuilder 在生成模型时包含有关该模型的元数据。当 按约定创建模型时,它会将此约定添加到由 DbModelBuilder 使用的项的列表中。如果使用 DbContext 创建数据库,则会导致将模型元数据写入数据库中。然后,可使用它来快速检查自上次对数据库使用模型后,模型是否发生了更改。可通过重写派生 DbContext 类的 OnModelCreating 方法,从 约定中移除此约定。 + + + 初始化 类的新实例。 + + + 由可提供 实例的对象实现的接口。 类实现此接口以提供对基础 ObjectContext 的访问。 + + + 获取对象上下文。 + 对象上下文。 + + + 解析提供程序固定名称时由 使用。 + + + 获取提供程序的名称。 + 提供程序的名称。 + + + 此类的实例用来基于给定的数据库名称或连接字符串创建 SQL Server LocalDb 的 DbConnection 对象。 + + + 为给定版本的 LocalDb 创建连接工厂的新实例。对于 SQL Server 2012 LocalDb,请使用“v11.0”。对于 SQL Server 2014 及更高版本 LocalDb,请使用“mssqllocaldb”。 + 要使用的 LocalDb 版本。 + + + 为给定版本的 LocalDb 创建连接工厂的新实例。对于 SQL Server 2012 LocalDb,请使用“v11.0”。对于 SQL Server 2014 及更高版本 LocalDb,请使用“mssqllocaldb”。 + 要使用的 LocalDb 版本。 + 用于“初始目录”、“数据源”和“AttachDbFilename”之外的数据库选项的连接字符串。调用 CreateConnection 时,将基于数据库名称在此字符串前添加“初始目录”和“AttachDbFilename”。将基于 LocalDbVersion 参数设置“数据源”。 + + + 用于“初始目录”、“数据源”和“AttachDbFilename”之外的数据库选项的连接字符串。调用 CreateConnection 时,将基于数据库名称在此字符串前添加“初始目录”和“AttachDbFilename”。将基于 LocalDbVersion 参数设置“数据源”。默认值为“Integrated Security=True;”。 + + + 基于给定的数据库名称或连接字符串为 SQL Server LocalDb 创建连接。如果给定的字符串包含“=”字符,则将其视为一个完整的连接字符串,否则仅将其视为数据库名称。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 约定将派生的 类的名称用作由 Code First 生成的概念模型的容器。 + + + 将此约定应用到给定的模型。 + 要将约定应用到的容器。 + 模型。 + + + 约定将派生的 类的命名空间用作由 Code First 生成的概念模型的命名空间。 + + + 使用引用相等性比较对象。 + + + 初始化 类的新实例。 + + + 获取默认实例。 + 默认实例。 + + + 确定指定对象实例是否相等。 + 如果对象相等,则为 true;否则为 false。 + 第一个要比较的对象。 + 第二个要比较的对象。 + + + 获取指定对象的哈希代码。 + 指定对象的哈希代码。 + 对象。 + + + 此类的实例用于内部创建 的常量表达式,这些表达式将插入表达式树中以替换对 的引用。 + 元素的类型。 + + + LINQ 表达式树中应有的公共属性。 + 查询。 + + + 当操作重试了配置的次数后再次失败时引发的异常。 + + + 使用无错误消息初始化 类的新实例。 + + + 使用指定的错误消息初始化 类的新实例。 + 描述错误的消息。 + + + 初始化 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常。 + + + 此类的实例用来基于给定的数据库名称或连接字符串创建 SQL Server Compact Edition 的 DbConnection 对象。 + + + 使用空的(默认)DatabaseDirectory 和 BaseConnectionString 属性创建新的连接工厂。 + 应使用指定 SQL Server Compact Edition 版本的提供程序固定名称。 + + + 使用给定的 DatabaseDirectory 和 BaseConnectionString 属性创建新的连接工厂。 + 应使用指定 SQL Server Compact Edition 版本的提供程序固定名称。 + 用于添加到数据库名称前面的路径,SQL Server Compact Edition 在创建或读取数据库文件时将使用它来构成文件名。空字符串意味着 SQL Server Compact Edition 将其默认位置用作数据库文件位置。 + 要用于“数据源”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置数据源。 + + + 要用于“数据源”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置数据源。默认值为空字符串,即表示不使用任何其他选项。 + + + 基于给定的数据库名称或连接字符串为 SQL Server Compact Edition 创建连接。如果给定的字符串包含“=”字符,则将其视为一个完整的连接字符串,否则仅将其视为数据库名称。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 用于添加到数据库名称前面的路径,SQL Server Compact Edition 在创建或读取数据库文件时将使用它来构成文件名。默认值为“|DataDirectory|”,即表示文件将放置在指定的数据目录中。 + + + 应使用指定 SQL Server Compact Edition 版本的提供程序固定名称。 + + + 此类的实例用来基于给定的数据库名称或连接字符串创建 SQL Server 的 DbConnection 对象。默认情况下,将建立与“.\SQLEXPRESS”的连接。在构造工厂实例时,可通过更改基础连接字符串来更改此设置。 + + + 使用默认的 BaseConnectionString 属性“Data Source=\SQLEXPRESS; Integrated Security=True; MultipleActiveResultSets=True;”创建新的连接工厂。 + + + 使用给定的 BaseConnectionString 属性创建新的连接工厂。 + 要用于“初始目录”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置“初始目录”。 + + + 要用于“初始目录”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置“初始目录”。默认值为“Data Source=.\SQLEXPRESS; Integrated Security=True;”。 + + + 基于给定的数据库名称或连接字符串为 SQL Server 创建连接。如果给定的字符串包含“=”字符,则将其视为一个完整的连接字符串,否则仅将其视为数据库名称。 + 已初始化的 DbConnection。 + 数据库名称或连接字符串。 + + + 此特性可应用于整个派生的 类或该类上的单个 属性。应用此特性后,任何发现的 属性仍将包含在模型中,但将不再自动进行初始化。 + + + 初始化 类的新实例。 + + + 由实体框架提供程序实现,用于检查给定的数据库中是否存在表。当确定是否将现有数据库作为空库处理以便应创建表时,数据库初始化程序使用该类。 + + + + 在派生类中重写时,检查给定的表在给定连接的数据库中存在的位置。 + 如果任意模型表或 EdmMetadata 表存在,则为 true。 + 正在执行表检查的上下文,通常用于获取合适的 。 + 到数据库的一个连接。可能打开或关闭;如果打开,应再次关闭它。不释放。 + 要检查是否存在的表。 + 要检查是否存在的 EdmMetadata 表的名称。 + + + 要获取给定 s 空间 的表名称的帮助器方法。 + 表名称。 + 表的 s 空间实体集。 + + + + 使用此类向数据库中写入和从中读取事务跟踪信息。要自定义事务表的定义,您可以从此类派生并重写 。可以使用 注册派生类。 + + + 初始化 类的新实例。 + 将为其记录事务的上下文所使用的连接。 + + + 初始化派生上下文的模型后调用此方法。 + 定义要创建的上下文的模型的生成器。 + + + 获取或设置可用于读取和写入 实例的 + 可用于读取和写入 实例的 + + + 表示处理事务操作的侦听器的基类。可使用 注册派生类。 + + + 初始化 类的新实例。 + + + 可在派生类中实现。 + 开始事务的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 开始事务的连接。 + 与调用关联的上下文信息。 + + + 在派生类中实现后,返回脚本来为此事务处理程序准备数据库。 + 用于为此事务处理程序更改数据库架构的脚本。 + + + 可在派生类中实现。 + 已关闭的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要关闭的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 已提交的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要提交的事务。 + 与调用关联的上下文信息。 + + + 获取将对其处理事务操作的连接。 + 将为其处理事务操作的 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 获取将对其处理事务操作的连接。 + 将为其处理事务操作的 。可以为 null。 + + + 释放此事务处理程序占用的资源。 + + + 释放此事务处理程序占用的资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 可在派生类中实现。 + 已释放的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 已释放的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要释放的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要释放的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 使用指定的上下文初始化此实例。 + 将为其处理事务操作的上下文。 + + + 使用指定的上下文初始化此实例。 + 将为其处理事务操作的上下文。 + 用于初始化的连接。 + + + 获取或设置一个值,以指示是否释放了此事务处理程序。 + 如果释放此事务处理程序,则为 true;否则为 false。 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 事务。 + 与调用关联的上下文信息。 + + + 检查提供的侦听上下文是否包含目标上下文,或提供的连接与目标上下文使用的连接相同。 + 如果提供的侦听上下文包含目标上下文或者在提供的侦听上下文不包含任何上下文时提供的连接与目标上下文使用的连接相同,则为 true;否则为 false。 + 连接。 + 侦听上下文。 + + + 获取将对其处理事务操作的连接。 + 将为其处理事务操作的 + + + 可在派生类中实现。 + 已打开的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要打开的连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 已回滚的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 要回滚的事务。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 可在派生类中实现。 + 连接。 + 与调用关联的上下文信息。 + + + 表示一个事务。 + + + 初始化 类的新实例。 + + + 获取或设置事务开始的当地时间。 + 此事务开始的本地时间。 + + + 指示指定对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取或设置分配给事务对象的唯一 ID。 + 分配给事务对象的唯一 ID。 + + + 当上下文从 Database First 或 Model First 模式中的 模板生成,并在 Code First 模式中使用时引发的异常。 + + + 初始化 类的新实例。 + + + 初始化 类的新实例。 + 保存序列化对象数据的对象。 + 有关源或目标的上下文信息。 + + + 初始化 类的新实例。 + 消息。 + + + 初始化 类的新实例。 + 消息。 + 内部异常。 + + + 表示创建允许在为迁移搭建基架时为自定义注释生成代码的服务。应在 中设置的派生类。 + + + 初始化 类的新实例。 + + + 为给定注释值生成代码。 + 要为其生成值的注释的名称。 + 批注值。 + 应向其中写入生成的代码的编写器。 + + + 返回应包括在为已搭建基架的迁移生成的代码中的其他命名空间。默认实现返回空枚举。 + 要包括的其他命名空间的列表。 + 要包括在生成的代码中的注释的名称。 + + + 表示已搭建基架的或已手工编码的 中的一对注释值。 + + + 创建一对新注释值。 + 注释的旧值,如果刚创建注释,则此值可能为 null。 + 注释的新值,如果已删除注释,则此值可能为 null。 + + + 确定指定对象是否等于此实例对象。 + 如果指定对象等于此实例对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索哈希代码。 + 哈希代码。 + + + 获取注释的新值,如果已删除注释,则此值可能为 null。 + 注释的新值,如果已删除注释,则此值可能为 null。 + + + 获取注释的旧值,如果刚创建注释,则此值可能为 null。 + 注释的旧值,如果刚创建注释,则此值可能为 null。 + + + 如果两个注释对包含相同值,则返回 true;否则返回 false。 + 如果两对包含相同值,则为 true。 + 一对注释值。 + 一对注释值。 + + + 如果两个注释对包含不同的值,则返回 true;否则返回 false。 + 如果对包含不同值,则为 true。 + 一对注释值。 + 一对注释值。 + + + 和相关方法返回,以指示某个对象是否与另一个对象不冲突,以便这两个对象可以组合成一个对象。 + + + 创建一个新的 实例。 + 指示这两个测试对象是否兼容。 + 指示对象如何不兼容的错误消息。如果 isCompatible 为 true,则应为 null。 + + + 如果 为 true,则返回指示两个测试对象如何不兼容的错误消息。 + + + 如果两个测试对象兼容,则为 true;否则为 false。 + + + 隐式转换为布尔值以允许在检查中直接使用结果对象。 + 如果结果兼容,则为 true;否则为 false。 + 要转换的对象。 + + + 用作自定义注释的类型可以实现此接口,以指示通过将多个注释合并为一个注释,可以尝试在给定表或列上使用多个同名注释。 + + + 如果此注释与给定注释不冲突,则返回 true,以便可以使用 方法将二者组合在一起。 + 指示此注释是否与另一个注释兼容的 CompatibilityResult。 + 要比较的注释。 + + + 将此注释与给定注释合并,并返回新合并的注释。仅当 返回 true 时,此方法才会成功。 + 新合并的注释。 + 要与此注释合并的注释。 + + + 表示用于表示实体框架模型中数据库索引的自定义注释。 + + + 使用索引的给定集合初始化 类的新实例。 + 表示一个或多个索引的索引属性。 + + + 使用索引的给定集合初始化 类的新实例。 + 表示索引的索引属性。 + + + 在将此注释存储在实体框架元数据中或序列化到 SSDL/EDMX 文件中时使用的名称。 + + + 获取此注释表示的索引。 + 此注释表示的索引。 + + + 如果此注释与给定注释不冲突,则返回 true,以便可以使用 方法将二者组合在一起。 + 指示此注释是否与另一个注释兼容的 CompatibilityResult。 + 要比较的注释。 + + + 将此注释与给定注释合并,并返回包含已合并索引的新注释。 + 具有所合并的两个注释的索引的新注释。 + 要与此注释合并的注释。 + 其他注释包含与此注释中的索引不兼容的索引。 + + + 返回 对象的字符串表示形式。 + + 对象的字符串表示形式。 + + + 此类用于序列化和反序列化 对象,以便它们可以存储在 EDMX 形式的实体框架模型中。 + + + 初始化 类的新实例。 + + + 将给定字符串反序列化为 对象。 + 反序列化的注释值。 + 要反序列化的注释的名称。 + 要反序列化的字符串。 + 如果在读取序列化值时出错。 + + + 将给定 序列化为要存储在 EDMX XML 中的字符串。 + 序列化值。 + 要序列化的注释的名称。 + 要序列化的、必须是 IndexAnnotation 对象的值。 + + + 表示传递到 事件处理程序的时间参数。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。与 AddDependencyResolver 方法不同,此方法将解析程序放置于责任链的底部,这样,该解析程序将仅用于解析任何其他解析程序无法解析的依赖项。 + 要添加的解析程序。 + + + 实例添加到用于解决实体框架所需依赖项的解决程序的责任链中。 + 要添加的解析程序。 + 如果为 true,则添加的解析程序将优先于配置文件中的设置。 + + + 获取将要锁定的 的快照。对此对象使用 GetService 方法可获取已注册的服务。 + 将要锁定的 的快照。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取此实例的类型。 + 此实例的类型。 + + + 将一个包装解析程序添加到将要锁定的配置中。包装解析程序是这样一种解析程序:它截取解析程序链已返回的服务并且用相同类型的另一个服务包装或替换它。 + 获取未包装的服务和键并返回已包装或替换的服务的委托。 + 要包装或替换的服务的类型。 + + + 返回 的字符串表示形式。 + + 的字符串表示形式。 + + + 用来调用使用泛型类型参数和/或不带名称的 方法的扩展方法。 + + + 调用 ,将该方法的泛型类型作为类型参数传递并为名称参数传递 null。 + 解析的依赖项;如果解析程序无法解析它,则为 null。 + 要使用的解析程序。 + 要解析的协定类型。 + + + 调用 ,将该方法的泛型类型和给定名称作为参数传递。 + 解析的依赖项;如果解析程序无法解析它,则为 null。 + 要使用的解析程序。 + 要解析的依赖项的键。 + 要解析的协定类型。 + + + 调用 ,以传递给定类型参数并对名称参数使用 null。 + 解析的依赖项;如果解析程序无法解析它,则为 null。 + 要使用的解析程序。 + 要解析的协定类型。 + + + 调用 ,将该方法的泛型类型作为类型参数传递并为名称参数传递 null。 + 所有已解析的依赖项,如果没有解析任何服务,则为 + 要使用的解析程序。 + 要解析的协定类型。 + + + 调用 ,将该方法的泛型类型和给定名称作为参数传递。 + 所有已解析的依赖项,如果没有解析任何服务,则为 + 要使用的解析程序。 + 要解析的依赖项的键。 + 要解析的协定类型。 + + + 调用 ,以传递给定类型参数并对名称参数使用 null。 + 所有已解析的依赖项,如果没有解析任何服务,则为 + 要使用的解析程序。 + 要解析的协定类型。 + + + 用于解析 工厂的 实现。 + 解析的执行策略的类型。 + + + 初始化 的新实例。 + ADO.NET 提供程序固定名称,指示此执行策略将用于的 ADO.NET 连接的类型。 + 将与连接字符串中的服务器名称进行匹配的字符串。null 将匹配任意内容。 + 返回执行策略的新实例的函数。 + + + 如果给定类型为 ,则此解析程序将尝试返回要使用的服务,否则它将返回 null。在给定类型为 Func{IExecutionStrategy} 时,键应该是 + + 或 null。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 如果给定类型为 ,则此解析程序将尝试返回要使用的服务,否则它将返回空枚举。在给定类型为 Func{IExecutionStrategy} 时,键应该是 + 可枚举的 或空枚举。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 此接口由可以解析依赖项(直接解析或通过使用外部容器进行解析)的任何对象实现。 + + + 尝试为给定的协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回 null 并且不引发。这允许解析程序用于责任链模式中,以便可以请求多个解析程序解析某一依赖项,直到其中一个解析程序最终解析了该依赖项。 + 解析的依赖项,它必须是给定协定类型的实例;如果无法解析该依赖项,则为 null。 + 定义要解析的依赖项的接口或抽象基类。返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 尝试为给定协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回空枚举并且不引发。此方法与 不同,因为它返回给定类型和键组合的所有注册服务。 + 解析依赖项的所有服务,它们必须是给定协定类型的实例,如果无法解析依赖项,则为空枚举。 + 定义要解析的依赖项的接口或抽象基类。每个返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 实现 以便解析某一依赖项,使其可以始终返回相同的实例。 + 定义将解析的依赖项的协定的类型。 + + + 构造一个新的解析程序,该解析程序将返回协定类型的给定实例,而与传递给 Get 方法的键无关。 + 要返回的实例。 + + + 构造一个新解析程序,如果给定键与基于给定谓词传递给 Get 方法的键匹配,该解析程序将返回协定类型的给定实例。 + 要返回的实例。 + 采用键对象并在当且仅当它匹配时才返回 true 的谓词。 + + + 构造一个新的解析程序,如果给定键完全匹配传递给 Get 方法的键,该解析程序将返回协定类型的给定实例。 + 要返回的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 尝试为给定的协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回 null 并且不引发。这允许解析程序用于责任链模式中,以便可以请求多个解析程序解析某一依赖项,直到其中一个解析程序最终解析了该依赖项。 + 解析的依赖项,它必须是给定协定类型的实例;如果无法解析该依赖项,则为 null。 + 定义要解析的依赖项的接口或抽象基类。返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 尝试为给定协定类型和可选的给定键解析依赖项。如果解析程序无法解析依赖项,则它必须返回空枚举并且不引发。 + 解析依赖项的所有服务,它们必须是给定协定类型的实例,如果无法解析依赖项,则为空枚举。 + 定义要解析的依赖项的接口或抽象基类。每个返回的对象应是此类型的实例。 + 或者为要解析的依赖项的键。对于并非按键进行区分的依赖项,可以是 null。 + + + 表示用于解析 工厂的 实现。 + + + 初始化 类的新实例。 + 一个返回事务处理程序的新实例的函数。 + ADO.NET 提供程序固定名称,指示将使用事务处理程序的 ADO.NET 连接的类型。null 将匹配任意内容。 + 将与连接字符串中的服务器名称进行匹配的字符串。null 将匹配任意内容。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索对象实例的哈希代码。 + 对象实例的哈希代码。 + + + 如果给定类型为 ,则此方法将尝试返回要使用的服务,否则它将返回 null。在给定类型为 时,键应该是 + + 或 null。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 如果给定类型为 ,则此解析程序将尝试返回要使用的服务,否则它将返回空枚举。在给定类型为 时,键应该是 + 可枚举的 或空枚举。 + 要解析的服务类型。 + 用于确定要返回的服务的键。 + + + 提供用于从 App.config 或 Web.config 文件读取的实用工具方法。 + + + 初始化 的新实例。 + 要从中读取的配置。 + + + 从配置获取指定的提供程序服务。 + 提供程序服务类型名称或 null(如果未找到)。 + 提供程序服务的固定名称。 + + + 表示映射视图。 + + + 创建具有指定实体 SQL 的 实例。 + 一个指定实体 SQL 的字符串。 + + + 获取实体 SQL。 + + + 表示映射视图缓冲实现的抽象基类。派生类如果与 一起使用,则必须具有无参数构造函数。 + + + 初始化 类的新实例。 + + + 获取与指定范围对应的视图。 + 一个指定映射视图的 ,如果范围不与映射视图关联,则为 null。 + 一个指定范围的 。 + + + 获取通过映射结束计算出的哈希值。 + 通过映射结束计算出的哈希值。 + + + 指定用于创建具体的 实例的方法。 + + + 初始化 类的新实例。 + + + 为由已映射容器的名称指定的容器映射创建生成的视图缓存实例。 + 一个指定生成的视图缓存的 + 概念模型中容器的名称。 + 存储模型中容器的名称。 + + + 定义指定与上下文类型( 的子类)关联的映射视图缓存类型( 的子类)的自定义属性。缓存类型在运行时实例化并用于在相应上下文中检索预先生成的视图。 + + + 创建将上下文类型与映射视图缓存类型相关联的 实例。 + + 的子类。 + 缓存类型的程序集限定的全名。 + + + 创建将上下文类型与映射视图缓存类型相关联的 实例。 + + 的子类。 + + 的子类。 + + + 表示 要使用的自定义复数形式术语 + + + 创建一个新实例 + 表示单数的非 null 或空字符串。 + 表示复数的非 null 或空字符串。 + + + 获取复数。 + + + 获取单数。 + + + 要由实体框架使用的默认复数形式服务实现。此复数形式服务基于英文区域设置。 + + + 构造实体框架中使用的默认复数形式服务的新实例。 + + + 构造实体框架中使用的默认复数形式服务的新实例。 + 要由此服务使用的用户字典项的集合。这些输入信息可以根据用户需要对服务进行自定义。 + + + 返回指定单词的复数形式。 + 输入参数的复数形式。 + 要改为复数形式的单词。 + + + 返回指定单词的单数形式。 + 输入参数的单数形式。 + 要改为单数形式的单词。 + + + 要由 EF 运行时使用的复数形式服务实现此接口。默认情况下,使用 ,但是可以在从 派生的类中设置要使用的复数形式服务。 + + + 使用服务使单词变为复数形式。 + 已变为复数形式的单词 + 要变为复数形式的单词。 + + + 使用服务使单词变为单数形式。 + 已变为单数形式的单词。 + 要变为单数形式的单词。 + + + 表示基于代码的迁移的基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。 + + + 添加将列添加到现有表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列将添加到的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要添加的列的名称。 + 一个指定要添加的列的操作。例如,c =&gt; c.Int(nullable:false, defaultValue:3) + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 此外键引用的列。如果未提供任何值,则将引用主体表的主键。 + 指示是否应针对外键关系配置级联删除的值。如果未提供任何值,则将关闭级联删除。 + 数据库中的外键约束的名称。如果未提供任何值,则将生成唯一名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 此外键引用的列。如果未提供任何值,则将引用主体表的主键。 + 指示是否应针对外键关系配置级联删除的值。如果未提供任何值,则将关闭级联删除。 + 数据库中的外键约束的名称。如果未提供任何值,则将生成唯一名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 主键列。 + 数据库中的主键的名称。如果未提供任何值,则将生成唯一名称。 + 指示此键是否是聚集的主键。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于多列创建新主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 主键列。 + 数据库中的主键的名称。如果未提供任何值,则将生成唯一名称。 + 指示此键是否是聚集的主键。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加更改现有列的定义的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所在的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要更改的列的名称。 + 一个指定列的新定义的操作。例如,c =&gt; c.String(nullable:false, defaultValue:"none") + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加更改存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定存储过程参数的操作。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + 此更改存储过程操作中的参数。无需指定此类型,将根据您提供的 参数推断此类型。 + + + 添加更改存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + + + 添加一项操作以处理表中所定义的注释的更改。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定表中要包含的列的操作。例如,t =&gt; new { Id = t.Int(identity:true), Name = t.String() } + 表中已更改的自定义注释。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + 此操作中的列。无需指定此类型,将根据您提供的 columnsAction 参数推断此类型。 + + + 添加在单列上创建索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要在其上创建索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要在其上创建索引的列的名称。 + 指示此索引是否是唯一索引的值。如果未提供任何值,则将创建非唯一索引。 + 用于数据库中的索引的名称。如果未提供任何值,则将生成唯一名称。 + 指示此索引是否是聚集索引的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加在多列上创建索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要在其上创建索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要在其上创建索引的列的名称。 + 指示此索引是否是唯一索引的值。如果未提供任何值,则将创建非唯一索引。 + 用于数据库中的索引的名称。如果未提供任何值,则将生成唯一名称。 + 指示此索引是否是聚集索引的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加创建新存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定存储过程参数的操作。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + 此存储过程创建操作中的参数。无需指定此类型,将根据您提供的 参数推断此类型。 + + + 添加创建新存储过程的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 存储过程的主体。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + + + 添加创建新表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 允许进一步配置表创建操作的对象。 + 表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定表中要包含的列的操作。例如,t =&gt; new { Id = t.Int(identity:true), Name = t.String() } + 要创建的表中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + 此表中的列创建表操作。无需指定此类型,将根据您提供的 columnsAction 参数推断此类型。 + + + 添加创建新表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 允许进一步配置表创建操作的对象。 + 表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 指定表中要包含的列的操作。例如,t =&gt; new { Id = t.Int(identity:true), Name = t.String() } + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + 此表中的列创建表操作。无需指定此类型,将根据您提供的 columnsAction 参数推断此类型。 + + + 要在降级过程中执行的操作。 + + + 添加删除现有列的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除列的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的列的名称。 + 要删除的列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除现有列的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除列的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的列的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束名称删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 数据库中的外键约束的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束面向的列删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束面向的列删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 此外键引用的列。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于外键约束面向的列删除外键约束的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含外键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 外键列。 + 包含此外键引用的列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于索引名称删除索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的索引的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加基于索引面向的列删除索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要从中删除索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 索引面向的列的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除使用默认名称创建的现有主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除没有默认名称的现有主键的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含主键列的表。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的主键的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加一个操作,以删除具有使用指定名称的现有存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数。例如,“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的表的各列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 要删除的表的各列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加删除表的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 确定此实例是否等于指定对象。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要与当前实例进行比较的对象。 + + + 返回当前对象的哈希函数。 + 当前对象的哈希函数。 + + + 返回当前实例的运行时类型。 + 当前实例的运行时类型。 + + + 创建当前对象的浅表副本。 + 当前对象的浅表副本。 + + + 添加将存储过程移至新架构的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要将存储过程移到其中的架构。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加将表移至新架构的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 表将移至的架构。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加重命名列的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含要重命名的列的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要重命名的列的名称。 + 列的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加一项重命名索引的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 包含要重命名的索引的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 要重命名的索引的名称。 + 索引的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加重命名存储过程的操作。若要更改存储过程的架构,请使用 MoveStoredProcedure 实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的存储过程的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 存储过程的新名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加重命名表的操作。若要更改表的架构,请使用 MoveTable。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的表的名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 表的新名称。架构名称是可选的,如果未指定架构,则将假定 dbo。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加执行 SQL 命令的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL。 + 指示是否应在用于迁移过程的事务之外执行 SQL 的值。如果未提供任何值,则将在事务内执行 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加要执行 SQL 文件的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL 文件。相对路径假定相对于当前 AppDomain 的 BaseDirectory。 + 指示是否应在用于迁移过程的事务之外执行 SQL 的值。如果未提供任何值,则将在事务内执行 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加要执行 SQL 资源文件的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL 资源文件的清单资源名称。 + 包含资源文件的程序集。如果未提供,采用调用的程序集。 + 指示是否应在用于迁移过程的事务之外执行 SQL 的值。如果未提供任何值,则将在事务内执行 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 添加迁移操作。 + 要添加的迁移操作。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 要在升级过程中执行的操作。 + + + 与对给定模型使用迁移相关的配置。通常将创建派生自 的配置类,而不是使用此类。 + + + 初始化 DbMigrationsConfiguration 类的新实例。 + + + 获取或设置指示是否可接受自动迁移期间的数据丢失的值。如果设置为 false,则将在数据丢失可能作为自动迁移一部分出现时引发异常。 + + + 获取或设置指示迁移数据库时是否可使用自动迁移的值。 + + + 获取或设置为迁移搭建基架时要使用的代码生成器。 + + + 获取或设置在迁移中用于单个命令的超时值。null 值指示将使用基础提供程序的默认值。 + + + 获取或设置字符串,它可用于区分属于此配置的迁移和属于其他使用同一数据库的配置的迁移。该属性使来自多个不同模型的迁移能够应用于一个数据库。 + + + 获取或设置表示要迁移的模型的派生 DbContext。 + + + 存储迁移的默认目录。 + + + 获取设置为与给定数据库提供程序结合使用的历史记录上下文工厂。 + 为数据库提供程序设置的历史记录上下文工厂。 + 要为其获取工厂的数据库提供程序的名称。 + + + 获取设置为用于给定数据库提供程序的 SQL 生成器。 + 为数据库提供程序设置的 SQL 生成器。 + 要为之获取 SQL 生成器的数据库提供程序的名称。 + + + 获取或设置包含基于代码的迁移的程序集。 + + + 获取或设置其中存储基于代码的迁移的子目录。请注意,此属性必须设置为 Visual Studio 项目根目录下子目录的相对路径;它不能设置为绝对路径。 + + + 获取或设置用于基于代码的迁移的命名空间。 + + + 添加一个新工厂,以便创建要用于给定数据库提供程序的 实例。 + 要为之设置 SQL 生成器的数据库提供程序的名称。 + 一个工厂,用于为表示默认架构的给定 创建 实例。 + + + 添加新的要同于给定数据库提供程序的 SQL 生成器。 + 要为之设置 SQL 生成器的数据库提供程序的名称。 + 要使用的 SQL 生成器。 + + + 获取或设置用于重写要迁移的数据库的连接的值。 + + + 与对给定模型使用迁移相关的配置。 + 表示此配置应用于的模型的上下文。 + + + 初始化 DbMigrationsConfiguration 类的新实例。 + + + 确定当前配置是否等于指定的对象。 + 如果当前配置等于指定的对象,则为 true;否则为 false。 + 要与当前配置进行比较的对象。 + + + 获取此实例的哈希函数。 + 此实例的哈希函数。 + + + 返回当前实例的运行时类型。 + 当前实例的运行时类型。 + + + 创建当前对象的浅表副本。 + 当前对象的浅表副本。 + + + 在升级到最新迁移以允许更新种子数据后运行。 + 要用于更新种子数据的上下文。 + + + 返回此配置的字符串表示形式。 + 此配置的字符串表示形式。 + + + DbMigrator 用于将现有迁移应用于数据库。DbMigrator 可用于升级和降级到任何给定迁移。若要基于对模型的更改为迁移搭建基架,请使用 + + + 初始化 DbMigrator 类的新实例。 + 用于迁移过程的配置。 + + + 获取要用于迁移过程的配置。 + + + 获取已应用于目标数据库的所有迁移。 + 迁移的列表。 + + + 获取已在配置的迁移程序集中定义的所有迁移。 + 迁移的列表。 + + + 获取已在程序集中定义但尚未应用于目标数据库的所有迁移。 + 迁移的列表。 + + + 表示应用任何迁移前数据库的状态的迁移 Id。 + + + 将目标数据库更新到给定迁移。 + 要升级/降级到的迁移。 + + + + 的一组扩展方法 + + + 调用 SaveChanges 时,按自定义标识表达式添加或更新实体。等效于数据库术语中的“upsert”操作。此方法在使用迁移设置数据的种子时很有用。 + 实体所属的集。 + 指定在确定是应执行添加操作还是更新操作时应使用的属性的表达式。 + 要添加或更新的实体。 + 要添加或更新的实体类型。 + + + 调用 SaveChanges 时,按键添加或更新实体。等效于数据库术语中的“upsert”操作。此方法在使用迁移设置数据的种子时很有用。 + 实体所属的集。 + 要添加或更新的实体。 + 要添加或更新的实体类型。 + + + 用于配置列的帮助器类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。 + + + 创建新的列定义以存储二进制数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 数组数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 指示是否应将此列配置为时间戳的值。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储布尔数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储字节数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 DateTime 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的精度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 DateTimeOffset 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的精度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Decimal 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的数值精度。 + 列的数值刻度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 指示插入过程中数据库是否会为此列生成值的值。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Double 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 指示指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 创建新的列定义以存储 geography 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 geometry 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 创建新的列定义以存储 GUID 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Integer 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Long 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 创建新的列定义以存储 Short 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 指示插入过程中数据库是否会为此列生成值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Single 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储字符串数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 字符串数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 指示列是否支持 Unicode 内容的值。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 创建新的列定义以存储 Time 数据。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 新构造的列定义。 + 指示列是否允许 null 值的值。 + 列的精度。 + 用作此列的默认值的常量值。 + 用作此列的默认值的 SQL 表达式。 + 列的名称。 + 用于此列的提供程序特有数据类型。 + 自定义注释通常来自 Code First 模型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 表示用于配置参数的类。 + + + 初始化 类的新实例。 + + + 创建新参数定义以传递 Binary 数据。 + 新构造的参数定义。 + 数组数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 用作此参数的默认值的常量值。 + 用作此参数的默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Boolean 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Byte 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 DateTime 数据。 + 新构造的参数定义。 + 参数的精度。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 DateTimeOffset 数据。 + 新构造的参数定义。 + 参数的精度。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Decimal 数据。 + 新构造的参数定义。 + 参数的数值精度。 + 参数的小数位数。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Double 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 创建新参数定义以传递 geography 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 geometry 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 创建新参数定义以传递 GUID 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Integer 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Long 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 创建新参数定义以传递 Short 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Single 数据。 + 新构造的参数定义。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 String 数据。 + 新构造的参数定义。 + 字符串数据的最大允许长度。 + 指示是否应将所有数据填充至最大长度的值。 + 指示参数是否支持 Unicode 内容的值。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 创建新参数定义以传递 Time 数据。 + 新构造的参数定义。 + 参数的精度。 + 用作此参数默认值的常量值。 + 用作此参数默认值的 SQL 表达式。 + 参数名。 + 用于此参数的提供程序特有数据类型。 + 一个指示参数是否为输出参数的值。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 用于进一步配置从 上的 CreateTable 调用创建的表的帮助器类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 标识表的列的类型。 + + + 初始化 TableBuilder 类的新实例。 + 要进一步配置的表创建操作。 + 其中创建了表的迁移。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 指定要在表上创建的外键约束。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 对象自身,以便多个调用可以链接在一起。 + 该外键约束面向的表的名称。 + 表示外键属性的 lambda 表达式。C#:t =&gt; t.PropertyOne VB.Net:Function(t) t.PropertyOne 如果外键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.PropertyOne, t.PropertyTwo } VB.Net:Function(t) New With { t.PropertyOne, t.PropertyTwo } + 指示是否应在外键约束上配置级联删除的值。 + 此外键约束的名称。如果未提供名称,则将计算默认名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取当前对象的哈希代码。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 指定要在表上创建的索引。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 对象自身,以便多个调用可以链接在一起。 + 表示要编制索引的属性的 lambda 表达式。C#:t =&gt; t.PropertyOne VB.Net:Function(t) t.PropertyOne 如果要对多个属性编制索引,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.PropertyOne, t.PropertyTwo } VB.Net:Function(t) New With { t.PropertyOne, t.PropertyTwo } + 索引的名称。 + 指示此索引是否是唯一索引的值。 + 指示此索引是否是聚集索引的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 创建当前 的浅表副本。 + 当前 的浅表副本。 + + + 指定表的主键。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 对象自身,以便多个调用可以链接在一起。 + 表示要用作主键的属性的 lambda 表达式。C#:t =&gt; t.Id VB.Net:Function(t) t.Id 如果主键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.Id1, t.Id2 } VB.Net:Function(t) New With { t.Id1, t.Id2 } + 主键的名称。如果未提供,则将生成默认名称。 + 指示此键是否是聚集的主键。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 返回当前对象的字符串表示形式。 + 当前对象的字符串表示形式。 + + + 为基于代码的迁移生成 C# 代码。 + + + 初始化 类的新实例。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成用户可查看和编辑的主代码文件。 + 生成的代码。 + 迁移要执行的操作。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定使用 lambda 表达式的一组列名称。 + 要为之生成代码的列。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码。 + 应为其生成代码的操作。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以指定 的定义。 + 要为之生成代码的列定义。 + 生成的代码要添加到的文本编写器。 + 指示定义中是否包含列名称的值。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以指定 的定义。 + 要为之生成代码的参数定义。 + 生成的代码要添加到的文本编写器。 + 指示定义中是否包含列名称的值。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定数据类型未知的列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 使用 生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 要为之生成代码的操作。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 使用迁移元数据生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 为可能为 null 的给定注释值生成代码。默认行为是使用 (如果已注册一个),否则将对注释值调用 ToString。 + 需要代码的注释的名称。 + 要生成的注释值。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 使用相应的转义将标识符用引号引起来以允许它存储在字符串中。 + 保存的标识符。 + 要用引号引起来的标识符。 + + + 从数据库体系结构名称中删除所有无效字符。 + 已擦除的名称。 + 要擦除的名称。 + + + 获取用于给定数据类型的列的类型名称。 + 要在生成的迁移中使用的类型名称。 + 要转换的数据类型。 + + + 生成类特性。 + 生成的代码要添加到的文本编写器。 + 指示是否应为代码隐藏文件生成此类的值。 + + + 为以 WriteClassStart 开头的类生成结束代码。 + 其中应生成代码的命名空间。 + 生成的代码要添加到的文本编写器。 + + + 使用语句和类定义生成命名空间。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + 生成的代码要添加到的文本编写器。 + 生成的类的基类。 + 指示是否应为代码隐藏文件生成此类的值。 + 将为其添加 using 指令的命名空间。如果为 null,则将使用从 GetDefaultNamespaces 返回的命名空间。 + + + 生成属性以在代码隐藏文件中返回源或目标模型。 + 属性的名称。 + 要返回的值。 + 生成的代码要添加到的文本编写器。 + + + 为基于代码的迁移生成代码的提供程序的基类。 + + + 初始化 类的新实例。 + + + 获取所使用的 实例。 + + + 生成应添加到用户项目的代码。 + 生成的代码。 + 迁移的唯一标识符。 + 迁移要执行的操作。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 为生成的所有代码获取必须输出为“using”或“Imports”指令的默认命名空间。 + 命名空间名称的有序列表。 + 指示是否应为代码隐藏文件生成此类的值。 + + + 获取必须输出为可处理给定操作生成的代码的“using”或“Imports”指令的命名空间。 + 命名空间名称的有序列表。 + 将为其生成代码的操作。 + + + 为基于代码的迁移搭建基架以将挂起的模型更改应用于数据库。 + + + 初始化 MigrationScaffolder 类的新实例。 + 要用于搭建基架的配置。 + + + 获取或设置迁移生成的代码中使用的命名空间。默认情况下,此命名空间与传入构造函数的迁移配置对象上的 MigrationsNamespace 相同。对于 VB.NET 项目,此命名空间将需要更新为将项目的根命名空间考虑进去。 + + + 为基于代码的迁移搭建基架以将挂起的所有模型更改应用于数据库。 + 已搭建基架的迁移。 + 要用于已搭建基架的迁移的名称。 + + + 为基于代码的迁移搭建基架以将挂起的所有模型更改应用于数据库。 + 已搭建基架的迁移。 + 要用于已搭建基架的迁移的名称。 + 是否包括模型更改。 + + + 为与之前运行的数据库初始值设定项对应的基于代码的初始迁移搭建基架。 + 已搭建基架的迁移。 + + + 表示已搭建基架并准备写入文件的基于代码的迁移。 + + + 初始化 类的新实例。 + + + 获取或设置应存储在代码隐藏文件中的已搭建基架的迁移代码。 + + + 获取或设置此迁移应保存在其中的用户项目中的子目录。 + + + 获取或设置迁移是否已重新搭建基架。 + + + 获取或设置用于此迁移的编程语言。通常用于生成的代码的文件扩展名。 + + + 获取或设置此迁移的唯一标识符。通常用于生成的代码的文件名。 + + + 获取要添加到迁移资源文件中的字符串资源的字典。 + + + 获取或设置用户可编辑的已搭建基架的迁移代码。 + + + 设计时工具用于运行需要与正在 Visual Studio 中编辑的应用程序进行交互的迁移相关命令的帮助器类。由于应用程序处于编辑状态,因此需要在单独的 AppDomain 中加载程序集以确保始终加载的是最新版本。还将复制启动项目中的 App/Web.config 文件以确保应用所有配置。 + + + 初始化 ToolingFacade 类的新实例。 + 包含要使用的迁移配置的程序集的名称。 + 包含要使用的 DbContext 的程序集的名称。 + 要使用的迁移配置的命名空间限定名称。 + 包含已编译程序集的工作目录。 + 启动项目中的配置文件的路径。 + 启动项目中的应用程序数据目录的路径。通常,App_Data 目录用于 Web 应用程序,或者工作目录用于可执行文件。 + 与要迁移的数据库的连接。如果未提供,则将使用上下文的默认连接。 + + + 释放 类的当前实例所使用的资源。 + + + 释放由外观使用的所有资源。 + 如果为 true,则同时释放托管资源和非托管资源;如果为 false,则仅释放非托管资源。 + + + 释放由 facade 使用的所有非托管资源。 + + + 获取派生自 的类型的完全限定名。 + 找到的上下文类型。 + 上下文类型的名称。如果为 nul,将返回在程序集中找到的单个上下文类型。 + + + 获取派生自 的所有类型的完全限定名。 + 找到的所有上下文类型。 + + + 获取已应用于数据库的所有迁移的列表。 + 已应用迁移的 ID。 + + + 获取尚未应用于数据库的所有迁移的列表。 + 挂起的迁移的 ID。 + + + 获取或设置要运行以记录信息的操作。 + + + 获取或设置要运行以记录详细信息的操作。 + + + 获取或设置要运行以记录警告的操作。 + + + 为基于代码的迁移搭建基架以应用所有挂起的模型更改。 + 已搭建基架的迁移。 + 生成的迁移的名称。 + 生成的迁移的编程语言。 + 迁移将添加到的项目的根命名空间。 + 是否包括模型更改。 + + + 为与之前运行的数据库初始值设定项对应的基于代码的初始迁移搭建基架。 + 已搭建基架的迁移。 + 生成的迁移的编程语言。 + 迁移将添加到的项目的根命名空间。 + + + 生成 SQL 脚本以在两个迁移之间进行迁移。 + 生成的 SQL 脚本。 + 要从其进行更新的迁移。如果未提供,则将生成更新当前数据库的脚本。 + 要更新到的迁移。如果未提供,则将生成更新到最新迁移的脚本。 + 指示是否可接受自动迁移期间的数据丢失的值。 + + + 将数据库更新到指定的迁移。 + 要迁移到的迁移的 ID。如果未提供,则会将数据库更新到最新迁移。 + 指示是否可接受自动迁移期间的数据丢失的值。 + + + 为基于代码的迁移生成 VB.Net 代码。 + + + 初始化 类的新实例。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成用户可查看和编辑的主代码文件。 + 生成的代码。 + 迁移要执行的操作。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定使用 lambda 表达式的一组列名称。 + 要为之生成代码的列。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码。 + 应为其生成代码的操作。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以指定 的定义。 + 要为之生成代码的列定义。 + 生成的代码要添加到的文本编写器。 + 指示定义中是否包含列名称的值。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为其生成代码的参数模型定义。 + 生成的代码要添加到的文本编写器。 + 为 true 则在定义中包含列名称;否则为 false。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定数据类型未知的列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 使用迁移元数据生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 迁移要执行的操作。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 使用迁移元数据生成代码隐藏文件。 + 生成的代码。 + 迁移的唯一标识符。 + 要存储在迁移元数据中的源模型。 + 要存储在迁移元数据中的目标模型。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + + + 生成代码以指定 列的默认值。 + 表示默认值的代码。 + 要用作默认值的值。 + + + 为可能为 null 的给定注释值生成代码。默认行为是使用 (如果已注册一个),否则将对注释值调用 ToString。 + 需要代码的注释的名称。 + 要生成的注释值。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以便重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以便重新创建注释的给定字典,在将这些注释作为 调用的参数传递时使用该字典。 + 要生成的注释。 + 应向其中写入生成的代码的编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 生成代码以执行作为 一部分的 + 要为之生成代码的操作。 + 生成的代码要添加到的文本编写器。 + + + 使用相应的转义将标识符用引号引起来以允许它存储在字符串中。 + 保存的标识符。 + 要用引号引起来的标识符。 + + + 从数据库体系结构名称中删除所有无效字符。 + 已擦除的名称。 + 要擦除的名称。 + + + 获取用于给定数据类型的列的类型名称。 + 要在生成的迁移中使用的类型名称。 + 要转换的数据类型。 + + + 生成类特性。 + 生成的代码要添加到的文本编写器。 + 指示是否应为代码隐藏文件生成此类的值。 + + + 为以 WriteClassStart 开头的类生成结束代码。 + 其中应生成代码的命名空间。 + 生成的代码要添加到的文本编写器。 + + + 使用语句和类定义生成命名空间。 + 其中应生成代码的命名空间。 + 应生成的类的名称。 + 生成的代码要添加到的文本编写器。 + 生成的类的基类。 + 指示是否应为代码隐藏文件生成此类的值。 + 将为其添加 Imports 指令的命名空间。如果为 null,则将使用从 GetDefaultNamespaces 返回的命名空间。 + + + 生成属性以在代码隐藏文件中返回源或目标模型。 + 属性的名称。 + 要返回的值。 + 生成的代码要添加到的文本编写器。 + + + 此类由 Code First 迁移用于读取和写入数据库中的迁移历史记录。要对迁移历史记录表进行自定义,您可以从此类派生并重写 OnModelCreating。派生的实例可以使用 基于每个迁移配置注册,或使用 全局注册。 + + + 初始化 HistoryContext 类的新实例。如果要创建派生历史记录上下文,通常将公开一个构造函数,接受这同样的这些参数,然后将它们传递给此基构造函数。 + 要用于新的上下文的现有连接。 + 要迁移的模型的默认架构。如果未在 OnModelCreating 中配置另一架构,则此架构将用于迁移历史记录表。 + + + 获取用于查找以前为此上下文生成的模型的键。这用于避免在每次创建新的上下文实例时处理 OnModelCreating 并计算模型。默认情况下,此属性返回默认架构。在多数情况下,您不需要重写此属性。但是,如果您的 OnModelCreating 实现包含导致为同一数据库提供程序和默认架构生成不同模型的条件逻辑,应重写此属性并计算相应的键。 + + + 获取要迁移的模型的默认架构。如果未在 OnModelCreating 中配置另一架构,则此架构将用于迁移历史记录表。 + + + 用于迁移历史记录表的默认名称。 + + + 获取或设置可用于读取和写入 实例的 + + + 应用迁移历史记录表的默认配置。如果重写此方法,建议在应用您的自定义配置前调用这个基实现。 + 定义要创建的上下文的模型的生成器。 + + + 此类由 Code First 迁移用于读取和写入数据库中的迁移历史记录。 + + + 初始化 类的新实例。 + + + 获取或设置一个键,该键表示行应用的上下文。 + + + 获取或设置此行表示的迁移的 ID。 + + + 获取或设置此迁移应用后模型的状态。 + + + 获取或设置创建此条目的实体框架的版本。 + + + 表示自动迁移将导致数据丢失时出现的错误。 + + + 初始化 AutomaticDataLossException 类的新实例。 + + + 初始化 AutomaticDataLossException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 表示在应用最后一个迁移后仍然存在挂起的模型更改并且禁用了自动迁移时出现的错误。 + + + 初始化 AutomaticMigrationsDisabledException 类的新实例。 + + + 初始化 AutomaticMigrationsDisabledException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 显式实现,用于防止某些成员在已搭建基架的迁移的 IntelliSense 中出现。 + + + 将自定义 添加到迁移中。鼓励自定义操作实现人员在 上创建扩展方法,为添加新操作提供 Fluent 样式的 API。 + 要添加的操作。 + + + 提供有关基于代码的迁移的其他元数据。 + + + 获取迁移的唯一标识符。 + + + 获取此迁移运行前模型的状态。 + + + 获取此迁移运行后模型的状态。 + + + 表示 Code First 迁移管道内出现的错误。 + + + 初始化 MigrationsException 类的新实例。 + + + 使用序列化数据初始化 MigrationsException 类的新实例。 + 包含有关正在发生的异常的序列化对象数据的 。 + 包含有关源或目标的上下文信息的 。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 可用于迁移过程的记录器的基类。 + + + 初始化 类的新实例。 + + + 记录信息性消息。 + 要记录的消息。 + + + 记录只应在用户请求详细输出时呈现给他们的一些其他信息。 + 要记录的消息。 + + + 记录用户应了解的警告。 + 要记录的消息。 + + + 当由于某些现有迁移尚未应用到数据库,导致无法执行操作时引发。 + + + 初始化 MigrationsPendingException 类的新实例。 + + + 初始化 MigrationsPendingException 类的新实例。 + 描述错误的消息。 + + + 初始化 MigrationsPendingException 类的新实例。 + 描述错误的消息。 + 导致当前异常的异常,如果未指定内部异常,则为一个 null 引用(在 Visual Basic 中为 Nothing)。 + + + 表示包装核心 的修饰器的基类。 + + + 初始化 类的新实例。 + 此修饰器将包装的迁移程序。 + + + 获取要用于迁移过程的配置。 + 要用于迁移过程的过程。 + + + 获取已应用于数据库的迁移的列表。 + 迁移 ID 的列表。 + + + 获取程序集中定义的迁移的列表。 + 迁移 ID 的列表。 + + + 获取尚未应用于数据库的挂起的迁移的列表。 + 迁移 ID 的列表。 + + + 将目标数据库更新到最新迁移。 + + + 将目标数据库更新到给定迁移。 + 要升级/降级到的迁移。 + + + 在迁移操作期间提供日志记录的修饰器。 + + + 初始化 MigratorLoggingDecorator 类的新实例。 + 此修饰器将包装的迁移程序。 + 消息将写入到的记录器。 + + + 生成 SQL 脚本而不是将更改应用于数据库的修饰器。使用此修饰器包装 将防止 将任何更改应用于目标数据库。 + + + 初始化 MigratorScriptingDecorator 类的新实例。 + 此修饰器将包装的迁移程序。 + + + 生成更新数据库的脚本。 + 生成的 SQL 脚本。 + 要从其进行更新的迁移。如果未提供,则将生成更新当前数据库的脚本。 + 要更新到的迁移。如果未提供,则将生成更新到最新迁移的脚本。 + + + 表示将添加到表中的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AddColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列应添加到的表的名称。 + 将添加的列的详细信息。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将添加的列的详细信息。 + + + 获取表示删除已添加列的操作。 + + + 获取一个值,该值指示更改是否具有破坏性。 + 如果更改具有破坏性,则为 true;否则为 false。 + + + 获取列应添加到的表的名称。 + + + 表示将添加到表中的外键约束。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AddForeignKeyOperation 类的新实例。还应填充 PrincipalTable、PrincipalColumns、DependentTable 和 DependentColumns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取或设置指示是否应在外键约束上配置级联删除的值。 + + + 获取在外键列上创建索引的操作。 + 添加索引的操作。 + + + 获取删除外键约束的操作。 + + + 获取或设置一个值,该值指示此更改是否将导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 外键约束应面向的列的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 表示向表添加主键。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AddPrimaryKeyOperation 类的新实例。还应填充 Table 和 Columns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除主键的操作。 + + + 获取或设置此键是否为聚集主键。 + + + 表示更改现有列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 AlterColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所属表的名称。 + 列应更改为的内容的详细信息。 + 指示此更改是否会导致数据丢失的值。 + 还原对此列的更改的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 AlterColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所属表的名称。 + 列应更改为的内容的详细信息。 + 指示此更改是否会导致数据丢失的值。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取列的新定义。 + + + 获取表示还原更改的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此更改是否会导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 获取列所属表的名称。 + + + 表示更改现有存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。 + SQL 中表示的存储过程的主体。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。始终返回 + + + 表示对表中的自定义注释所做的更改。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 其中注释已更改的表的名称。 + 表中已更改的自定义注释。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表中已更改的自定义注释。 + 表中已更改的自定义注释。 + + + 获取要包括在表中的注释已更改的列。 + 要包括在其注释已更改的表中的列。 + + + 获取此操作的反向操作,以便注释将在应用此操作之前恢复原样。 + 此操作的方向操作,以便注释将在应用此操作之前恢复原样。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取其中注释已更改的表的名称。 + 其中注释已更改的表的名称。 + + + 表示有关列的信息。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 ColumnModel 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 此列的数据类型。 + + + 初始化 ColumnModel 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 此列的数据类型。 + 有关数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 获取或设置列中已更改的自定义注释。 + + + 获取与此列的数据库类型对应的 CLR 类型的默认值。 + + + 获取与此列的数据库类型对应的 CLR 类型。 + + + 获取或设置指示此列的值是否由使用标识模式的数据库生成的值。 + + + 确定此列的数据类型是否窄于另一列的。用于确定将提供的列定义更改为此定义是否会导致数据丢失。 + 如果此列的数据类型更窄,则为 True。 + 要与之比较的列。 + 正使用的数据库提供程序的详细信息。 + + + 获取或设置指示此列是否可存储 null 值的值。 + + + 获取或设置一个值,指示是否应将此属性模型配置为时间戳。 + + + 表示创建数据库索引。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 CreateIndexOperation 类的新实例。还应填充 Table 和 Columns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除此索引的操作。 + + + 获取或设置此索引是否为聚集索引。 + + + 获取或设置一个值,该值指示此更改是否将导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 获取或设置指示此索引是否是唯一索引的值。 + + + 要向数据库中添加新存储过程的迁移操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。 + SQL 中表示的存储过程的主体。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除存储过程的操作。 + + + 表示创建表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要创建的表的名称。 + 要创建的表中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要创建的表的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取要创建的表中存在的自定义注释。 + 要创建的表中存在的自定义注释。 + + + 获取要包含在新表中的列。 + 要包含在新表中的列。 + + + 获取删除表的操作。 + 删除表的操作。 + + + 获取指示此操作是否会导致数据丢失的值。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要创建的表的名称。 + 要创建的表的名称。 + + + 获取或设置新表的主键。 + 新表的主键。 + + + 表示将从表中删除的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 要删除的列中存在的自定义注释。可能为 null 或为空。 + 表示还原删除操作的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 要删除的列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 表示还原删除操作的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 应从中删除列的表的名称。 + 要删除的列的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表示还原删除列的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要删除的列的名称。 + + + 获取要删除的列中存在的自定义注释。 + + + 获取应从中删除列的表的名称。 + + + 表示将从表中删除的外键约束。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表示还原删除外键约束的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 类的新实例。还应填充 PrincipalTable、DependentTable 和 DependentColumns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取删除外键列上关联的索引的操作。 + 删除索引的操作。 + + + 获取表示还原删除外键约束的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + 表示还原删除外键约束的操作。 + + + 获取一个值,该值指示更改是否具有破坏性。 + 如果更改具有破坏性,则为 true;否则为 false。 + + + 表示删除现有索引。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropIndexOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表示还原删除索引的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropIndexOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表示还原删除索引的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 表示从表中删除主键。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropPrimaryKeyOperation 类的新实例。还应填充 Table 和 Columns 属性。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 在更改迁移历史记录表时使用,以便可以重新构建表,而不是简单地删除和添加主键。 + 用于迁移历史记录表的创建表操作。 + + + 获取添加主键的操作。 + + + 从数据库中删除存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的存储过程的名称。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。始终返回 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取要删除的存储过程的名称。 + 要删除的存储过程的名称。 + + + 表示删除现有表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 要删除的表的列中存在的自定义注释。可能为 null 或为空。 + 表示还原删除表的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 要删除的表中存在的自定义注释。可能为 null 或为空。 + 要删除的表的列中存在的自定义注释。可能为 null 或为空。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 表示还原删除表的操作。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 初始化 DropTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要删除的表的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取表示还原删除表的操作。无法自动计算反向,如果未向构造函数提供反向,则此属性将返回 null。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要删除的表的名称。 + + + 获取要删除的表中存在的自定义注释。 + + + 获取要删除的表的各列中的自定义注释。 + + + 影响外键约束的更改的基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 ForeignKeyOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 外键列的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置其中存在外键列的表的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取指示是否为此外键约束提供了特定名称的值。 + + + 获取或设置此外键约束的名称。如果未提供名称,则将计算默认名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置外键约束面向的表的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 表示对迁移历史记录表的 DML 更改的操作。迁移历史记录表用于存储已应用于数据库的迁移的日志。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 HistoryOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 表示要应用于历史记录表的操作的命令目录树序列。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 表示要应用于历史记录表的操作的命令序列。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 影响索引的操作的常规基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 IndexOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 根据提供的列名创建一个默认索引名称。 + 默认索引名称。 + 用于创建默认索引名称的列名。 + + + 获取已编制索引的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取指示是否为此索引提供了特定名称的值。 + + + 获取或设置此索引的名称。如果未提供名称,则将计算默认名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置此索引所属的表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 表示修改数据库架构的操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 MigrationOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取提供程序可能会处理的其他参数。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取将还原此操作的操作。 + + + 获取指示此操作是否会导致数据丢失的值。 + + + 表示将存储过程移动到数据库中的新架构。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的存储过程的名称。 + 存储过程的新架构。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取要移动的存储过程的名称。 + 要移动的存储过程的名称。 + + + 获取存储过程的新架构。 + 存储过程的新架构。 + + + 表示将表从一个架构移至另一个架构。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 MoveTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要移动的表的名称。 + 要将表移至的架构的名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 在更改迁移历史记录表时使用,以便可以将数据移到新表。 + 模型的上下文键。 + + + 在更改迁移历史记录表时使用,以便可以重新构建表,而不是简单地删除和添加主键。 + 用于迁移历史记录表的创建表操作。 + + + 获取将表移回其原始架构的操作。 + + + 获取一个值,该值指示此更改是否将导致数据丢失。 + 如果此更改将导致数据丢失,则为 true;否则为 false。 + + + 获取一个指示表是否为系统表的值。 + 如果表是系统表,则为 true;否则为 false。 + + + 获取要移动的表的名称。 + + + 获取要将表移至的架构的名称。 + + + 表示一项可能因不受目标数据库提供程序的支持而无法执行的迁移操作。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 表示有关参数的信息。 + + + 使用指定类型初始化 ParameterModel 类的新实例。 + 此参数的数据类型。 + + + 使用指定类型和类型用法初始化 ParameterModel 类的新实例。 + 此参数的数据类型。 + 有关数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 获取或设置一个指示此实例是否为 out 参数的值。 + 如果此实例是 out 参数,则为 true;否则为 false。 + + + 用于表示影响主键的操作的常规基类。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 PrimaryKeyOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 返回主键的默认名称。 + 默认主键名称。 + 目标表名。 + + + 获取组成主键的列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取指示是否为此主键提供了特定名称的值。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取或设置此主键的名称。如果未提供名称,则将计算默认名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置包含主键的表的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 影响存储过程的迁移操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 存储过程的名称。 + SQL 中表示的存储过程的主体。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取 SQL 中表示的存储过程的主体。 + SQL 中表示的存储过程的主体。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取存储过程的名称。 + 存储过程的名称。 + + + 获取存储过程的参数。 + 存储过程的参数。 + + + 表示有关实体属性的信息。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 PropertyModel 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 此属性模型的数据类型。 + 有关数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 获取或设置要用作此属性模型的默认值的常量值。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置用作此属性模型的默认值的 SQL 表达式。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置一个指示此属性模型的长度是否固定的值。仅对数组数据类型有效。 + + + 获取或设置一个指示此属性模型是否支持 Unicode 字符的值。仅对文本数据类型有效。 + + + 获取或设置此属性模型的最大长度。仅对数组数据类型有效。 + + + 获取或设置属性模型的名称。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置此属性模型的精度。仅对十进制数据类型有效。 + + + 获取或设置此属性模型的小数位数。仅对十进制数据类型有效。 + + + 获取或设置要用于此属性模型的提供程序特定数据类型。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取此属性模型的数据类型。 + + + 获取有关此属性模型的数据类型的其他详细信息。这些信息包括最大长度、可为空属性等详细信息。 + + + 表示重命名现有列。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 RenameColumnOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 列所属表的名称。 + 要重命名的列的名称。 + 列的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取还原重命名的操作。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要重命名的列的名称。 + + + 获取列的新名称。 + + + 获取列所属表的名称。 + + + 表示现有索引的重命名操作。 + + + 初始化 RenameIndexOperation 类的新实例。 + 索引所属表的名称。 + 要重命名的索引的名称。 + 索引的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取还原索引原来名称的操作。 + 还原索引原来名称的操作。 + + + 获取是否重命名索引对操作具有破坏性。 + 如果重命名索引对操作具有破坏性,则为 true;否则为 false。 + + + 获取要重命名的索引的名称。 + 要重命名的索引的名称。 + + + 获取索引的新名称。 + 索引的新名称。 + + + 获取索引所属表的名称。 + 索引所属表的名称。 + + + 表示重命名数据库中的一个存储过程。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的存储过程的名称。 + 存储过程的新名称。 + 使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取将还原此操作的操作。 + + + 获取指示此操作是否会导致数据丢失的值。始终返回 false。 + + + 获取要重命名的存储过程的名称。 + 要重命名的存储过程的名称。 + + + 获取存储过程的新名称。 + 存储过程的新名称。 + + + 表示重命名现有表。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 RenameTableOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要重命名的表的名称。 + 表的新名称。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取还原重命名的操作。 + + + 获取一个值,该值指示更改是否具有破坏性。 + 如果更改具有破坏性,则为 true;否则为 false。 + + + 获取要重命名的表的名称。 + + + 获取表的新名称。 + + + 表示要直接对目标数据库执行的提供程序特定 SQL 语句。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 SqlOperation 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 要执行的 SQL。 + 提供程序可能会处理的其他参数。使用匿名类型语法指定参数,例如“new { SampleArgument = "MyValue" }”。 + + + 获取一个值,该值指示此操作是否会导致数据丢失。 + 如果此操作会导致数据丢失,则为 true;否则为 false。 + + + 获取要执行的 SQL。 + + + 获取或设置指示是否应在用于进行迁移过程事务的事务范围外执行此语句的值。如果设置为 true,则在迁移过程失败时,不会回滚此操作。 + + + 在对更新数据库操作编写脚本以存储已对数据库执行的操作时使用。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 用于确定是否需要对数据库应用此迁移的查询。这用于生成可在任何版本中对数据库运行的幂等 SQL 脚本。 + + + 为此更新数据库操作添加迁移。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 迁移的 ID。 + 迁移所应用的各项操作。 + + + 用于确定是否需要对数据库应用此迁移的查询。这用于生成可在任何版本中对数据库运行的幂等 SQL 脚本。 + + + 获取一个值,以指示其中任何操作是否会导致数据丢失。 + + + 获取在更新数据库期间应用的迁移。 + 在更新数据库期间应用的迁移。 + + + 表示要应用于数据库的迁移。 + + + 获取迁移的 ID。 + 迁移的 ID。 + + + 获取此迁移所应用的各项操作。 + 此迁移所应用的各项操作。 + + + 将提供程序不可知的迁移操作转换为数据库提供程序特定 SQL 命令的提供程序的常规基类。 + + + 初始化 类的新实例。 + + + 使用指定 中的 Facet 为指定 生成存储类型用法。 + 特定于存储的 TypeUsage + 存储类型的名称。 + 目标属性。 + + + 将一组迁移操作转换为数据库提供程序特定 SQL。 + 为执行迁移操作而要执行的 SQL 语句的列表。 + 要转换的操作。 + 表示将面向的数据库版本的标记。 + + + 为存储过程生成 SQL 主体。 + 存储过程的 SQL 主体。 + 表示针对插入、更新或删除操作的命令的命令目录树。 + 影响了参数名称的行。 + 提供程序清单标记。 + + + 获取或设置提供程序清单。 + 提供程序清单。 + + + 表示已转换为 SQL 语句的迁移操作。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 初始化 类的新实例。 + + + 为数据库提供程序获取或设置批处理终止符。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + 数据库提供程序的批处理终止符。 + + + 获取或设置为执行此迁移操作而要执行的 SQL。实体框架迁移 API 未被设计为接受不可信源(例如应用程序的最终用户)提供的输入。如果接受来自此类源的输入,则应该首先对其进行验证,然后传递给这些 API,以便防止 SQL 注入攻击之类的威胁。 + + + 获取或设置指示是否应在用于进行迁移过程事务的事务范围外执行此语句的值。如果设置为 true,则在迁移过程失败时,不会回滚此操作。 + + + 相同,但以部分信任模式运行,添加所生成缩进字符串的显式缓存,同时将仅包含 \r\n 或 \n 的字符串的写入识别为写入行,以确保在下一行正确缩进。 + + + 使用指定的文本编写器和默认 Tab 字符串,初始化 IndentedTextWriter 类的新实例。请注意,传递到此构造函数的编写器必须使用 属性指定的 + 用于输出的 。 + + + 使用指定的文本编写器和 Tab 字符串,初始化 IndentedTextWriter 类的新实例。请注意,传递到此构造函数的编写器必须使用 属性指定的 + 用于输出的 。 + 用于缩进的 Tab 字符串。 + + + 关闭正在向其写入的文档。 + + + 指定将由基础 TextWriter 使用的区域性。此静态属性为只读。请注意,传递到 的构造函数之一的任何编写器都必须使用此相同的区域性。区域性为 + + + 生成表示当前新行缩进级别的字符串。 + 一个空字符串,或者是包含所指定 Tab 字符串 .Indent 级别值的字符串。 + + + 指定默认 Tab 字符串。此字段为常数。 + + + 获取供文本编写器使用的编码。 + 指示供文本编写器使用的编码的 + + + 刷新流。 + + + 获取或设置要缩进的空格数。 + 要缩进的空格数。 + + + 获取要使用的 + 要使用的 + + + 获取或设置要使用的换行符。 + 要使用的换行符。 + + + 根据 属性为每个缩进级别输出一次 Tab 字符串。 + + + 将 Boolean 值的文本表示形式写入文本流。 + 要写入的 Boolean 值。 + + + 将字符写入文本流。 + 要写入的字符。 + + + 将字符数组写入文本流。 + 要写入的字符数组。 + + + 将字符的子数组写入文本流。 + 要从中写出数据的字符数组。 + 在缓冲区中开始索引。 + 要写入的字符数。 + + + 将 Double 的文本表示形式写入文本流。 + 要写入的 double。 + + + 将整数的文本表示形式写入文本流。 + 要写入的整数。 + + + 将 8 字节整数的文本表示形式写入文本流。 + 要写入的 8 字节整数。 + + + 将对象的文本表示形式写入文本流。 + 要写入的对象。 + + + 将 Single 的文本表示形式写入文本流。 + 要写入的 single。 + + + 将指定的字符串写入文本流。 + 要写入的字符串。 + + + 使用与指定语义相同的语义写出已格式化的字符串。 + 格式化字符串。 + 要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出已格式化的字符串。 + 要使用的格式化字符串。 + 第一个要写入已格式化字符串的对象。 + 第二个要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出已格式化的字符串。 + 要使用的格式化字符串。 + 要输出的参数数组。 + + + 写入一个行结束符。 + + + 将后跟行结束符的 Boolean 的文本表示形式写入文本流。 + 要写入的 Boolean。 + + + 将后跟行结束符的字符写入文本流。 + 要写入的字符。 + + + 将后跟行结束符的字符数组写入文本流。 + 要写入的字符数组。 + + + 将后跟行结束符的字符子数组写入文本流。 + 要从中写出数据的字符数组。 + 在缓冲区中开始索引。 + 要写入的字符数。 + + + 将后跟行结束符的 Double 的文本表示形式写入文本流。 + 要写入的 double。 + + + 将后跟行结束符的整数的文本表示形式写入文本流。 + 要写入的整数。 + + + 将后跟行结束符的 8 字节整数的文本表示形式写入文本流。 + 要写入的 8 字节整数。 + + + 将后跟行结束符的对象的文本表示形式写入文本流。 + 要写入的对象。 + + + 将后跟行结束符的 Single 的文本表示形式写入文本流。 + 要写入的 single。 + + + 将后跟行结束符的指定字符串写入文本流。 + 要写入的字符串。 + + + 使用与指定语义相同的语义写出后跟行结束符的已格式化字符串。 + 格式化字符串。 + 要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出后跟行结束符的已格式化字符串。 + 要使用的格式化字符串。 + 第一个要写入已格式化字符串的对象。 + 第二个要写入已格式化字符串的对象。 + + + 使用与指定语义相同的语义写出后跟行结束符的已格式化字符串。 + 要使用的格式化字符串。 + 要输出的参数数组。 + + + 将后跟行结束符的 UInt32 的文本表示形式写入文本流。 + 要输出的 UInt32。 + + + 将指定字符串写入无制表符的行。 + 要写入的字符串。 + + + 允许为模型中的复杂类型执行配置。可以通过对 使用 ComplexType 方法来获取 ComplexTypeConfiguration,也可以通过对 使用 Configurations 属性来注册从 ComplexTypeConfiguration 派生的自定义类型。 + 要配置的复杂类型。 + + + 初始化 ComplexTypeConfiguration 的一个新实例 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与指定对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 特定类型的哈希函数。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 ComplexTypeConfiguration 实例,以便多个调用可以链接在一起。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要忽略的属性的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 允许为模型中的实体类型执行配置。可以通过对 使用 Entity 方法来获取 EntityTypeConfiguration,也可以通过对 使用 Configurations 属性来注册从 EntityTypeConfiguration 派生的自定义类型。 + 要配置的实体类型。 + + + 初始化 EntityTypeConfiguration 的一个新实例 + + + 返回指定的配置模型是否等于当前配置模型。 + 如果指定的配置模型等于当前配置模型,则为 true;否则为 false。 + 要与当前对象进行比较的模型。 + + + 返回指定配置模型的哈希函数。 + 指定模型生成器的哈希函数。 + + + 获取当前模型配置的类型。 + 当前模型配置的类型。 + + + 配置要用于此实体类型的实体集名称。只能为每个集中的基类型配置实体集名称。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 实体集的名称。 + + + 配置此实体类型的主键属性。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 表示要用作主键的属性的 lambda 表达式。C#:t =&gt; t.Id VB.Net:Function(t) t.Id 如果主键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.Id1, t.Id2 } VB.Net:Function(t) New With { t.Id1, t.Id2 } + 键的类型。 + + + 从此实体类型配置一对多关系。 + 可用于进一步配置关系的配置对象。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 关系另一端的实体的类型。 + + + 从此实体类型配置可选关系。实体类型的实例将能保存到数据库,而无需指定此关系。数据库中的外键可为 null。 + 可用于进一步配置关系的配置对象。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 关系另一端的实体的类型。 + + + 通过此实体类型配置必需关系。除非指定此关系,否则实体类型的实例将无法保存到数据库。数据库中的外键不可为 null。 + 可用于进一步配置关系的配置对象。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 关系另一端的实体的类型。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要忽略的属性的类型。 + + + 允许与派生的实体类型映射到数据库架构的方式相关的高级配置。Map 调用是累加性的,后续调用不会重写已通过 Map 执行的配置。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 执行配置的操作。 + 要配置的派生实体类型。 + + + 允许与此实体类型映射到数据库架构的方式相关的高级配置。默认情况下,任何配置都还会应用于从此实体类型派生的任何类型。可以使用配置派生类型的 Map 的重载,或使用派生类型的 EntityTypeConfiguration,来配置派生类型。可以使用多个 Map 调用,在多个表之间拆分实体的属性。Map 调用是累加性的,后续调用不会重写已通过 Map 执行的配置。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 执行配置的操作。 + + + 将此类型配置为使用插入、更新和删除的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个配置实例,以便可以链接多个调用。 + + + 将此类型配置为使用插入、更新和删除的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 返回模型配置的字符串表示形式。 + 模型生成器的字符串表示形式。 + + + 配置此实体类型映射到的表名。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置此实体类型映射到的表名。 + 同一个 EntityTypeConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的数据库架构。 + + + 在模型创建过程中,生成无效模型时,由 引发的异常。 + + + 初始化 ModelValidationException 的一个新实例 + + + 使用序列化信息和流下文初始化 类的新实例。 + 序列化信息。 + 流上下文。 + + + 初始化 ModelValidationException 的一个新实例 + 异常消息。 + + + 初始化 ModelValidationException 的一个新实例 + 异常消息。 + 内部异常。 + + + 用于执行关系配置的基类。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 初始化 类的新实例。 + + + 允许为用于修改关系的存储过程执行配置。 + 将从中配置关系的实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 属性的类型。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 将属性配置为具有指定的最大长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。设置“null”将从属性中移除任何最大长度限制。 + + + 将属性配置为用作开放式并发标记。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。默认情况下, 属性是可选的。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为数据库中的行版本。实际数据类型将因使用的数据库提供程序而异。将属性设置为行版本会自动将属性配置为开放式并发标记。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可变长度。默认情况下, 属性为可变长度。 + 同一个 BinaryPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置可以支持级联删除功能的关系。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 将级联删除配置为对关系启用。 + + + 配置是否对关系启用级联删除。 + 指示是否启用级联删除的值。 + + + 允许实体和复杂类型的派生配置类向 注册。 + + + 添加到 中。只能为模型中的每个类型添加一个 + 同一个 ConfigurationRegistrar 实例,以便多个调用可以链接在一起。 + 要添加的复杂类型配置 + 要配置的复杂类型。 + + + 添加到 中。只能为模型中的每个类型添加一个 + 同一个 ConfigurationRegistrar 实例,以便多个调用可以链接在一起。 + 要添加的实体类型配置。 + 要配置的实体类型。 + + + 发现从给定的程序集中的 继承的所有类型并将每个发现的类型的实例添加到此注册器。 + 同一个 ConfigurationRegistrar 实例,以便多个调用可以链接在一起。 + 包含要添加的模型配置的程序集。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 创建一个约定,配置将用于在数据库中删除实体的存储过程。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此实例关联的哈希代码。 + 与此实例关联的哈希代码。 + + + 获取此实例的基础类型。 + 此实例的基础类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 创建一个约定,配置将用于在数据库中插入实体的存储过程。 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 获取当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取与配置关联的类型。 + 与配置关联的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性。 + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性的名称。 + 结果列的名称。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 表示一个配置用于在数据库修改实体的存储过程的约定。 + + + 创建一个约定,配置将用于在数据库中修改实体的存储过程。 + + + 配置用于删除实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 指定此配置是否等于特定对象。 + 如果此配置等于特定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与此配置关联的哈希代码。 + 与此配置关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于插入实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 返回 类的字符串表示形式。 + + 类的字符串表示形式。 + + + 配置用于更新实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 标志实体类型或复杂类型的基元属性。 + + + 获取该属性的 + 此属性的 + + + 指定此实例是否等于另一个对象。 + 如果此实例等于另一个对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。 + + + 将属性配置为具有指定的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + 属性的最大长度。 + + + 配置存储过程中用于此属性的参数的名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 参数的名称。 + + + 配置 属性的精度。如果数据库提供程序不支持列的数据类型的精度,则忽略该值。 + 同一个 实例,以便多个调用可以链接在一起。 + 属性的精度。 + + + 配置 属性的精度和小数位数。 + 同一个 实例,以便多个调用可以链接在一起。 + 属性的精度。 + 属性的小数位数。 + + + 将属性配置为用作开放式并发标记。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将此属性配置为实体类型的主键的一部分。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为数据库中的行版本。实际数据类型将因使用的数据库提供程序而异。将属性设置为行版本会自动将属性配置为开放式并发标记。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将属性配置为支持 Unicode 字符串内容。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 配置属性是否支持 Unicode 字符串内容。 + 同一个 实例,以便多个调用可以链接在一起。 + 指示属性是否支持 Unicode 字符串内容的值。 + + + 将属性配置为可变长度。属性在默认情况下为可变长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 允许自定义 实例使用的约定。可在 System.Data.Entity.ModelConfiguration.Conventions 命名空间中找到默认约定。 + + + 启用 的约定。 + 要启用的约定类型。 + + + 启用 的一个或多个约定。 + 要启用的约定。 + + + 启用 的约定。在指定一个约定后将运行此约定。 + 要启用的约定。 + 在其之后将运行启用的约定的约定类型。 + + + 启用 的配置约定。在指定一个约定前将运行此约定。 + 要启用的约定。 + 在其之前将运行启用的约定的约定类型。 + + + 发现给定程序集中的所有约定并将它们添加到 + 包含要添加的约定的程序集。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 禁用 的约定。可在 System.Data.Entity.ModelConfiguration.Conventions 命名空间中找到可移除的默认约定。 + 要禁用的约定的类型。 + + + 禁用 的一个或多个约定。 + 要禁用的约定。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 允许为模型中的实体类型执行配置。通过轻型约定可使用此配置功能。 + + + 获取此实体类型的 + 此实体类型的 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置要用于此实体类型的实体集名称。只能为每个集中的基类型配置实体集名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 实体集的名称。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性的名称。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 要用作主键的属性的名称。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 从模型中排除此实体类型,使其不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + 要配置的属性。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + 要配置的属性的名称。 + + + 将此实体类型更改为复杂类型。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将此类型配置为使用插入、更新和删除的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个配置实例,以便可以链接多个调用。 + + + 将此类型配置为使用插入、更新和删除的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 配置在此类型上定义的属性。 + 可用于配置属性的配置对象。 + 要配置的属性。 + + + 配置在此类型上定义的属性。 + 可用于配置属性的配置对象。 + 要配置的属性的名称。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的数据库架构。 + + + 允许为模型中的实体类型执行配置。通过轻型约定可使用此配置功能。 + 实体类型继承的类型。 + + + 获取此实体类型的 + 此实体类型的 + + + 确定指定对象是否等于当前实例。 + 如果指定的对象等于当前实例,则为 true;否则为 false。 + 要比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置要用于此实体类型的实体集名称。只能为每个集中的基类型配置实体集名称。 + 同一个 实例,以便多个调用可以链接在一起。 + 实体集的名称。 + + + 配置此实体类型的主键属性。 + 同一个 实例,以便多个调用可以链接在一起。 + 表示要用作主键的属性的 lambda 表达式。C#:t =&gt; t.Id VB.Net:Function(t) t.Id 如果主键由多个属性组成,则请指定包括这些属性的匿名类型。C#:t =&gt; new { t.Id1, t.Id2 } VB.Net:Function(t) New With { t.Id1, t.Id2 } + 键的类型。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 进行序列化的字符串或其他类型。 + + + 从模型中排除此实体类型,使其不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 从模型中排除某个属性,使该属性不会映射到数据库。 + 同一个 实例,以便多个调用可以链接在一起。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要忽略的属性的类型。 + + + 将此实体类型更改为复杂类型。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将此类型配置为使用插入、更新和删除的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个配置实例,以便可以链接多个调用。 + + + 将此类型配置为使用插入、更新和删除的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 配置在此类型上定义的属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置此实体类型映射到的表名。 + 同一个 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的数据库架构。 + + + 创建一个约定,配置将用于在数据库中更新实体的存储过程。 + + + 确定此实例是否与指定对象相同。 + 如果此实例与指定对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 返回与当前实例关联的类型。 + 与当前实例关联的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性。 + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置参数的属性的名称。 + 参数名称的当前值。 + 参数名称的原始值。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性。 + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 将为其配置结果的属性的名称。 + 结果列的名称。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 配置属性的精度。如果数据库提供程序不支持列的数据类型的精度,则忽略该值。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的精度。 + + + 将属性配置为用作开放式并发标记。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。默认情况下, 属性是必需的。 + 同一个 DateTimePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 配置属性的精度和小数位数。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的精度。 + 属性的小数位数。 + + + 将属性配置为用作开放式并发标记。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。默认情况下, 属性是必需的。 + 同一个 DecimalPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 允许为用于删除实体的存储过程执行配置。 + 可使用存储过程进行删除的实体的类型。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 检索当前实例的类型。 + 当前实例的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 配置可以支持在对象模型中公开的外键属性的关系。通过 Code First Fluent API 可使用此配置功能,请参见 + 从属实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 将关系配置为使用在对象模型中公开的外键属性。如果未在对象模型中公开外键属性,则使用 Map 方法。 + 可用于进一步配置关系的配置对象。 + 表示要用作外键的属性的 lambda 表达式。如果外键由多个属性组成,请指定包括这些属性的匿名类型。在使用多个外键属性时,指定这些属性的顺序必须与为主体实体类型配置主键属性的顺序相同。 + 键的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置实体类型或实体类型中属性子集的表和列映射。通过 Code First Fluent API 可使用此配置功能,请参见 + 要映射的实体类型。 + + + 初始化 类的新实例。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在此实体映射到的表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 重新映射从基类型继承的所有属性。当将派生类型配置为映射到单独的表时,这会使所有属性都包含在该表中,而不仅仅是非继承的属性。这称为“每个具体类型一张表”(TPC) 映射。 + 同一个配置实例,以便可以链接多个调用。 + + + 配置将包含在此映射片段中的属性。如果未调用此方法,则将配置尚未包含在映射片段中的所有属性。 + 针对包含要映射的属性的匿名类型的 lambda 表达式。C#:t =&gt; new { t.Id, t.Property1, t.Property2 } VB.Net:Function(t) New With { p.Id, t.Property1, t.Property2 } + 包含要映射的属性的匿名类型。 + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置将包含在此映射片段中的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 配置用于区分继承层次结构中各个类型的鉴别器条件。 + 用于进一步配置鉴别器条件的配置对象。 + 表示要用于鉴别各个类型的属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要用于鉴别各个类型的属性的类型。 + + + 配置用于区分继承层次结构中的各个类型的鉴别器列。 + 用于进一步配置鉴别器列和值的配置对象。 + 鉴别器列的名称。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置要映射到的表名。 + 同一个配置实例,以便可以链接多个调用。 + 表的名称。 + + + 配置要映射到的表名和架构。 + 同一个配置实例,以便可以链接多个调用。 + 表的名称。 + 表的架构。 + + + 配置未在对象模型中公开外键属性的关系的表和列映射。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的 。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 在已使用 配置的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 已使用 HasKey 方法配置的列的名称。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置外键的列名。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 外键列名。在使用多个外键属性时,必须按照为目标实体类型配置主键属性的顺序来指定这些属性。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置外键列所在表的名称。指定的表必须已针对实体类型进行映射。如果要外键位于其自己的表中,则对 使用 Map 方法来执行实体拆分,以创建只有主键属性的表。然后可以使用此方法将外键添加到表。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置外键列所在表的名称和架构。指定的表必须已针对实体类型进行映射。如果要外键位于其自己的表中,则对 使用 Map 方法来执行实体拆分,以创建只有主键属性的表。然后可以使用此方法将外键添加到表。 + 同一个 ForeignKeyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的架构。 + + + 配置只能支持未在对象模型中公开的外键属性的关系。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象比较的对象 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 将关系配置为使用未在对象模型中公开的外键属性。可通过指定配置操作来自定义列和表。如果指定了空的配置操作,则约定将生成列名。如果在对象模型中公开了外键属性,则使用 HasForeignKey 方法。并非所有关系都支持在对象模型中公开外键属性。 + 可用于进一步配置关系的配置对象。 + 配置外键列和表的操作。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 表示允许为用于插入实体的存储过程执行配置。 + 可使用存储过程进行插入的实体的类型。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取此实例的类型。 + 此实例的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 用于为实体类型或复杂类型配置具有长度方面的列。此配置功能由 Code First Fluent API 公开,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 将列配置为具有指定的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + 列的最大长度。将值设置为 null 将从列中移除任何最大长度限制,并且会将默认长度用于数据库列。 + + + 将列配置为固定长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将列配置为允许使用数据库提供程序支持的最大长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将列配置为可变长度。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 用于为实体类型或复杂类型配置具有长度方面的属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 将属性配置为具有指定的最大长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。设置为“null”将从属性中移除任何最大长度限制,并且会将默认长度用于数据库列。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可变长度。属性在默认情况下为可变长度。 + 同一个 LengthPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 通过实体类型配置多关系。 + 关系源自的实体类型。 + 作为关系目标的实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 将关系配置为 many:many,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 many:many,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 many:optional,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 many:optional,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 many:required,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 many:required,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置 many:many 关系的表和列映射。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 在联接表的模型中设置注释。稍后可在处理表时(如创建迁移时)使用此注释值。 + 同一个配置实例,以便可以链接多个调用。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置左外键的列名。左外键指向在 HasMany 调用中指定的导航属性的父实体。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 外键列名。在使用多个外键属性时,必须按照为目标实体类型配置主键属性的顺序来指定这些属性。 + + + 配置右外键的列名。右外键指向在 WithMany 调用中指定的导航属性的父实体。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 外键列名。在使用多个外键属性时,必须按照为目标实体类型配置主键属性的顺序来指定这些属性。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 配置关系的联接表名。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + + + 配置关系的联接表名和架构。 + 同一个 ManyToManyAssociationMappingConfiguration 实例,以便多个调用可以链接在一起。 + 表的名称。 + 表的架构。 + + + 允许为用于修改多对多关系的存储过程执行配置。 + 将从中配置关系的实体的类型。 + 关系另一端的目标实体的类型。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 检索此当前实例的类型。 + 此当前实例的类型。 + + + 设置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 过程的名称。 + + + 设置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 过程的名称。 + 架构的名称。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为左键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + + + 为右键值配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数的名称。 + 要配置的属性的类型。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 允许为用于修改多对多关系的存储过程执行配置。 + 将从中配置关系的实体的类型。 + 关系另一端的目标实体的类型。 + + + 配置用于删除关系的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于插入关系的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 将当前实例的值转换为其等效字符串表示形式。 + 当前实例的字符串表示形式。 + + + 配置 many:many 关系。通过 Code First Fluent API 可使用此配置功能,请参见 + 在 HasMany 调用中指定的导航属性的父实体类型。 + 在 WithMany 调用中指定的导航属性的父实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于存储关系的外键列和表。 + 同一个 实例,以便多个调用可以链接在一起。 + 配置外键列和表的操作。 + + + 配置将用于修改此关系的存储过程。将使用过程名称和参数名称的默认约定。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 配置将用于修改此关系的存储过程。 + 同一个 实例,以便多个调用可以链接在一起。 + 用于重写过程名称和参数名称默认约定的配置。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 执行用于在数据库中修改实体的存储过程的配置。 + + + 允许为用于修改实体的存储过程执行配置。 + 可使用存储过程进行修改的实体的类型。 + + + 配置用于删除实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 指定此实例是否等同于指定对象。 + 如果此实例等同于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于插入实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 配置用于更新实体的存储过程。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,用于执行对存储过程的配置。 + + + 配置一个条件,该条件用于基于赋给属性的值来区分继承层次结构中的各个类型。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 将条件配置为属性中需要值。对于未向存储此属性的列赋值的行,假定这些行属于此实体类型的基类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 通过实体类型配置可选关系。 + 关系源自的实体类型。 + 作为关系目标的实体类型。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 将关系配置为 optional:many,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:many,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 optional:optional,且在关系的另一端无导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:optional,且在关系的另一端有导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 optional:optional,且在关系的另一端无导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:optional,且在关系的另一端有导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。 + + + 将关系配置为 optional:required,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 optional:required,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 通过实体类型配置基元列。 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于存储属性的基元列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的基元列的数据类型。 + 同一个 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 将基元列配置为可选列。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 将基元列配置为必需列。 + 同一个 实例,以便多个调用可以链接在一起。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 提供用于配置实体类型或复杂类型的基元属性的方法。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定此实例是否与指定对象相同。 + 如果此实例与指定对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 返回当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储属性的数据库列的名称。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 配置存储过程中用于此属性的参数的名称。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 参数名。 + + + 将属性配置为用作开放式并发标记。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 PrimitivePropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 允许基于模型中的属性为轻型约定执行配置。 + + + 允许此约定应用到的属性的配置。 + 执行配置的操作。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 返回此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在配置期间捕获以后要使用的值时基于谓词筛选此约定应用到的属性。 + 一个 实例,以便多个调用可以链接在一起。 + 用于为每个属性捕获值的函数。如果值为 null,则筛选掉该属性。 + 捕获的值的类型。 + + + 返回表示当前对象的字符串。 + 当前对象。 + + + 基于谓词筛选此约定应用到的属性。 + 一个 实例,以便多个调用可以链接在一起。 + 用于测试每个属性是否满足条件的函数。 + + + 允许基于模型中实体类型的属性和捕获的值为轻型约定执行配置。 + 捕获的值的类型。 + + + 允许此约定应用到的属性的配置。 + 使用捕获的值对 执行配置的操作。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 用于配置映射片段中的属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 PropertyMappingConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 序列化的字符串或其他一些类型 + + + 配置用于存储映射片段中的属性的数据库列的名称。 + 同一个 PropertyMappingConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 通过实体类型配置必需关系。 + 关系源自的实体类型。 + 作为关系目标的实体类型。 + + + 指定指定的对象是否与当前对象相同。 + 如果指定的对象与当前对象相同,则为 true;否则为 false。 + 要比较的对象。 + + + 获取与当前对象关联的哈希代码。 + 与当前对象关联的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回当前对象的字符串表示形式。 + 当前对象的字符串表示形式。 + + + 将关系配置为 required:many,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:many,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 required:optional,且在关系的另一端无导航属性。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:optional,且在关系的另一端有导航属性。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 required:required,且在关系的另一端无导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:required,且在关系的另一端有导航属性。要配置的实体类型将成为依赖对象,且包含主体的外键。作为关系目标的实体类型将成为关系中的主体。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 将关系配置为 required:required,且在关系的另一端无导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + + + 将关系配置为 required:required,且在关系的另一端有导航属性。要配置的实体类型将成为关系中的主体。作为关系目标的实体类型将成为依赖对象,且包含主体的外键。 + 可用于进一步配置关系的配置对象。 + 一个 lambda 表达式,表示关系另一端的导航属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置用于存储字符串值的数据库列。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的类型。 + 当前实例的准确运行时类型。 + + + 配置数据库列的顺序。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置数据库列的数据类型。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 将属性配置为具有指定的最大长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。如果设置为“null”,将对此列使用默认长度。 + + + 将列配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为允许使用数据库提供程序支持的最大长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为可选列。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为必需。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 将列配置为支持 Unicode 字符串内容。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置列是否支持 Unicode 字符串内容。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + 指示列是否支持 Unicode 字符串内容的值。指定“null”将从列中移除 Unicode 方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将列配置为可变长度。列在默认情况下为可变长度。 + 同一个 StringColumnConfiguration 实例,以便多个调用可以链接在一起。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 用于配置实体类型或复杂类型的 属性。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 在用于存储属性的数据库列的模型中设置注释。可在稍后处理列时(如创建迁移时)使用此注释值。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 注释名称,必须是有效的 C#/EDM 标识符。 + 注释值,可以是可使用 进行序列化的字符串或其他类型。 + + + 配置用于存储属性的数据库列的名称。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 列的名称。 + + + 配置用于存储属性的数据库列的顺序。如果实体类型具有组合键,则此方法还用于指定键顺序。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 此列应在数据库表中出现的顺序。 + + + 配置用于存储属性的数据库列的数据类型。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 特定于数据库提供程序的数据类型的名称。 + + + 配置数据库如何生成属性的值。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 用于在数据库中生成属性值的模式。设置“null”将导致使用默认选项,它可能为“None”、“Identity”或“Computed”,具体取决于属性的类型及其在模型中的语义(例如主键的处理方式不同)以及所使用的是哪组约定。 + + + 将属性配置为具有指定的最大长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 属性的最大长度。设置为“null”将从属性中移除任何最大长度限制,并且会将默认长度用于数据库列。 + + + 将属性配置为用作开放式并发标记。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否要用作开放式并发标记。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否为并发标记的值。指定“null”将从属性中移除并发标记方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为固定长度。使用 HasMaxLength 可设置属性的固定长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为允许使用数据库提供程序支持的最大长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为可选属性。用于存储此属性的数据库列将可以为 null。默认情况下, 属性是可选的。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为必需属性。用于存储此属性的数据库列将不可以为 null。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 将属性配置为支持 Unicode 字符串内容。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 配置属性是否支持 Unicode 字符串内容。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + 指示属性是否支持 Unicode 字符串内容的值。指定“null”将从属性中移除 Unicode 方面。指定“null”将导致与指定“false”相同的运行时行为。 + + + 将属性配置为可变长度。默认情况下, 属性为可变长度。 + 同一个 StringPropertyConfiguration 实例,以便多个调用可以链接在一起。 + + + 允许为模型中的类型执行配置。 + 要配置的类型。 + + + 初始化 类的新实例。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要与当前对象进行比较的对象。 + + + 用作特定类型的哈希函数。 + 当前对象的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + + + 配置在此类型上定义的 属性。 + 可用于配置属性的配置对象。 + 一个 lambda 表达式,表示将要配置的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 要配置的属性的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 允许基于模型中的实体类型为轻型约定执行配置。 + + + 允许此约定应用到的实体类型的配置。 + 执行配置的操作。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在配置期间捕获以后要使用的值时基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于为每个实体类型捕获值的函数。如果值为 null,则筛选掉该实体类型。 + 捕获的值的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于测试每个实体类型是否满足条件的函数。 + + + 允许基于模型中从通用指定类型继承的实体类型为轻型约定执行配置。 + 此约定应用到的实体类型的通用类型。 + + + 允许此约定应用到的实体类型的配置。 + 执行配置的操作。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 在配置期间捕获以后要使用的值时基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于为每个实体类型捕获值的函数。如果值为 null,则筛选掉该实体类型。 + 捕获的值的类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 基于谓词筛选此约定应用到的实体类型。 + 一个 实例,以便多个调用可以链接在一起。 + 用于测试每个实体类型是否满足条件的函数。 + + + 允许基于模型中的实体类型和捕获的值为轻型约定执行配置。 + 捕获的值的类型。 + + + 允许此约定应用到的实体类型的配置。 + 使用捕获的值对 执行配置的操作。 + + + 确定指定的对象是否等于当前对象。 + 如果指定的对象等于当前对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索当前实例的哈希代码。 + 当前实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 将当前实例的值转换为其等效字符串表示。 + 当前实例的字符串表示形式。 + + + 允许基于模型中从通用指定类型继承的实体类型和捕获的值为轻型约定执行配置。 + 此约定应用到的实体类型的通用类型。 + 捕获的值的类型。 + + + 允许此约定应用到的实体类型的配置。 + 使用捕获的值对 执行配置的操作。 + + + 指定此实例是否等于指定对象。 + 如果此实例等于指定对象,则为 true;否则为 false。 + 要比较的对象。 + + + 获取此实例的哈希代码。 + 此实例的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 返回此实例的字符串表示形式。 + 此实例的字符串表示形式。 + + + 允许为用于更新实体的存储过程执行配置。 + 可使用存储过程进行更新的实体的类型。 + + + 确定指定对象是否等于此实例对象。 + 如果指定对象等于此实例对象,则为 true;否则为 false。 + 要比较的对象。 + + + 检索哈希代码。 + 哈希代码。 + + + 检索此配置的类型。 + 此配置的类型。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + + + 配置存储过程的名称。 + 同一个配置实例,以便可以链接多个调用。 + 存储过程的名称。 + 架构名称。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为外键属性未包含在此类中的关系配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 表示关系的导航属性的 lambda 表达式。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 执行配置的 lambda 表达式。 + 关系中主体实体的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名。 + 要配置的属性的类型。 + + + 为此存储过程配置参数。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置参数的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 参数名称的当前值。 + 参数名称的原始值。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + + + 将此存储过程的结果列配置为映射到属性。这适用于数据库生成的列。 + 同一个配置实例,以便可以链接多个调用。 + 一个 lambda 表达式,表示要为其配置结果的属性。C#:t =&gt; t.MyProperty VB.Net:Function(t) t.MyProperty + 结果列的名称。 + 要配置的属性的类型。 + + + 配置将返回受此存储过程影响的行的输出参数。 + 同一个配置实例,以便可以链接多个调用。 + 参数名。 + + + 将此实例的值转变为其等效字符串表示形式。 + 此实例的值的字符串表示形式。 + + + 配置用于区分继承层次结构中各个类型的鉴别器列。通过 Code First Fluent API 可使用此配置功能,请参见 + + + 确定指定的对象是否等于当前对象。 + 如果对象相等,则为 true;否则为 false。 + 一个对象。 + + + 用作特定类型的哈希函数。 + 当前类型的哈希代码。 + + + 获取当前实例的 + 当前实例的准确运行时类型。 + + + 配置用于标识通过继承层次结构中其他类型配置的实体类型的鉴别器值。 + 用来配置用于存储鉴别器值的列的配置对象。 + 用于标识实体类型的值。 + 鉴别器值的类型。 + + + 配置用于标识通过继承层次结构中其他类型配置的实体类型的鉴别器值。 + 用来配置用于存储鉴别器值的列的配置对象。 + 用于标识实体类型的值。 + + + 配置用于标识通过继承层次结构中其他类型配置的实体类型的鉴别器值。 + 用来配置用于存储鉴别器值的列的配置对象。 + 用于标识实体类型的值。 + 鉴别器值的类型。 + + + 返回表示当前对象的字符串。 + 表示当前对象的字符串。 + + + 提供用于在相关类型之间只存在一对导航属性时,将导航属性检测为相互反向的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 从 .NET 属性 (Property) 读取属性 (Attribute) 并根据这些属性 (Attribute) 生成列注释的 Code First 约定的通用类。 + 要发现的属性类型。 + 将创建的注释类型。 + + + 构造一个将创建具有给定名称且使用给定工厂委托的列注释的约定。 + 要创建的注释的名称。 + 用于在各列中创建注释的工厂。 + + + 从 .NET 类型读取属性并根据这些属性生成表注释的 Code First 约定的通用类。 + 要发现的属性类型。 + 将创建的注释类型。 + + + 构造一个将创建具有给定名称且使用给定工厂委托的表注释的约定。 + 要创建的注释的名称。 + 用于在各表中创建注释的工厂。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到指定配置。 + 配置。 + 列属性。 + + + 表示通过 API 应用指定的列排序的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 验证为列提供的排序配置。此基实现是一个空操作。 + 列所属表的名称。 + 表的定义。 + + + 用于应用通过 API 指定的列顺序的约定。如果检测重复配置的列顺序,则此约定引发。 + + + 初始化 类的新实例。 + + + 验证为列提供的排序配置,以确保没有为两个列提供相同的序号。 + 列所属表的名称。 + 表的定义。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 应用具有给定配置和特性的约定。 + 配置。 + 属性。 + + + 表示用于在类型没有主键、没有映射的基类型且没有导航属性的情况下将其配置为复杂类型的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 表示处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 不重写配置的约定。 + + + 派生的类可以使用默认构造函数应用更改模型配置的一组规则。 + + + 开始配置适用于模型中所有属性的轻型约定。 + 约定的配置对象。 + + + 开始配置适用于模型中指定类型的所有基元属性的轻型约定。 + 约定的配置对象。 + 此约定将适用于的属性类型。 + + + 开始配置应用于从指定类型派生或实现指定类型的模型中的所有映射类型的轻型约定。 + 约定的配置对象。 + 此约定将适用于的实体类型。 + + + 开始配置应用于模型中所有映射类型的轻型约定。 + 约定的配置对象。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有给定配置的属性。 + 配置。 + 属性。 + + + 用于为小数属性将精度设置为 18 并将小数位数设置为 2 的约定。 + + + 使用默认值初始化 的新实例。 + + + 使用指定的精度和小数位数初始化 类的新实例。 + Precision + Scale + + + 将此约定应用于属性。 + 项。 + 模型。 + + + 表示用于移动主键属性使其首先出现的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 表示用于基于外键属性的 CLR 可为 null 性区分可选和必需关系的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 表示发现外键属性的约定的基类。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 项。 + 模型。 + + + 如果 应为外键的一部分,则当被重写时,返回 true。 + 如果 dependentProperty 应为外键的一部分,则为 true;否则为 false。 + 所配置的关联类型。 + 依赖端。 + 依赖端的候选属性。 + 主体端实体类型。 + 主体端的键属性,该键属性是外键的候选目标。 + + + 获取约定是否支持具有其间定义的多个关联的实体类型对。 + 如果约定支持具有其间定义的多个关联的实体类型对,则为 true;否则为 false。 + + + 表示为外键引入索引的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 项。 + + + 表示用于处理模型中导航属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 数据库模型。 + + + 表示用于处理在模型中的外键属性上发现的 的实例的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到指定属性。 + 属性信息。 + 要为模型中实体类型执行的配置。 + 从数据库映射中排除的属性或类。 + + + 在创建模型后对模型的概念性部分执行操作的约定。 + 此约定操作的元数据项的类型。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 标识可以添加到 实例或从该实例中移除的约定。 + + + 用于检测主键属性的约定。按优先级顺序的可识别的命名模式为:1. ''Id' 2。[type name]Id。主键检测不区分大小写。 + + + 初始化 类的新实例。 + + + 要匹配 类的约定。 + 要匹配的 类。 + 实体类型。 + 基元属性的集合。 + + + 用于发现属性 (Property) 上的 属性 (Attribute),以及在模型中生成 列注释的约定。 + + + 构造此约定的新实例。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有配置的指定模型。 + 成员信息。 + 配置。 + 属性。 + + + 在创建模型后对模型的数据库部分执行操作的约定。 + 此约定操作的元数据项的类型。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 用于处理在模型中属性上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 表示发现主键属性的约定的基类。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 如果被重写,则返回将成为主键一部分的属性子集。 + 应成为主键一部分的属性。 + 实体类型。 + 实体的基元类型。 + + + 用于将级联删除从多对多关系中涉及的两个表添加到联接表的约定。 + + + 初始化 类的新实例。 + + + 确保在映射继承的属性时不创建无效/不支持的映射的约定 + + + 初始化 类的新实例。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有指定配置的属性。 + 配置。 + 属性。 + + + 用于发现名称是从属导航属性名称和主体类型主键属性名称组合的外键属性的约定。 + + + 初始化 类的新实例。 + + + 匹配依赖的实体模型的键。 + 返回 + 关联类型元数据对象。 + 依赖的关联的端。 + 依赖的属性。 + 主体实体类型 + 主体键属性。 + + + 获取或设置一个值,该值指示约定是否支持多个关联。 + 如果约定支持多个关联,则为 true;否则为 false。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到指定属性。 + 属性信息。 + 要为模型中实体类型执行的配置。 + 从数据库映射中排除的属性或类。 + + + 表示用于处理在模型中类型上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到指定属性。 + 要为模型中实体类型执行的配置。 + 从数据库映射中排除的属性或类。 + + + 提供用于为任何必需关系启用级联删除的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 数据库模型。 + + + 提供用于将从属实体类型的主键配置为一对一关系中外键的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 数据库模型。 + + + 表示用于将实体集名称设置为实体类型名称的复数版本的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 实体集。 + 数据库模型 + + + 表示用于将表名称设置为实体类型名称的复数版本的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于模型中的一项。 + 要应用约定的项。 + 模型。 + + + 用于发现名称与主体类型主键属性名称匹配的外键属性的约定。 + + + 初始化 类的新实例。 + + + 匹配与约定关联的依赖键属性。 + 匹配的依赖键属性。 + 关联类型。 + 依赖的关联端。 + 依赖的属性。 + 主体实体类型。 + 主体键属性。 + + + 用于处理在模型的基元属性 (Property) 中找到的 CLR 属性 (Attribute) 的约定的基类。 + 要查找的特性的类型。 + + + 初始化 类的新实例。 + + + 对已应用 TAttribute 类型的属性 (Attribute) 的属性 (Property) 应用此约定。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 用于处理在模型的类型属性 (Property) 中找到的 CLR 属性 (Attribute) 的约定的基类。 + 要查找的特性的类型。 + + + 初始化 类的新实例。 + + + 对已应用 TAttribute 类型的属性 (Attribute) 的属性 (Property) 应用此约定。 + 具有该属性 (Attribute) 的属性 (Property) 的成员信息。 + 包含该属性的类的配置。 + 属性。 + + + 表示用于为其类型支持长度方面的属性设置最大长度的约定。默认值为 128。 + + + 使用默认长度初始化 类的新实例。 + + + 使用指定长度初始化 的新实例。 + 属性的最大长度。 + + + 应用具有给定模型配置的约定。 + 项。 + 映射模型。 + + + 应用具有给定模型配置的约定。 + 项。 + 映射模型。 + + + 应用具有给定模型配置的约定。 + 项。 + 映射模型。 + + + 用于处理在模型中导航属性上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 表示用于处理模型中基元属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将约定应用到具有给定配置的属性。 + 配置。 + 属性。 + + + 表示为其类型在 SqlCe 为提供程序时支持长度方面的属性设置默认最大长度为 4000 的约定。 + + + 使用默认长度初始化 类的新实例。 + + + 初始化 的新实例。 + 属性的默认最大长度。 + + + 将此约定应用到给定的提供程序。 + 项。 + 模型。 + + + 将此约定应用到给定的提供程序。 + 项。 + 模型。 + + + 表示用于将整数主键配置为标识的约定。 + + + 初始化 类的新实例。 + + + 将配置应用到映射模型中的指定项。 + 项。 + 映射模型。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 应用具有给定配置和特性的约定。 + 配置。 + 属性。 + + + 表示用于处理在模型中类型上发现的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 表示用于处理模型中属性上找到的 实例的约定。 + + + 初始化 类的新实例。 + + + 将此约定应用于属性。 + 具有该属性 (Attribute) 的属性 (Property) 的配置。 + 属性。 + + + 用于处理在模型中找到的 CLR 特性的约定的基类。 + 要查找的特性的类型。 + + + 初始化 类的新实例。 + + + 将此约定应用于已应用 TAttribute 类型的属性的类。 + 包含该属性的类的配置。 + 属性。 + + + 用于发现名称是主体类型名称和主体类型主键属性名称组合的外键属性的约定。 + + + 初始化 类的新实例。 + + + 确定依赖键的属性是否与当前键匹配。 + 如果依赖键的属性与当前键匹配,则为 true;否则为 false。 + 关联类型。 + 端上依赖的关联。 + 依赖的属性。 + 主体实体类型。 + 主体键属性。 + + + 表示大地(圆地球)坐标系中的数据。 + + + 获取指示此 DbGeography 值面积的可为 null 的双精度值,如果此值不表示面,则可能为 null。 + 指示此 DbGeography 值的面积、可以为 null 的双精度值。 + + + 生成此 DbGeography 值的已知二进制表示形式。 + 此 DbGeography 值的已知二进制表示形式。 + + + 生成此 DbGeography 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeography 值的 GML 表示形式的字符串。 + + + 生成此 DbGeography 值的已知文本表示形式。仅包含点的经度和纬度。 + 包含此 DbGeography 值的已知文本表示形式的字符串。 + + + 返回一个表示点并集的地理对象,该并集中所有点与地理实例的距离都小于或等于指定的值。 + 一个地理对象,表示所有点的并集 + 距离。 + + + 获取与坐标系关联的标识符。 + 与坐标系关联的标识符。 + + + 获取地理值 (WGS 84) 的默认坐标系 ID (SRID) + 地理值 (WGS 84) 的默认坐标系 ID (SRID) + + + 计算此 DbGeography 值和另一 DbGeography 值的差异。 + 一个新 DbGeography 值,表示此地理值与其他地理值之间的差异。 + 应计算它与此值的差异的地理值。 + + + 获取给定 值的维度(如果值为集合)或最大的元素维度。 + 给定 值的维度。 + + + 确定此 DbGeography 在空间上是否与指定的 DbGeography 参数不相交。 + 如果其他地理值不与此地理值相交,则为 true;否则为 false。 + 应与此地理值比较不相交性的地理值。 + + + 计算此 DbGeography 值和另一 DbGeography 值中两个最接近的点之间的距离。 + 一个双精度值,指定此地理值和其他地理值中,最接近两点之间的距离。 + 应计算与此值的距离的地理值。 + + + 如果表示地理集合,则从特定位置返回此 DbGeography 值的元素。&amp;lt;param name="index"&amp;gt;此地理值中,应采用该处元素的位置。&amp;lt;/param&amp;gt;&amp;lt;returns&amp;gt;如果此地理值表示其他地理值的集合,则为它当中指定位置处的元素;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值在特定位置处的元素 + 索引。 + + + 如果此 DbGeography 值表示地理集合,则获取它当中的元素个数。&amp;lt;returns&amp;gt;如果此地理值表示其他地理值的集合,则为它当中的元素个数;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值中的元素数目。 + + + 如果此 DbGeography 值表示点,则获取它的海拔(Z 坐标)值。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的海拔(Z 坐标)值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的海拔(Z 坐标)。 + + + 获取表示此值起始点的 DbGeography 值,如果 DbGeography 值不表示曲线,此值可能是 null。 + 表示此值起点的 DbGeography 值。 + + + 基于指定的已知二进制值创建新的 值。 + 使用默认的地理坐标系标识符 (SRID) ()、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 使用默认的地理坐标系标识符 (SRID) ()、由 GML 值定义的新 DbGeography 值。 + 包含地理值的地理标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由 GML 值定义的新 DbGeography 值。 + 包含地理值的地理标记语言 (GML) 表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值创建新的 值。 + 使用默认的地理坐标系标识符 (SRID) ()、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 计算此 DbGeography 值和另一 DbGeography 值的交集。 + 一个新 DbGeography 值,表示此地理值与其他地理值之间的交集。 + 应计算与此值的交集的地理值。 + + + 确定此 DbGeography 值在空间上是否和指定的 DbGeography 参数相交。 + 如果其他地理值与此地理值相交,则为 true;否则为 false。 + 应与此地理值比较相交性的地理值。 + + + 获取指示此 DbGeography 值是否为闭合的可为 null 的布尔值,如果此值不表示曲线,则可能为 null。 + 如果此 DbGeography 值为闭合值,则为 true;否则为 false。 + + + 获取一个可为 null 的布尔值,它指示此 DbGeography 值是否为空。 + 如果此 DbGeography 值为空,则为 true;否则为 false。 + + + 如果此 DbGeography 值表示点,则获取它的纬度坐标。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的纬度坐标值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的纬度坐标。 + + + 获取指示此 DbGeography 值长度的可为 null 的双精度值,如果此值不表示曲线,则可能为 null。 + 指示此 DbGeography 值的长度、可以为 null 的双精度值。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 如果此 DbGeography 值表示点,则获取它的经度坐标。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的经度坐标值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的经度坐标。 + + + 如果此 DbGeography 值表示点,则获取它的 M(度量值)坐标。&amp;lt;returns&amp;gt;如果此地理值表示点,则为它的 M(度量值)坐标值;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值的 M(度量值)坐标。 + + + 返回二进制值中的多线值。 + 二进制值中的多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多线值。 + 已知文本值中的多线值。 + 已知的文本。 + 坐标系标识符。 + + + 返回已知二进制值中的多点值。 + 已知二进制值中的多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多点值。 + 已知文本值中的多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 返回已知二进制值的多多边形值。 + 已知二进制值中的多多边形值。 + 多多边形已知二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多多边形值。 + 已知文本值中的多多边形值。 + 多多边形已知文本值。 + 坐标系标识符。 + + + 如果表示行字符串或线性环,则从特定位置返回此 DbGeography 值的元素。&amp;lt;param name="index"&amp;gt;此地理值中,应采用该处元素的位置。&amp;lt;/param&amp;gt;&amp;lt;returns&amp;gt;如果此地理值表示行字符串或线性环,则为它当中指定位置处的元素;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值在特定位置处的元素 + 索引。 + + + 如果表示行字符串或线性环,则获取此 DbGeography 值中的点数。&amp;lt;returns&amp;gt;如果此地理值表示行字符串或线性环,则为它当中的元素个数;否则为 null。&amp;lt;/returns&amp;gt; + 此 DbGeography 值中的点数。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeography 值。 + 包含地理值的已知二进制表示形式的字节数组。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeography 值。 + 包含地理值的已知文本表示形式的字符串。 + 新 DbGeography 值应使用的坐标系的标识符。 + + + 获取将用于此空间类型的操作的空间提供程序。 + + + 获取此 DbGeography 值的表示形式,它对于构造它的基础提供程序是特定的。 + 此 DbGeography 值的表示形式。 + + + 确定此 DbGeography 在空间上是否与指定的 DbGeography 参数相等。 + 如果其他地理值在空间上与此地理值相等,则为 true ;否则为 false。 + 应与此地理值比较相等性的地理值。 + + + 获取 DBGeography 的空间类型名称。 + DBGeography 的空间类型名称。 + + + 获取表示此值起始点的 DbGeography 值,如果 DbGeography 值不表示曲线,此值可能是 null。 + 表示此值起点的 DbGeography 值。 + + + 计算此 DbGeography 值和另一 DbGeography 值的对称差异。 + 一个新 DbGeography 值,表示此地理值与其他地理值的对称差异。 + 应计算与此值的对称差异的地理值。 + + + 返回地理值的字符串表示形式。 + 地理值的字符串表示形式。 + + + 计算此 DbGeography 值和另一 DbGeography 值的并集。 + 一个新 DbGeography 值,表示此地理值与其他地理值之间的并集。 + 应计算与此值的并集的地理值。 + + + 获取或设置此 DbGeography 值的数据协定的可序列化已知表示形式。 + 此 DbGeography 值的数据协定的可序列化的已知表示形式。 + + + + 值的数据协定的可序列化表示形式。 + + + 初始化 类的新实例。 + + + 获取或设置此值的坐标系标识符 (SRID)。 + + + 获取或设置此值的已知二进制表示形式。 + + + 获取或设置此值的已知文本表示形式。 + + + 表示几何形状。 + + + 获取指示此 DbGeometry 值面积的可为 null 的双精度值,如果此值不表示面,则可能为 null。 + 一个可以为 null 的双精度值,指示此 DbGeometry 值的面积。 + + + 生成此 DbGeometry 值的已知二进制表示形式。 + 此 DbGeometry 值的已知二进制表示形式。 + + + 生成此 DbGeometry 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeometry 值的 GML 表示形式的字符串。 + + + 生成此 DbGeometry 值的已知文本表示形式。仅包含点的 X 和 Y 坐标。 + 包含此 DbGeometry 值的已知文本表示形式的字符串。 + + + 获取 DbGeometry 对象的边界。 + DbGeometry 对象的边界。 + + + 返回一个表示所有点并集的几何对象,该并集中所有点与几何实例的距离都小于或等于指定的值。 + 一个几何对象,表示所有点的并集。 + 距离。 + + + 获取表示此 DbGeometry 值的形心的 DbGeometry 值,如果此值不表示面,则可能为 null。 + 一个 DbGeometry 值,表示此 DbGeometry 值的形心。 + + + 确定此 DbGeography 值在空间上是否包含指定的 DbGeography 参数。 + 如果此几何值包含其他几何值,则为 true;否则为 false。 + 应与此几何值比较包含关系的几何值。 + + 为 null。 + + + 获取此 DbGeometry 值的凸包作为另一 DbGeometry 值。 + 用作另一 DbGeometry 值的此 DbGeometry 值的凸包。 + + + 获取此 DbGeometry 对象的坐标系统标识符。 + 此 DbGeometry 对象的坐标系统标识符。 + + + 确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数相交。 + 如果其他几何值与此几何值相交,则为 true;否则为 false。 + 应与此几何值比较的几何值。 + + 为 null。 + + + 获取几何值的默认坐标系统 ID (SRID)。 + 几何值的默认坐标系统 ID (SRID)。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的差异。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的差异。 + 应计算与此值的差异的几何值。 + + 为 null。 + + + 获取给定 值的维度(如果该值为一个集合)或其中最大元素的维度。 + 给定 值的维度。 + + + 确定此 DbGeometry 在空间上是否与指定的 DbGeometry 参数不相交。 + 如果其他几何值与此几何值不相交,则为 true;否则为 false。 + 应与此几何值比较不相交性的几何值。 + + 为 null。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值中两个最接近的点之间的距离。 + 一个双精度值,指定此几何值和其他几何值中最接近的两点之间的距离。 + 应计算与此值的距离的几何值。 + + 为 null。 + + + 如果表示几何集合,则从特定位置返回此 DbGeometry 值的元素。 + 如果此几何值表示其他几何值的集合,则为其在指定位置的元素;否则为 null。 + 在此几何值中应提取元素的位置。 + + + 如果表示几何集合,则获取此 DbGeometry 值中的元素数。 + 如果此几何值表示其他几何值的集合,则为它当中的元素个数;否则为 null。 + + + 如果此 DbGeometry 值表示点,则获取它的海拔(Z 坐标)值。 + 如果此 DbGeometry 表示一个点,则为它的海拔(Z 坐标);否则为 null。 + + + 获取表示此值起始点的 DbGeometry 值,如果 DbGeometry 值不表示曲线,此值可能为 null。 + 表示此值起点的 DbGeometry 值。 + + + 获取此 DbGeometry 值的包络线(最小边界框)作为几何值。 + 此 DbGeometry 值的包络线(最小边界框)。 + + + 获取表示此 DbGeometry 值的外部环的 DbGeometry 值,如果此值不表示多边形,则可能为 null。 + 一个 DbGeometry 值,表示此 DbGeometry 值的外部环。 + + + 基于指定的已知二进制值创建新的 值。 + 使用默认的几何坐标系标识符 ()、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + + 为 null。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 使用默认的几何坐标系标识符 (SRID) ()、由 GML 值定义的新 DbGeometry 值。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + + 为 null。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由 GML 值定义的新 DbGeometry 值。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值创建新的 值。 + 使用默认的几何坐标系标识符 (SRID) ()、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + + 为 null。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 如果表示多边形,则从此 DbGeometry 值返回位于特定位置的内部环。 + 如果此几何值表示多边形,则为其在指定位置的内部环;否则为 null。 + 在此几何值中应提取内部环的位置。 + + + 如果表示多边形,则获取此 DbGeometry 值中的内部环数。 + 如果此几何值表示多边形,则为它当中的元素个数;否则为 null。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的交集。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的交集。 + 应计算与此值的交集的几何值。 + + 为 null。 + + + 确定此 DbGeometry 在空间上是否与指定的 DbGeometry 参数相交。 + 如果其他几何值与此几何值相交,则为 true;否则为 false。 + 应与此几何值比较相交性的几何值。 + + 为 null。 + + + 获取指示此 DbGeometry 值是否为闭合的可为 null 的布尔值,如果此值不表示曲线,则可能为 null。 + 如果此 DbGeometry 值为闭合值,则为 true;否则为 false。 + + + 获取一个可以为 null 的布尔值,该值指示此 DbGeometry 值是否为空;如果此值不表示曲线,则可能为 null。 + 如果此 DbGeometry 值为空,则为 true;否则为 false。 + + + 获取指示此 DbGeometry 值是否为环的可为 null 的布尔值,如果此值不表示曲线,则可能为 null。 + 如果此 DbGeometry 值是一个环,则为 true;否则为 false。 + + + 获取一个可以为 null 的布尔值,该值指示此 DbGeometry 值是否为简单值。 + 如果此 DbGeometry 值简单,则为 true;否则为 false。 + + + 获取一个可以为 null 的布尔值,该值指示此 DbGeometry 值是否有效。 + 如果此 DbGeometry 值有效,则为 true;否则为 false。 + + + 获取指示此 DbGeometry 值长度的可为 null 的双精度值,如果此值不表示曲线,则可能为 null。 + 此 DbGeometry 值的长度。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 如果此 DbGeometry 值表示点,则获取它的度量值(M 坐标)。 + 如果此几何值表示一个点,则为它的度量值(M 坐标);否则为 null。 + + + 返回二进制值中的多线值。 + 二进制值中的多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多线值。 + 已知文本值中的多线值。 + 已知的文本。 + 坐标系标识符。 + + + 返回已知二进制值中的多点值。 + 已知二进制值中的多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 返回已知文本值中的多点值。 + 已知文本值中的多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 返回已知二进制值的多多边形值。 + 已知文本值中的多点值。 + 多多边形已知文本值。 + 坐标系标识符。 + + + 返回已知二进制值的多多边形值。 + 已知二进制值中的多多边形值。 + 多多边形已知文本值。 + 坐标系标识符。 + + + 确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数重叠。 + 如果此几何值与其他几何值重叠,则为 true;否则为 false。 + 应与此几何值比较重叠的几何值。 + + 为 null。 + + + 如果此 DbGeometry 值表示行字符串或线性环,则返回它特定位置处的元素。 + 如果此几何值表示行字符串或线性环,则为其在指定位置的元素;否则为 null。 + 在此几何值中应提取元素的位置。 + + + 如果此 DbGeometry 值表示行字符串或线性环,则获取它当中的点数。 + 如果此几何值表示行字符串或线性环,则为它的元素数。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 获取此 DbGeometry 值面上的点,如果此值不表示面,则可能为 null。 + 此 DbGeometry 值面上的点。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知二进制值定义的新 DbGeometry 值。 + 包含几何值的已知二进制表示形式的字节数组。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 使用指定的坐标系标识符、由已知文本值定义的新 DbGeometry 值。 + 包含几何值的已知文本表示形式的字符串。 + 新 DbGeometry 值应使用的坐标系的标识符。 + + 为 null。 + + 无效。 + + + 获取将用于此空间类型的操作的空间提供程序。 + 将用于此空间类型的操作的空间提供程序。 + + + 获取此 DbGeometry 值的表示形式,它对于构造它的基础提供程序是特定的。 + 此 DbGeometry 值的表示形式。 + + + 根据给定的维度扩展的 9 交集模型 (DE-9IM) 交集模式来确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数相关。 + 如果根据指定的交集模式矩阵,此几何值与其他几何相关,则为 true;否则为 false。 + 应与此几何值比较相关性的几何值。 + 包含定义了相关性的 (DE-9IM) 交集模式的文本表示形式的字符串。 + + 为 null。 + + + 确定此 DbGeometry 在空间上是否与指定的 DbGeometry 参数相等。 + 如果其他几何值在空间上与此几何值相等,则为 true;否则为 false。 + 应与此几何值比较相等性的几何值。 + + 为 null。 + + + 获取此 DbGeometry 值的空间类型名称表示形式。 + 此 DbGeometry 值的空间类型名称表示形式。 + + + 获取表示此值起始点的 DbGeometry 值,如果 DbGeometry 值不表示曲线,此值可能为 null。 + 表示此值起点的 DbGeometry 值。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的对称差异。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的对称差异。 + 应计算与此值的对称差异的几何值。 + + 为 null。 + + + 返回几何值的字符串表示形式。 + 此几何值的字符串表示形式。 + + + 确定此 DbGeometry 值在空间上是否与指定的 DbGeometry 参数接触。 + 如果其他几何值与此几何值相接,则为 true;否则为 false。 + 应与此几何值比较的几何值。 + + 为 null。 + + + 计算此 DbGeometry 值和另一 DbGeometry 值的并集。 + 一个新 DbGeometry 值,表示此几何值与其他几何值的并集。 + 应计算与此值的并集的几何值。 + + 为 null。 + + + 获取或设置此 DbGeometry 值的数据协定的可序列化已知表示形式。 + 此 DbGeometry 值的数据协定的可序列化的已知表示形式。 + + + 确定此 DbGeometry 值在空间上是否在指定的 DbGeometry 参数内。 + 如果此几何值在其他几何值中,则为 true;否则为 false。 + 应与此几何值比较包含关系的几何值。 + + 为 null。 + + + 如果此 DbGeometry 值表示点,则获取它的 X 坐标。 + 如果表示点,则为此几何值的 X 坐标值;否则为 null。 + + + 如果此 DbGeometry 值表示点,则获取它的 Y 坐标。 + 如果表示点,则为此几何值的 Y 坐标值;否则为 null。 + + + + 值的数据协定的可序列化表示形式。 + + + 初始化 类的新实例。 + + + 获取或设置此值的坐标系标识符 (SRID)。 + + + 获取或设置此值的已知二进制表示形式。 + + + 获取或设置此值的已知文本表示形式。 + + + 与提供程序无关的服务 API,用于支持地理空间(几何/地理)类型。 + + + 初始化 类的新实例。 + + + 当在派生类型中实现时,从指定列序号的列读取 的实例。 + 位于指定列值处的 DbGeography 实例 + 包含地理值的列序号 + + + 从位于指定的列序号的列异步读取 的实例。 + 表示异步操作的任务。任务结果包含位于指定列值处的 实例。 + 包含地理值的列序号。 + 等待任务完成期间要观察的 。 + + + 当在派生类型中实现时,从指定列序号的列读取 的实例。 + 位于指定列值处的 DbGeometry 实例 + 包含提供程序专用几何数据的数据记录列的序号 + + + 从位于指定的列序号的列异步读取 的实例。 + 表示异步操作的任务。任务结果包含位于指定列值处的 实例。 + 包含提供程序特定的几何数据的数据记录列的序号。 + 等待任务完成期间要观察的 。 + + + 返回位于指定的列序号的列是否为地理类型 + 如果位于指定的列序号的列为地理类型,则为 true;否则为 false。 + 列序号。 + + + 返回位于指定的列序号的列是否为几何类型 + 如果位于指定的列序号的列为几何类型,则为 true;否则为 false。 + 列序号。 + + + 与提供程序无关的服务 API,用于支持地理空间(几何/地理)类型。 + + + 初始化 类的新实例。 + + + 获取给定 值的已知二进制表示形式。 + 给定 值的已知二进制表示形式。 + 应为其生成已知二进制的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的已知二进制表示形式。 + 给定 值的已知二进制表示形式。 + 应为其生成已知二进制的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 生成此 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeography 值的 GML 表示形式的字符串。 + 应生成 GML 的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 生成此 值的地理标记语言 (GML) 表示形式。 + 包含此 DbGeometry 值的 GML 表示形式的字符串。 + 应生成 GML 的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的已知文本表示形式。此值仅应包含点的经度和纬度。 + 一个字符串,包含 geographyValue 的已知文本表示形式。 + 应为其生成已知文本的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的已知文本表示形式,仅包含点的 X 和 Y 坐标。 + 一个字符串,包含 geometryValue 的已知文本表示形式。 + 应为其生成已知文本的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回 带有海拔和测量值的文本表示形式。 + + 的文本表示形式。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回 带有海拔和测量值的文本表示形式。 + + 带有海拔和测量值的文本表示形式。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 创建一个地理值,该值表示所有距离小于或等于所给定 值的点。 + 一个新 DbGeography 值,表示所有距离小于或等于 geographyValue 的点。 + 地理值。 + 一个双精度值,指定从 geographyValue 到缓冲区的距离。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 创建一个几何值,该值表示所有距离小于或等于所给定 的点。 + 一个新 DbGeometry 值,表示所有距离小于或等于 geometryValue 的点。 + 几何值。 + 一个双精度值,指定从 geometryValue 到缓冲区的距离。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定一个 值是否在空间上包含另一个值。 + 如果 geometryValue 包含 otherGeometry,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 在进行指定提供程序值的合适验证后,此方法主要由 的派生实现使用,以确保其适用于派生实现。 + 一个新的 实例,包含指定的 providerValue,使用指定的 spatialServices 作为其空间实现。 + 返回的 值将依赖它实现空间功能的空间服务实例。 + 提供程序值。 + + + 在进行指定提供程序值的合适验证后,此方法主要由 的派生实现使用,以确保其适用于派生实现。 + 一个新的 实例,包含指定的 providerValue,使用指定的 spatialServices 作为其空间实现。 + 返回的 值将依赖它实现空间功能的空间服务实例。 + 提供程序值。 + + + 基于指定的已知 表示形式,创建一个兼容此空间服务实现的提供程序特定值。 + 一个提供程序特定值,它按照兼容此空间服务实现的方式,对 wellKnownValue 中包含的信息进行编码。 + 一个 实例,包含地理值的此已知表示形式。 + + + 基于指定的已知 表示形式,创建一个兼容此空间服务实现的提供程序特定值。 + 一个提供程序特定值,它按照兼容此空间服务实现的方式,对 wellKnownValue 中包含的信息进行编码。 + 一个 实例,包含几何值的此已知表示形式。 + + + 使用其中一个或这两个标准已知空间格式,创建表示指定 值的 实例。 + geographyValue 的已知表示形式,用作新 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 使用其中一个或这两个标准已知空间格式,创建表示指定 值的 实例。 + geometryValue 的已知表示形式,用作新 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 geometryValue 与 otherGeometry 相交,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取默认服务。 + 默认服务。 + + + 计算两个 值的差异。 + 一个新 DbGeography 值,表示 geographyValue 和 otherGeography 的差异。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的差异。 + 一个新 DbGeometry 值,表示 geometryValue 和 otherGeometry 的差异。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上不相交。 + 如果 geographyValue 不与 otherGeography 相交,则为 true;否则为 false。 + 用来比较不相交性的第一个地理值。 + 用来比较不相交性的第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上不相交。 + 如果 geometryValue 不与 otherGeometry 相交,则为 true;否则为 false。 + 用来比较不相交性的第一个几何值。 + 用来比较不相交性的第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值中最接近的点之间的距离。 + 一个双精度值,表示 geographyValue 和 otherGeography 中,最接近两点之间的距离。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值中最接近的点之间的距离。 + 一个双精度值,指定 geometryValue 和 otherGeometry 中,最接近两点之间的距离。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示地理集合,则返回给定 值的元素。 + 如果 geographyValue 表示其他地理值的集合,则为其在位置索引处的元素;否则为 null。 + 不需要表示地理集合的地理值。 + 在地理值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示几何集合,则返回给定 值的元素。 + 如果 geometryValue 表示其他几何值的集合,则为其在位置索引上的元素;否则为 null。 + 不需要表示几何集合的几何值。 + 在几何值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值创建新的 值。 + 一个新 值,由已知二进制值使用默认 坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 一个新 值,由 GML 值使用默认 坐标系统标识符 (SRID) () 进行定义。 + 包含地理值的几何标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由 GML 值使用指定的坐标系标识符 (SRID) 进行定义。 + 包含地理值的几何标记语言 (GML) 表示形式的字符串。 + 值应使用的坐标系标识符。 + + + 基于与此空间服务实现兼容的提供程序特定的值创建新的 值。 + 一个新 DbGeometry 值,它受此空间服务实现和指定提供程序值的支持。 + 此空间服务实现可将其解释为地理值的提供程序特定的值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 基于指定的已知文本值创建新的 值。 + 一个新 值,由已知文本值使用默认 坐标系标识符 (SRID) 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多线值。 + 多线值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含地理值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含地理值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 集合值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值创建新的 值。 + 一个新 值,由已知二进制值使用默认 坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的地理标记语言 (GML) 值创建新的 值。 + 一个新 值,由 GML 值使用默认 坐标系统标识符 (SRID) () 进行定义。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + + + 基于指定的地理标记语言 (GML) 值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由 GML 值使用指定的坐标系标识符 (SRID) 进行定义。 + 包含几何值的地理标记语言 (GML) 表示形式的字符串。 + 值应使用的坐标系标识符。 + + + 基于与此空间服务实现兼容的提供程序特定的值创建新的 值。 + 一个新 DbGeometry 值,它受此空间服务实现和指定提供程序值的支持。 + 此空间服务实现可将其解释为几何值的提供程序特定的值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 基于指定的已知文本值创建新的 值。 + 一个新 值,由已知文本值使用默认 坐标系标识符 (SRID) 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 线值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多线值。 + 多线值 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多线值。 + 多线值 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多点值。 + 多点值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的二进制值。 + 坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符,创建一个新的 多多边形值。 + 多边形值。 + 已知的文本值。 + 坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 点值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知二进制值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知二进制值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字节数组,包含几何值的已知二进制表示形式。 + 值应使用的坐标系标识符。 + + + 基于指定的已知文本值和坐标系标识符 (SRID) 创建新的 多边形值。 + 一个新 值,由已知文本值使用指定的坐标系标识符 (SRID) () 进行定义。 + 一个字符串,包含几何值的已知文本表示形式。 + 值应使用的坐标系标识符。 + + + 返回一个指示给定 值的面积、可以为 null 的双精度值,如果该值不表示面则可能为 null。 + 一个可以为 null 的双精度值,指示给定的 值的面积。 + 不需要表示面的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的面积、可以为 null 的双精度值,如果该值不表示面则可能为 null。 + 一个可以为 null 的双精度值,指示给定的 值的面积。 + 不需要表示面的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的边界、可以为 null 的双精度值。 + 给定 值的边界。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值形心的 值,如果该值不表示面则可能为 null。 + 如果 geometryValue 表示面,则为它的形心;否则为 null。 + 不需要表示面的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的凸包、可以为 null 的双精度值。 + 给定 值的凸包。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回给定 值的坐标系标识符。 + 给定 值的坐标系标识符。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回给定 值的坐标系标识符。 + 给定 值的坐标系标识符。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的维度(如果值为集合)或最大的元素维度。 + geographyValue 的维度;如果 是一个集合,则为最大元素维度。 + 应检索维度值的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定 值的维度(如果值为集合)或最大的元素维度。 + geometryValue 的维度;如果 是一个集合,则为最大元素维度。 + 应检索维度值的几何值。 + + + 如果表示地理集合,则返回给定 值的元素数目。 + 如果 geographyValue 表示其他地理值的集合,则为它当中的元素个数;否则为 null。 + 不需要表示地理集合的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示几何集合,则返回给定 值的元素数目。 + 如果此 geometryValue 表示其他几何值的集合,则为它当中的元素个数;否则为 null。 + 不需要表示几何集合的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的海拔(Z 坐标)。 + 如果此 geographyValue 表示点,则为它的海拔(Z 坐标);否则为 null。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的海拔 (Z)。 + 如果此 geometryValue 表示点,则为它的海拔(Z 坐标);否则为 null。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeography 值终点的 值,如果该值不表示曲线则可能为 null。 + 如果此 geographyValue 表示曲线,则为它的终点;否则为 null。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值终点的 值,如果该值不表示曲线则可能为 null。 + 如果此 geometryValue 表示曲线,则为它的终点;否则为 null。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取给定的 值的包络线(最小边界框)作为几何值。 + geometryValue 的包络线,用作 值。 + 应检索包络线值的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值外部环的 值,如果该值不表示多边形则可能为 null。 + 如果此 geometryValue 表示多边形,则为表示其上外部环的 DbGeometry 值;否则为 null。 + 不需要表示多边形的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示多边形,则返回给定 值中的内部环数。 + 如果此 geometryValue 表示多边形,则为它当中的元素个数;否则为 null。 + 不需要表示多边形的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否闭合;如果该值不表示曲线则可能为 null。 + 如果给定的 值为闭合值,则为 true;否则为 false。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否闭合;如果该值不表示曲线则可能为 null。 + 如果给定的 值为闭合值,则为 true;否则为 false。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否为空。 + 如果给定的 为空,则为 true;否则为 false。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否为空。 + 如果给定的 为空,则为 true;否则为 false。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回可以为 null 的布尔值,该值指示给定的 值是否是环;如果该值不表示曲线则可能为 null。 + 如果给定的 值是一个环,则为 true;否则为 false。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否很简单。 + 如果给定的 值简单,则为 true;否则为 false。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个可以为 null 的布尔值,该值指示给定的 值是否有效。 + 如果给定的 值有效,则为 true;否则为 false。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的纬度坐标。 + 给定 值的维度坐标。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的长度、可以为 null 的双精度值,如果该值不表示曲线则可能为 null。 + 给定 值的长度。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回一个指示给定 值的长度、可以为 null 的双精度值,如果该值不表示曲线则可能为 null。 + 给定 值的长度。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的经度坐标。 + 给定 值的经度坐标。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 M(度量值)坐标。 + 给定 值的 M(测量值)坐标。 + 不需要表示点的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 M(度量值)坐标。 + 给定 值的 M(测量值)坐标。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值中的点数。 + 给定 值中的点数。 + 不需要表示行字符串或线性环的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值中的点数。 + 给定 值中的点数。 + 不需要表示行字符串或线性环的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值面上点的 值,如果该值不表示面则可能为 null。 + 一个 值,表示给定 DbGeometry 值面上的点。 + 不需要表示面的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回指示给定 值的空间类型名称的值。 + 给定的 值的空间类型名称。 + 地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回指示给定 值的空间类型名称的值。 + 给定的 值的空间类型名称。 + 几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeography 值起点的 值,如果该值不表示曲线则可能为 null。 + 给定 值的起始点。 + 不需要表示曲线的地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 返回表示给定 DbGeometry 值起点的 值,如果该值不表示曲线则可能为 null。 + 给定 值的起始点。 + 不需要表示曲线的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 X 坐标。 + 给定 值的 X 坐标。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示点,则返回给定 值的 Y 坐标。 + 给定 值的 Y 坐标。 + 不需要表示点的几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示多边形,则返回给定 值中的内部环。 + 如果此 geometryValue 表示多边形,则为其处于位置索引的内部环;否则为 null。 + 不需要表示多边形的几何值。 + 在几何值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的交集。 + 一个新 值,代表 geographyValue 和 otherGeography 的交集。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的交集。 + 一个新 值,代表 geometryValue 和 otherGeometry 的交集。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 geographyValue 与 otherGeography 相交,则为 true;否则为 false。 + 用来比较相交性的第一个地理值。 + 用来比较相交性的第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值是否在空间上相交。 + 如果 geometryValue 与 otherGeometry 相交,则为 true;否则为 false。 + 用来比较相交性的第一个几何值。 + 用来比较相交性的第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 获取一个值,该值指示 EF 是否将在假定提供程序具有所需的类型/资源而非更快失败的情况下继续运行。默认值为 true。 + 如果 EF 将在假定提供程序具有所需的类型/资源而非更快失败的情况下继续运行,则为 true;否则为 false。 + + + 确定两个给定的 值是否在空间上重叠。 + 如果 geometryValue 与 otherGeometry 重叠,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值的点元素。 + 如果此 geographyValue 表示字符串或线性环,则为其在位置索引处的点;否则为 null。 + 不需要表示行字符串或线性环的地理值。 + 在地理值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 如果表示行字符串或线性环,则返回给定 值的点元素。 + 如果此 geometryValue 表示行字符串或线性环,则为其在位置索引处的点;否则为 null。 + 不需要表示行字符串或线性环的几何值。 + 在几何值中应提取元素的位置。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 根据给定的维度扩展的 9 交集模型 (DE-9IM) 交集模式来确定两个给定的 值在空间上是否相关。 + 如果根据指定的交集模式矩阵,此 geometryValue 与 otherGeometry 相关,则为 true;否则为 false。 + 第一个几何值。 + 应与第一个几何值比较相关性的几何值。 + 包含定义了相关性的 (DE-9IM) 交集模式的文本表示形式的字符串。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值在空间上是否相等。 + 如果 geographyValue 与 otherGeography 在空间上相等,则为 true;否则为 false。 + 要比较是否相等的第一个地理值。 + 要比较是否相等的第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值在空间上是否相等。 + 如果 geometryValue 与 otherGeometry 在空间上相等,则为 true;否则为 false。 + 要比较是否相等的第一个几何值。 + 要比较是否相等的第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的对称差异。 + 一个新 值,表示此 geographyValue 和 otherGeography 的对称差异。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的对称差异。 + 一个新 值,表示 geometryValue 和 otherGeometry 的对称差异。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定两个给定的 值在空间上是否接触。 + 如果 geometryValue 与 otherGeometry 相接,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的并集。 + 一个新 值,代表 geographyValue 和 otherGeography 的并集。 + 第一个地理值。 + 第二个地理值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 计算两个 值的并集。 + 一个新 值,代表 geometryValue 和 otherGeometry 的并集。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 确定一个 值在空间上是否在另一几何值内。 + 如果 geometryValue 在 otherGeometry 中,则为 true;否则为 false。 + 第一个几何值。 + 第二个几何值。 + + 为 null。 + + 与此空间服务实现不兼容。 + + + 包含 类的扩展方法。 + + + 配置用于等待此 的等待器,以避免封送继续部分回原始上下文,但是保留当前区域性和 UI 区域性。 + 用于等待此任务的对象。 + 要等待的任务。 + + + 配置用于等待此 的等待器,以避免封送继续部分回原始上下文,但是保留当前区域性和 UI 区域性。 + 用于等待此任务的对象。 + 要等待的任务。 + 相关 所生成的结果类型。 + + + 提供一个可等待的对象,它允许等待保留区域性的 + + + 构造 类的新实例。 + 要等待的任务。 + + + 获取用于等待此 的等待器。 + 等待器实例。 + + + 结束等待已完成的 + 未正确初始化等待器。 + 该任务已取消。 + 任务在错误状态下完成。 + + + 获取此 是否已完成的信息。 + + + 未实施此方法,不应调用它。 + 等待操作完成时要调用的操作。 + + + 计划继续操作到与此 关联的 + 等待操作完成时要调用的操作。 + + 参数为 null(在 Visual Basic 中为 Nothing)。 + 未正确初始化等待器。 + + + 提供一个可等待的对象,它允许等待保留区域性的 + 相关 所生成的结果类型。 + + + 构造 类的新实例。 + 要等待的任务。 + + + 获取用于等待此 的等待器。 + 等待器实例。 + + + 结束等待已完成的 + 已完成的 的结果。 + 未正确初始化等待器。 + 该任务已取消。 + 任务在错误状态下完成。 + + + 获取此 是否已完成的信息。 + + + 未实施此方法,不应调用它。 + 等待操作完成时要调用的操作。 + + + 计划继续操作到与此 关联的 + 等待操作完成时要调用的操作。 + + 参数为 null(在 Visual Basic 中为 Nothing)。 + 未正确初始化等待器。 + + + 表示在实体验证失败时从 引发的异常。 + + + 使用默认值初始化 类的新实例。 + + + 使用指定错误消息初始化 类的新实例。 + 异常消息。 + + + 使用指定错误消息和验证结果初始化 类的新实例。 + 异常消息。 + 验证结果。 + + + 使用指定错误消息、验证结果和内部异常初始化 类的新实例。 + 异常消息。 + 验证结果。 + 导致异常的错误。 + + + 使用指定错误消息和内部异常初始化 类的新实例。 + 异常消息。 + 导致异常的错误。 + + + 获取与实体关联的验证错误。 + 与实体关联的验证错误。 + + + 表示单个实体的验证结果。 + + + 创建 类的实例。 + 应用结果的实体项。绝不会为 null。 + + 实例的列表。绝不会为 null。可以为空意味着实体有效。 + + + 获取应用结果的 的实例。 + + + 获取指示实体是否有效的指示器。 + + + 获取验证错误。绝不会为 null。 + + + 在从验证代码引发异常时,从 引发的异常。 + + + 初始化 DbUnexpectedValidationException 的新实例。 + + + 用指定的序列化信息和上下文初始化 DbUnexpectedValidationException 的新实例。 + 序列化信息。 + 流上下文。 + + + 初始化 DbUnexpectedValidationException 的新实例。 + 异常消息。 + + + 初始化 DbUnexpectedValidationException 的新实例。 + 异常消息。 + 内部异常。 + + + 验证错误。可以是实体级别或属性级别验证错误。 + + + 创建 的实例。 + 无效属性的名称。可以为 null。 + 验证错误消息。可以为 null。 + + + 获取验证错误消息。 + + + 获取无效属性的名称。 + + + \ No newline at end of file