diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5.sln" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5.sln" new file mode 100644 index 0000000000000000000000000000000000000000..cd05cbf9403ce5fcf497196535c03a1c03aa3264 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5.sln" @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.28307.1169 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WindowsFormsApp5", "WindowsFormsApp5\WindowsFormsApp5.csproj", "{31175128-6CF9-40A7-98E4-42DB46586571}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {31175128-6CF9-40A7-98E4-42DB46586571}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {31175128-6CF9-40A7-98E4-42DB46586571}.Debug|Any CPU.Build.0 = Debug|Any CPU + {31175128-6CF9-40A7-98E4-42DB46586571}.Release|Any CPU.ActiveCfg = Release|Any CPU + {31175128-6CF9-40A7-98E4-42DB46586571}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {60538569-209C-4EB6-99A3-B32A0A277519} + EndGlobalSection +EndGlobal diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/App.config" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/App.config" new file mode 100644 index 0000000000000000000000000000000000000000..ab8c892c113749912a598dc53f0d3a0b7d3e9c07 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/App.config" @@ -0,0 +1,13 @@ + + + + + + + + + + + \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/BlogsDataSet.Designer.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/BlogsDataSet.Designer.cs" new file mode 100644 index 0000000000000000000000000000000000000000..20d80ace8154fc41666ec45b87522fe03b4ec485 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/BlogsDataSet.Designer.cs" @@ -0,0 +1,1506 @@ +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +#pragma warning disable 1591 + +namespace WindowsFormsApp5 { + + + /// + ///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("BlogsDataSet")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.DataSet")] + public partial class BlogsDataSet : global::System.Data.DataSet { + + private ArticlesDataTable tableArticles; + + 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 BlogsDataSet() { + 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 BlogsDataSet(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["Articles"] != null)) { + base.Tables.Add(new ArticlesDataTable(ds.Tables["Articles"])); + } + 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 ArticlesDataTable Articles { + get { + return this.tableArticles; + } + } + + [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() { + BlogsDataSet cln = ((BlogsDataSet)(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["Articles"] != null)) { + base.Tables.Add(new ArticlesDataTable(ds.Tables["Articles"])); + } + 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.tableArticles = ((ArticlesDataTable)(base.Tables["Articles"])); + if ((initTable == true)) { + if ((this.tableArticles != null)) { + this.tableArticles.InitVars(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private void InitClass() { + this.DataSetName = "BlogsDataSet"; + this.Prefix = ""; + this.Namespace = "http://tempuri.org/BlogsDataSet.xsd"; + this.EnforceConstraints = true; + this.SchemaSerializationMode = global::System.Data.SchemaSerializationMode.IncludeSchema; + this.tableArticles = new ArticlesDataTable(); + base.Tables.Add(this.tableArticles); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private bool ShouldSerializeArticles() { + 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) { + BlogsDataSet ds = new BlogsDataSet(); + 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 ArticlesRowChangeEventHandler(object sender, ArticlesRowChangeEvent e); + + /// + ///Represents the strongly named DataTable class. + /// + [global::System.Serializable()] + [global::System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")] + public partial class ArticlesDataTable : global::System.Data.TypedTableBase { + + private global::System.Data.DataColumn columnId; + + private global::System.Data.DataColumn columnTitle; + + private global::System.Data.DataColumn columnAuthor; + + private global::System.Data.DataColumn columnCreatedTime; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public ArticlesDataTable() { + this.TableName = "Articles"; + this.BeginInit(); + this.InitClass(); + this.EndInit(); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + internal ArticlesDataTable(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 ArticlesDataTable(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 TitleColumn { + get { + return this.columnTitle; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn AuthorColumn { + get { + return this.columnAuthor; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public global::System.Data.DataColumn CreatedTimeColumn { + get { + return this.columnCreatedTime; + } + } + + [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 ArticlesRow this[int index] { + get { + return ((ArticlesRow)(this.Rows[index])); + } + } + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public event ArticlesRowChangeEventHandler ArticlesRowChanging; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public event ArticlesRowChangeEventHandler ArticlesRowChanged; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public event ArticlesRowChangeEventHandler ArticlesRowDeleting; + + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public event ArticlesRowChangeEventHandler ArticlesRowDeleted; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void AddArticlesRow(ArticlesRow row) { + this.Rows.Add(row); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public ArticlesRow AddArticlesRow(string Title, string Author, System.DateTime CreatedTime) { + ArticlesRow rowArticlesRow = ((ArticlesRow)(this.NewRow())); + object[] columnValuesArray = new object[] { + null, + Title, + Author, + CreatedTime}; + rowArticlesRow.ItemArray = columnValuesArray; + this.Rows.Add(rowArticlesRow); + return rowArticlesRow; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public ArticlesRow FindById(int Id) { + return ((ArticlesRow)(this.Rows.Find(new object[] { + Id}))); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public override global::System.Data.DataTable Clone() { + ArticlesDataTable cln = ((ArticlesDataTable)(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 ArticlesDataTable(); + } + + [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.columnTitle = base.Columns["Title"]; + this.columnAuthor = base.Columns["Author"]; + this.columnCreatedTime = base.Columns["CreatedTime"]; + } + + [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(int), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnId); + this.columnTitle = new global::System.Data.DataColumn("Title", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnTitle); + this.columnAuthor = new global::System.Data.DataColumn("Author", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnAuthor); + this.columnCreatedTime = new global::System.Data.DataColumn("CreatedTime", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCreatedTime); + this.Constraints.Add(new global::System.Data.UniqueConstraint("Constraint1", new global::System.Data.DataColumn[] { + this.columnId}, true)); + this.columnId.AutoIncrement = true; + this.columnId.AutoIncrementSeed = -1; + this.columnId.AutoIncrementStep = -1; + this.columnId.AllowDBNull = false; + this.columnId.ReadOnly = true; + this.columnId.Unique = true; + this.columnTitle.AllowDBNull = false; + this.columnTitle.MaxLength = 80; + this.columnAuthor.AllowDBNull = false; + this.columnAuthor.MaxLength = 80; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public ArticlesRow NewArticlesRow() { + return ((ArticlesRow)(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 ArticlesRow(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(ArticlesRow); + } + + [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.ArticlesRowChanged != null)) { + this.ArticlesRowChanged(this, new ArticlesRowChangeEvent(((ArticlesRow)(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.ArticlesRowChanging != null)) { + this.ArticlesRowChanging(this, new ArticlesRowChangeEvent(((ArticlesRow)(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.ArticlesRowDeleted != null)) { + this.ArticlesRowDeleted(this, new ArticlesRowChangeEvent(((ArticlesRow)(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.ArticlesRowDeleting != null)) { + this.ArticlesRowDeleting(this, new ArticlesRowChangeEvent(((ArticlesRow)(e.Row)), e.Action)); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void RemoveArticlesRow(ArticlesRow 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(); + BlogsDataSet ds = new BlogsDataSet(); + 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 = "ArticlesDataTable"; + 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 ArticlesRow : global::System.Data.DataRow { + + private ArticlesDataTable tableArticles; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + internal ArticlesRow(global::System.Data.DataRowBuilder rb) : + base(rb) { + this.tableArticles = ((ArticlesDataTable)(this.Table)); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public int Id { + get { + return ((int)(this[this.tableArticles.IdColumn])); + } + set { + this[this.tableArticles.IdColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public string Title { + get { + return ((string)(this[this.tableArticles.TitleColumn])); + } + set { + this[this.tableArticles.TitleColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public string Author { + get { + return ((string)(this[this.tableArticles.AuthorColumn])); + } + set { + this[this.tableArticles.AuthorColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public System.DateTime CreatedTime { + get { + try { + return ((global::System.DateTime)(this[this.tableArticles.CreatedTimeColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("表“Articles”中列“CreatedTime”的值为 DBNull。", e); + } + } + set { + this[this.tableArticles.CreatedTimeColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool IsCreatedTimeNull() { + return this.IsNull(this.tableArticles.CreatedTimeColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public void SetCreatedTimeNull() { + this[this.tableArticles.CreatedTimeColumn] = global::System.Convert.DBNull; + } + } + + /// + ///Row event argument class + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public class ArticlesRowChangeEvent : global::System.EventArgs { + + private ArticlesRow 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 ArticlesRowChangeEvent(ArticlesRow 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 ArticlesRow 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; + } + } + } + } +} +namespace WindowsFormsApp5.BlogsDataSetTableAdapters { + + + /// + ///Represents the connection and commands used to retrieve and save data. + /// + [global::System.ComponentModel.DesignerCategoryAttribute("code")] + [global::System.ComponentModel.ToolboxItem(true)] + [global::System.ComponentModel.DataObjectAttribute(true)] + [global::System.ComponentModel.DesignerAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterDesigner, Microsoft.VSDesigner" + + ", Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public partial class ArticlesTableAdapter : global::System.ComponentModel.Component { + + private global::System.Data.SqlClient.SqlDataAdapter _adapter; + + private global::System.Data.SqlClient.SqlConnection _connection; + + private global::System.Data.SqlClient.SqlTransaction _transaction; + + private global::System.Data.SqlClient.SqlCommand[] _commandCollection; + + private bool _clearBeforeFill; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public ArticlesTableAdapter() { + this.ClearBeforeFill = true; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected internal global::System.Data.SqlClient.SqlDataAdapter Adapter { + get { + if ((this._adapter == null)) { + this.InitAdapter(); + } + return this._adapter; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + internal global::System.Data.SqlClient.SqlConnection Connection { + get { + if ((this._connection == null)) { + this.InitConnection(); + } + return this._connection; + } + set { + this._connection = value; + if ((this.Adapter.InsertCommand != null)) { + this.Adapter.InsertCommand.Connection = value; + } + if ((this.Adapter.DeleteCommand != null)) { + this.Adapter.DeleteCommand.Connection = value; + } + if ((this.Adapter.UpdateCommand != null)) { + this.Adapter.UpdateCommand.Connection = value; + } + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + if ((this.CommandCollection[i] != null)) { + ((global::System.Data.SqlClient.SqlCommand)(this.CommandCollection[i])).Connection = value; + } + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + internal global::System.Data.SqlClient.SqlTransaction Transaction { + get { + return this._transaction; + } + set { + this._transaction = value; + for (int i = 0; (i < this.CommandCollection.Length); i = (i + 1)) { + this.CommandCollection[i].Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.DeleteCommand != null))) { + this.Adapter.DeleteCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.InsertCommand != null))) { + this.Adapter.InsertCommand.Transaction = this._transaction; + } + if (((this.Adapter != null) + && (this.Adapter.UpdateCommand != null))) { + this.Adapter.UpdateCommand.Transaction = this._transaction; + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected global::System.Data.SqlClient.SqlCommand[] CommandCollection { + get { + if ((this._commandCollection == null)) { + this.InitCommandCollection(); + } + return this._commandCollection; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool ClearBeforeFill { + get { + return this._clearBeforeFill; + } + set { + this._clearBeforeFill = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private void InitAdapter() { + this._adapter = new global::System.Data.SqlClient.SqlDataAdapter(); + global::System.Data.Common.DataTableMapping tableMapping = new global::System.Data.Common.DataTableMapping(); + tableMapping.SourceTable = "Table"; + tableMapping.DataSetTable = "Articles"; + tableMapping.ColumnMappings.Add("Id", "Id"); + tableMapping.ColumnMappings.Add("Title", "Title"); + tableMapping.ColumnMappings.Add("Author", "Author"); + tableMapping.ColumnMappings.Add("CreatedTime", "CreatedTime"); + this._adapter.TableMappings.Add(tableMapping); + this._adapter.DeleteCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.DeleteCommand.Connection = this.Connection; + this._adapter.DeleteCommand.CommandText = "DELETE FROM [dbo].[Articles] WHERE (([Id] = @Original_Id) AND ([Title] = @Origina" + + "l_Title) AND ([Author] = @Original_Author) AND ((@IsNull_CreatedTime = 1 AND [Cr" + + "eatedTime] IS NULL) OR ([CreatedTime] = @Original_CreatedTime)))"; + this._adapter.DeleteCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Id", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Id", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Title", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Title", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Author", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Author", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IsNull_CreatedTime", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CreatedTime", global::System.Data.DataRowVersion.Original, true, null, "", "", "")); + this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CreatedTime", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CreatedTime", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.InsertCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.InsertCommand.Connection = this.Connection; + this._adapter.InsertCommand.CommandText = "INSERT INTO [dbo].[Articles] ([Title], [Author], [CreatedTime]) VALUES (@Title, @" + + "Author, @CreatedTime);\r\nSELECT Id, Title, Author, CreatedTime FROM Articles WHER" + + "E (Id = SCOPE_IDENTITY())"; + this._adapter.InsertCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Title", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Title", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Author", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Author", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CreatedTime", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CreatedTime", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand = new global::System.Data.SqlClient.SqlCommand(); + this._adapter.UpdateCommand.Connection = this.Connection; + this._adapter.UpdateCommand.CommandText = @"UPDATE [dbo].[Articles] SET [Title] = @Title, [Author] = @Author, [CreatedTime] = @CreatedTime WHERE (([Id] = @Original_Id) AND ([Title] = @Original_Title) AND ([Author] = @Original_Author) AND ((@IsNull_CreatedTime = 1 AND [CreatedTime] IS NULL) OR ([CreatedTime] = @Original_CreatedTime))); +SELECT Id, Title, Author, CreatedTime FROM Articles WHERE (Id = @Id)"; + this._adapter.UpdateCommand.CommandType = global::System.Data.CommandType.Text; + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Title", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Title", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Author", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Author", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CreatedTime", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CreatedTime", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Id", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Id", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Title", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Title", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_Author", global::System.Data.SqlDbType.NVarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Author", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@IsNull_CreatedTime", global::System.Data.SqlDbType.Int, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CreatedTime", global::System.Data.DataRowVersion.Original, true, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_CreatedTime", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "CreatedTime", global::System.Data.DataRowVersion.Original, false, null, "", "", "")); + this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Id", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 0, 0, "Id", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private void InitConnection() { + this._connection = new global::System.Data.SqlClient.SqlConnection(); + this._connection.ConnectionString = global::WindowsFormsApp5.Properties.Settings.Default.BlogsConnectionString; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private void InitCommandCollection() { + this._commandCollection = new global::System.Data.SqlClient.SqlCommand[1]; + this._commandCollection[0] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[0].Connection = this.Connection; + this._commandCollection[0].CommandText = "SELECT Id, Title, Author, CreatedTime FROM dbo.Articles"; + this._commandCollection[0].CommandType = global::System.Data.CommandType.Text; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, true)] + public virtual int Fill(BlogsDataSet.ArticlesDataTable dataTable) { + this.Adapter.SelectCommand = this.CommandCollection[0]; + if ((this.ClearBeforeFill == true)) { + dataTable.Clear(); + } + int returnValue = this.Adapter.Fill(dataTable); + return returnValue; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, true)] + public virtual BlogsDataSet.ArticlesDataTable GetData() { + this.Adapter.SelectCommand = this.CommandCollection[0]; + BlogsDataSet.ArticlesDataTable dataTable = new BlogsDataSet.ArticlesDataTable(); + this.Adapter.Fill(dataTable); + return dataTable; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(BlogsDataSet.ArticlesDataTable dataTable) { + return this.Adapter.Update(dataTable); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(BlogsDataSet dataSet) { + return this.Adapter.Update(dataSet, "Articles"); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow dataRow) { + return this.Adapter.Update(new global::System.Data.DataRow[] { + dataRow}); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + public virtual int Update(global::System.Data.DataRow[] dataRows) { + return this.Adapter.Update(dataRows); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Delete, true)] + public virtual int Delete(int Original_Id, string Original_Title, string Original_Author, global::System.Nullable Original_CreatedTime) { + this.Adapter.DeleteCommand.Parameters[0].Value = ((int)(Original_Id)); + if ((Original_Title == null)) { + throw new global::System.ArgumentNullException("Original_Title"); + } + else { + this.Adapter.DeleteCommand.Parameters[1].Value = ((string)(Original_Title)); + } + if ((Original_Author == null)) { + throw new global::System.ArgumentNullException("Original_Author"); + } + else { + this.Adapter.DeleteCommand.Parameters[2].Value = ((string)(Original_Author)); + } + if ((Original_CreatedTime.HasValue == true)) { + this.Adapter.DeleteCommand.Parameters[3].Value = ((object)(0)); + this.Adapter.DeleteCommand.Parameters[4].Value = ((System.DateTime)(Original_CreatedTime.Value)); + } + else { + this.Adapter.DeleteCommand.Parameters[3].Value = ((object)(1)); + this.Adapter.DeleteCommand.Parameters[4].Value = global::System.DBNull.Value; + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.DeleteCommand.Connection.State; + if (((this.Adapter.DeleteCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.DeleteCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.DeleteCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.DeleteCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Insert, true)] + public virtual int Insert(string Title, string Author, global::System.Nullable CreatedTime) { + if ((Title == null)) { + throw new global::System.ArgumentNullException("Title"); + } + else { + this.Adapter.InsertCommand.Parameters[0].Value = ((string)(Title)); + } + if ((Author == null)) { + throw new global::System.ArgumentNullException("Author"); + } + else { + this.Adapter.InsertCommand.Parameters[1].Value = ((string)(Author)); + } + if ((CreatedTime.HasValue == true)) { + this.Adapter.InsertCommand.Parameters[2].Value = ((System.DateTime)(CreatedTime.Value)); + } + else { + this.Adapter.InsertCommand.Parameters[2].Value = global::System.DBNull.Value; + } + global::System.Data.ConnectionState previousConnectionState = this.Adapter.InsertCommand.Connection.State; + if (((this.Adapter.InsertCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.InsertCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.InsertCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.InsertCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update(string Title, string Author, global::System.Nullable CreatedTime, int Original_Id, string Original_Title, string Original_Author, global::System.Nullable Original_CreatedTime, int Id) { + if ((Title == null)) { + throw new global::System.ArgumentNullException("Title"); + } + else { + this.Adapter.UpdateCommand.Parameters[0].Value = ((string)(Title)); + } + if ((Author == null)) { + throw new global::System.ArgumentNullException("Author"); + } + else { + this.Adapter.UpdateCommand.Parameters[1].Value = ((string)(Author)); + } + if ((CreatedTime.HasValue == true)) { + this.Adapter.UpdateCommand.Parameters[2].Value = ((System.DateTime)(CreatedTime.Value)); + } + else { + this.Adapter.UpdateCommand.Parameters[2].Value = global::System.DBNull.Value; + } + this.Adapter.UpdateCommand.Parameters[3].Value = ((int)(Original_Id)); + if ((Original_Title == null)) { + throw new global::System.ArgumentNullException("Original_Title"); + } + else { + this.Adapter.UpdateCommand.Parameters[4].Value = ((string)(Original_Title)); + } + if ((Original_Author == null)) { + throw new global::System.ArgumentNullException("Original_Author"); + } + else { + this.Adapter.UpdateCommand.Parameters[5].Value = ((string)(Original_Author)); + } + if ((Original_CreatedTime.HasValue == true)) { + this.Adapter.UpdateCommand.Parameters[6].Value = ((object)(0)); + this.Adapter.UpdateCommand.Parameters[7].Value = ((System.DateTime)(Original_CreatedTime.Value)); + } + else { + this.Adapter.UpdateCommand.Parameters[6].Value = ((object)(1)); + this.Adapter.UpdateCommand.Parameters[7].Value = global::System.DBNull.Value; + } + this.Adapter.UpdateCommand.Parameters[8].Value = ((int)(Id)); + global::System.Data.ConnectionState previousConnectionState = this.Adapter.UpdateCommand.Connection.State; + if (((this.Adapter.UpdateCommand.Connection.State & global::System.Data.ConnectionState.Open) + != global::System.Data.ConnectionState.Open)) { + this.Adapter.UpdateCommand.Connection.Open(); + } + try { + int returnValue = this.Adapter.UpdateCommand.ExecuteNonQuery(); + return returnValue; + } + finally { + if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) { + this.Adapter.UpdateCommand.Connection.Close(); + } + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, true)] + public virtual int Update(string Title, string Author, global::System.Nullable CreatedTime, int Original_Id, string Original_Title, string Original_Author, global::System.Nullable Original_CreatedTime) { + return this.Update(Title, Author, CreatedTime, Original_Id, Original_Title, Original_Author, Original_CreatedTime, Original_Id); + } + } + + /// + ///TableAdapterManager is used to coordinate TableAdapters in the dataset to enable Hierarchical Update scenarios + /// + [global::System.ComponentModel.DesignerCategoryAttribute("code")] + [global::System.ComponentModel.ToolboxItem(true)] + [global::System.ComponentModel.DesignerAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterManagerDesigner, Microsoft.VSD" + + "esigner, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapterManager")] + public partial class TableAdapterManager : global::System.ComponentModel.Component { + + private UpdateOrderOption _updateOrder; + + private ArticlesTableAdapter _articlesTableAdapter; + + private bool _backupDataSetBeforeUpdate; + + private global::System.Data.IDbConnection _connection; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public UpdateOrderOption UpdateOrder { + get { + return this._updateOrder; + } + set { + this._updateOrder = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.EditorAttribute("Microsoft.VSDesigner.DataSource.Design.TableAdapterManagerPropertyEditor, Microso" + + "ft.VSDesigner, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3" + + "a", "System.Drawing.Design.UITypeEditor")] + public ArticlesTableAdapter ArticlesTableAdapter { + get { + return this._articlesTableAdapter; + } + set { + this._articlesTableAdapter = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public bool BackupDataSetBeforeUpdate { + get { + return this._backupDataSetBeforeUpdate; + } + set { + this._backupDataSetBeforeUpdate = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + public global::System.Data.IDbConnection Connection { + get { + if ((this._connection != null)) { + return this._connection; + } + if (((this._articlesTableAdapter != null) + && (this._articlesTableAdapter.Connection != null))) { + return this._articlesTableAdapter.Connection; + } + return null; + } + set { + this._connection = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + [global::System.ComponentModel.Browsable(false)] + public int TableAdapterInstanceCount { + get { + int count = 0; + if ((this._articlesTableAdapter != null)) { + count = (count + 1); + } + return count; + } + } + + /// + ///Update rows in top-down order. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private int UpdateUpdatedRows(BlogsDataSet dataSet, global::System.Collections.Generic.List allChangedRows, global::System.Collections.Generic.List allAddedRows) { + int result = 0; + if ((this._articlesTableAdapter != null)) { + global::System.Data.DataRow[] updatedRows = dataSet.Articles.Select(null, null, global::System.Data.DataViewRowState.ModifiedCurrent); + updatedRows = this.GetRealUpdatedRows(updatedRows, allAddedRows); + if (((updatedRows != null) + && (0 < updatedRows.Length))) { + result = (result + this._articlesTableAdapter.Update(updatedRows)); + allChangedRows.AddRange(updatedRows); + } + } + return result; + } + + /// + ///Insert rows in top-down order. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private int UpdateInsertedRows(BlogsDataSet dataSet, global::System.Collections.Generic.List allAddedRows) { + int result = 0; + if ((this._articlesTableAdapter != null)) { + global::System.Data.DataRow[] addedRows = dataSet.Articles.Select(null, null, global::System.Data.DataViewRowState.Added); + if (((addedRows != null) + && (0 < addedRows.Length))) { + result = (result + this._articlesTableAdapter.Update(addedRows)); + allAddedRows.AddRange(addedRows); + } + } + return result; + } + + /// + ///Delete rows in bottom-up order. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private int UpdateDeletedRows(BlogsDataSet dataSet, global::System.Collections.Generic.List allChangedRows) { + int result = 0; + if ((this._articlesTableAdapter != null)) { + global::System.Data.DataRow[] deletedRows = dataSet.Articles.Select(null, null, global::System.Data.DataViewRowState.Deleted); + if (((deletedRows != null) + && (0 < deletedRows.Length))) { + result = (result + this._articlesTableAdapter.Update(deletedRows)); + allChangedRows.AddRange(deletedRows); + } + } + return result; + } + + /// + ///Remove inserted rows that become updated rows after calling TableAdapter.Update(inserted rows) first + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private global::System.Data.DataRow[] GetRealUpdatedRows(global::System.Data.DataRow[] updatedRows, global::System.Collections.Generic.List allAddedRows) { + if (((updatedRows == null) + || (updatedRows.Length < 1))) { + return updatedRows; + } + if (((allAddedRows == null) + || (allAddedRows.Count < 1))) { + return updatedRows; + } + global::System.Collections.Generic.List realUpdatedRows = new global::System.Collections.Generic.List(); + for (int i = 0; (i < updatedRows.Length); i = (i + 1)) { + global::System.Data.DataRow row = updatedRows[i]; + if ((allAddedRows.Contains(row) == false)) { + realUpdatedRows.Add(row); + } + } + return realUpdatedRows.ToArray(); + } + + /// + ///Update all changes to the dataset. + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public virtual int UpdateAll(BlogsDataSet dataSet) { + if ((dataSet == null)) { + throw new global::System.ArgumentNullException("dataSet"); + } + if ((dataSet.HasChanges() == false)) { + return 0; + } + if (((this._articlesTableAdapter != null) + && (this.MatchTableAdapterConnection(this._articlesTableAdapter.Connection) == false))) { + throw new global::System.ArgumentException("由 TableAdapterManager 管理的所有 TableAdapter 必须使用相同的连接字符串。"); + } + global::System.Data.IDbConnection workConnection = this.Connection; + if ((workConnection == null)) { + throw new global::System.ApplicationException("TableAdapterManager 不包含任何连接信息。请将每个 TableAdapterManager TableAdapter 属性设置为有效的 Tabl" + + "eAdapter 实例。"); + } + bool workConnOpened = false; + if (((workConnection.State & global::System.Data.ConnectionState.Broken) + == global::System.Data.ConnectionState.Broken)) { + workConnection.Close(); + } + if ((workConnection.State == global::System.Data.ConnectionState.Closed)) { + workConnection.Open(); + workConnOpened = true; + } + global::System.Data.IDbTransaction workTransaction = workConnection.BeginTransaction(); + if ((workTransaction == null)) { + throw new global::System.ApplicationException("事务无法开始。当前的数据连接不支持事务或当前状态不允许事务开始。"); + } + global::System.Collections.Generic.List allChangedRows = new global::System.Collections.Generic.List(); + global::System.Collections.Generic.List allAddedRows = new global::System.Collections.Generic.List(); + global::System.Collections.Generic.List adaptersWithAcceptChangesDuringUpdate = new global::System.Collections.Generic.List(); + global::System.Collections.Generic.Dictionary revertConnections = new global::System.Collections.Generic.Dictionary(); + int result = 0; + global::System.Data.DataSet backupDataSet = null; + if (this.BackupDataSetBeforeUpdate) { + backupDataSet = new global::System.Data.DataSet(); + backupDataSet.Merge(dataSet); + } + try { + // ---- Prepare for update ----------- + // + if ((this._articlesTableAdapter != null)) { + revertConnections.Add(this._articlesTableAdapter, this._articlesTableAdapter.Connection); + this._articlesTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(workConnection)); + this._articlesTableAdapter.Transaction = ((global::System.Data.SqlClient.SqlTransaction)(workTransaction)); + if (this._articlesTableAdapter.Adapter.AcceptChangesDuringUpdate) { + this._articlesTableAdapter.Adapter.AcceptChangesDuringUpdate = false; + adaptersWithAcceptChangesDuringUpdate.Add(this._articlesTableAdapter.Adapter); + } + } + // + //---- Perform updates ----------- + // + if ((this.UpdateOrder == UpdateOrderOption.UpdateInsertDelete)) { + result = (result + this.UpdateUpdatedRows(dataSet, allChangedRows, allAddedRows)); + result = (result + this.UpdateInsertedRows(dataSet, allAddedRows)); + } + else { + result = (result + this.UpdateInsertedRows(dataSet, allAddedRows)); + result = (result + this.UpdateUpdatedRows(dataSet, allChangedRows, allAddedRows)); + } + result = (result + this.UpdateDeletedRows(dataSet, allChangedRows)); + // + //---- Commit updates ----------- + // + workTransaction.Commit(); + if ((0 < allAddedRows.Count)) { + global::System.Data.DataRow[] rows = new System.Data.DataRow[allAddedRows.Count]; + allAddedRows.CopyTo(rows); + for (int i = 0; (i < rows.Length); i = (i + 1)) { + global::System.Data.DataRow row = rows[i]; + row.AcceptChanges(); + } + } + if ((0 < allChangedRows.Count)) { + global::System.Data.DataRow[] rows = new System.Data.DataRow[allChangedRows.Count]; + allChangedRows.CopyTo(rows); + for (int i = 0; (i < rows.Length); i = (i + 1)) { + global::System.Data.DataRow row = rows[i]; + row.AcceptChanges(); + } + } + } + catch (global::System.Exception ex) { + workTransaction.Rollback(); + // ---- Restore the dataset ----------- + if (this.BackupDataSetBeforeUpdate) { + global::System.Diagnostics.Debug.Assert((backupDataSet != null)); + dataSet.Clear(); + dataSet.Merge(backupDataSet); + } + else { + if ((0 < allAddedRows.Count)) { + global::System.Data.DataRow[] rows = new System.Data.DataRow[allAddedRows.Count]; + allAddedRows.CopyTo(rows); + for (int i = 0; (i < rows.Length); i = (i + 1)) { + global::System.Data.DataRow row = rows[i]; + row.AcceptChanges(); + row.SetAdded(); + } + } + } + throw ex; + } + finally { + if (workConnOpened) { + workConnection.Close(); + } + if ((this._articlesTableAdapter != null)) { + this._articlesTableAdapter.Connection = ((global::System.Data.SqlClient.SqlConnection)(revertConnections[this._articlesTableAdapter])); + this._articlesTableAdapter.Transaction = null; + } + if ((0 < adaptersWithAcceptChangesDuringUpdate.Count)) { + global::System.Data.Common.DataAdapter[] adapters = new System.Data.Common.DataAdapter[adaptersWithAcceptChangesDuringUpdate.Count]; + adaptersWithAcceptChangesDuringUpdate.CopyTo(adapters); + for (int i = 0; (i < adapters.Length); i = (i + 1)) { + global::System.Data.Common.DataAdapter adapter = adapters[i]; + adapter.AcceptChangesDuringUpdate = true; + } + } + } + return result; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected virtual void SortSelfReferenceRows(global::System.Data.DataRow[] rows, global::System.Data.DataRelation relation, bool childFirst) { + global::System.Array.Sort(rows, new SelfReferenceComparer(relation, childFirst)); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + protected virtual bool MatchTableAdapterConnection(global::System.Data.IDbConnection inputConnection) { + if ((this._connection != null)) { + return true; + } + if (((this.Connection == null) + || (inputConnection == null))) { + return true; + } + if (string.Equals(this.Connection.ConnectionString, inputConnection.ConnectionString, global::System.StringComparison.Ordinal)) { + return true; + } + return false; + } + + /// + ///Update Order Option + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public enum UpdateOrderOption { + + InsertUpdateDelete = 0, + + UpdateInsertDelete = 1, + } + + /// + ///Used to sort self-referenced table's rows + /// + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private class SelfReferenceComparer : object, global::System.Collections.Generic.IComparer { + + private global::System.Data.DataRelation _relation; + + private int _childFirst; + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + internal SelfReferenceComparer(global::System.Data.DataRelation relation, bool childFirst) { + this._relation = relation; + if (childFirst) { + this._childFirst = -1; + } + else { + this._childFirst = 1; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + private global::System.Data.DataRow GetRoot(global::System.Data.DataRow row, out int distance) { + global::System.Diagnostics.Debug.Assert((row != null)); + global::System.Data.DataRow root = row; + distance = 0; + + global::System.Collections.Generic.IDictionary traversedRows = new global::System.Collections.Generic.Dictionary(); + traversedRows[row] = row; + + global::System.Data.DataRow parent = row.GetParentRow(this._relation, global::System.Data.DataRowVersion.Default); + for ( + ; ((parent != null) + && (traversedRows.ContainsKey(parent) == false)); + ) { + distance = (distance + 1); + root = parent; + traversedRows[parent] = parent; + parent = parent.GetParentRow(this._relation, global::System.Data.DataRowVersion.Default); + } + + if ((distance == 0)) { + traversedRows.Clear(); + traversedRows[row] = row; + parent = row.GetParentRow(this._relation, global::System.Data.DataRowVersion.Original); + for ( + ; ((parent != null) + && (traversedRows.ContainsKey(parent) == false)); + ) { + distance = (distance + 1); + root = parent; + traversedRows[parent] = parent; + parent = parent.GetParentRow(this._relation, global::System.Data.DataRowVersion.Original); + } + } + + return root; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "15.0.0.0")] + public int Compare(global::System.Data.DataRow row1, global::System.Data.DataRow row2) { + if (object.ReferenceEquals(row1, row2)) { + return 0; + } + if ((row1 == null)) { + return -1; + } + if ((row2 == null)) { + return 1; + } + + int distance1 = 0; + global::System.Data.DataRow root1 = this.GetRoot(row1, out distance1); + + int distance2 = 0; + global::System.Data.DataRow root2 = this.GetRoot(row2, out distance2); + + if (object.ReferenceEquals(root1, root2)) { + return (this._childFirst * distance1.CompareTo(distance2)); + } + else { + global::System.Diagnostics.Debug.Assert(((root1.Table != null) + && (root2.Table != null))); + if ((root1.Table.Rows.IndexOf(root1) < root2.Table.Rows.IndexOf(root2))) { + return -1; + } + else { + return 1; + } + } + } + } + } +} + +#pragma warning restore 1591 \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/BlogsDataSet.xsc" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/BlogsDataSet.xsc" new file mode 100644 index 0000000000000000000000000000000000000000..5f282702bb03ef11d7184d19c80927b47f919764 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/BlogsDataSet.xsc" @@ -0,0 +1 @@ + \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/BlogsDataSet.xsd" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/BlogsDataSet.xsd" new file mode 100644 index 0000000000000000000000000000000000000000..c9ea4fac0ebcd6f9f3e419aab6a6e6c1154c0f3e --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/BlogsDataSet.xsd" @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + DELETE FROM [dbo].[Articles] WHERE (([Id] = @Original_Id) AND ([Title] = @Original_Title) AND ([Author] = @Original_Author) AND ((@IsNull_CreatedTime = 1 AND [CreatedTime] IS NULL) OR ([CreatedTime] = @Original_CreatedTime))) + + + + + + + + + + + + INSERT INTO [dbo].[Articles] ([Title], [Author], [CreatedTime]) VALUES (@Title, @Author, @CreatedTime); +SELECT Id, Title, Author, CreatedTime FROM Articles WHERE (Id = SCOPE_IDENTITY()) + + + + + + + + + + SELECT Id, Title, Author, CreatedTime FROM dbo.Articles + + + + + + UPDATE [dbo].[Articles] SET [Title] = @Title, [Author] = @Author, [CreatedTime] = @CreatedTime WHERE (([Id] = @Original_Id) AND ([Title] = @Original_Title) AND ([Author] = @Original_Author) AND ((@IsNull_CreatedTime = 1 AND [CreatedTime] IS NULL) OR ([CreatedTime] = @Original_CreatedTime))); +SELECT Id, Title, Author, CreatedTime FROM Articles WHERE (Id = @Id) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/BlogsDataSet.xss" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/BlogsDataSet.xss" new file mode 100644 index 0000000000000000000000000000000000000000..5f282702bb03ef11d7184d19c80927b47f919764 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/BlogsDataSet.xss" @@ -0,0 +1 @@ + \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/DbHelper.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/DbHelper.cs" new file mode 100644 index 0000000000000000000000000000000000000000..32fa0ece8a8d16d411e1bf1683c6bc30faf64149 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/DbHelper.cs" @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Data.SqlClient; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace WindowsFormsApp5 +{ + class DbHelper + { + private readonly static string user = "server=.;database=Blogs;uid=sa;pwd=123456;"; + + + public static DataTable GetDataTable(string sql) + { + SqlConnection connection = new SqlConnection(user); + + SqlDataAdapter adapter = new SqlDataAdapter(sql, connection); + + connection.Open(); + + DataTable dt = new DataTable(); + + adapter.Fill(dt); + + return dt; + } + + // 增加或者修改方法 + public static int AddOrEditSave(string cmdSting) + { + SqlConnection sqlConnection = new SqlConnection(user); + + sqlConnection.Open(); + + SqlCommand sqlCommand = new SqlCommand(cmdSting, sqlConnection); + + return sqlCommand.ExecuteNonQuery(); + } + } +} diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form1.Designer.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form1.Designer.cs" new file mode 100644 index 0000000000000000000000000000000000000000..100607495356c23a49e5ec76b194067a3897852e --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form1.Designer.cs" @@ -0,0 +1,124 @@ +namespace WindowsFormsApp5 +{ + partial class Form1 + { + /// + /// 必需的设计器变量。 + /// + private System.ComponentModel.IContainer components = null; + + /// + /// 清理所有正在使用的资源。 + /// + /// 如果应释放托管资源,为 true;否则为 false。 + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows 窗体设计器生成的代码 + + /// + /// 设计器支持所需的方法 - 不要修改 + /// 使用代码编辑器修改此方法的内容。 + /// + private void InitializeComponent() + { + this.button1 = new System.Windows.Forms.Button(); + this.button2 = new System.Windows.Forms.Button(); + this.label1 = new System.Windows.Forms.Label(); + this.label2 = new System.Windows.Forms.Label(); + this.textBox1 = new System.Windows.Forms.TextBox(); + this.textBox2 = new System.Windows.Forms.TextBox(); + this.SuspendLayout(); + // + // button1 + // + this.button1.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.button1.Location = new System.Drawing.Point(221, 267); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(75, 38); + this.button1.TabIndex = 0; + this.button1.Text = "登录"; + this.button1.UseVisualStyleBackColor = true; + this.button1.Click += new System.EventHandler(this.button1_Click); + // + // button2 + // + this.button2.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.button2.Location = new System.Drawing.Point(398, 267); + this.button2.Name = "button2"; + this.button2.Size = new System.Drawing.Size(75, 38); + this.button2.TabIndex = 1; + this.button2.Text = "注册"; + this.button2.UseVisualStyleBackColor = true; + this.button2.Click += new System.EventHandler(this.button2_Click); + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.label1.Location = new System.Drawing.Point(229, 129); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(42, 16); + this.label1.TabIndex = 2; + this.label1.Text = "账号"; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.label2.Location = new System.Drawing.Point(229, 200); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(42, 16); + this.label2.TabIndex = 3; + this.label2.Text = "密码"; + // + // textBox1 + // + this.textBox1.Location = new System.Drawing.Point(373, 125); + this.textBox1.Name = "textBox1"; + this.textBox1.Size = new System.Drawing.Size(100, 21); + this.textBox1.TabIndex = 4; + // + // textBox2 + // + this.textBox2.Location = new System.Drawing.Point(373, 199); + this.textBox2.Name = "textBox2"; + this.textBox2.Size = new System.Drawing.Size(100, 21); + this.textBox2.TabIndex = 5; + // + // Form1 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(800, 450); + this.Controls.Add(this.textBox2); + this.Controls.Add(this.textBox1); + this.Controls.Add(this.label2); + this.Controls.Add(this.label1); + this.Controls.Add(this.button2); + this.Controls.Add(this.button1); + this.Name = "Form1"; + this.Text = "Form1"; + this.Load += new System.EventHandler(this.Form1_Load); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.Button button1; + private System.Windows.Forms.Button button2; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.TextBox textBox1; + private System.Windows.Forms.TextBox textBox2; + } +} + diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form1.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form1.cs" new file mode 100644 index 0000000000000000000000000000000000000000..bff1eed3f3c885fc6cd81c16b2dfbc36e64d3d4d --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form1.cs" @@ -0,0 +1,61 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace WindowsFormsApp5 +{ + public partial class Form1 : Form + { + public Form1() + { + InitializeComponent(); + } + public static Dictionary users = new Dictionary(); + private void Form1_Load(object sender, EventArgs e) + { + users.Add("admin", "10086"); + } + //登录 + private void button1_Click(object sender, EventArgs e) + { + var uid = textBox1.Text; + var wed = textBox2.Text; + + var usr = users.Where(h => h.Key == uid && h.Value == wed) + .Select(h => new { key = h.Key, value = h.Value }).FirstOrDefault(); + + if (usr != null) + { + MessageBox.Show("登陆成功", "提示"); + Form3 form3 = new Form3(); + form3.Show(); + } + else if (textBox1.Text == "") + { + MessageBox.Show("请输入账号!", "登陆失败"); + textBox1.Focus(); + } + else if (textBox2.Text == "") + { + MessageBox.Show("请输入密码!", "登陆失败"); + textBox2.Focus(); + } + else + { + MessageBox.Show("用账号或密码错误!", "登陆失败"); + } + } + //注册 + private void button2_Click(object sender, EventArgs e) + { + Form2 form2 = new Form2(); + form2.Show(); + } + } +} diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form1.resx" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form1.resx" new file mode 100644 index 0000000000000000000000000000000000000000..1af7de150c99c12dd67a509fe57c10d63e4eeb04 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form1.resx" @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form2.Designer.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form2.Designer.cs" new file mode 100644 index 0000000000000000000000000000000000000000..0dabf52c771913891158da171dae02d76d2fe423 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form2.Designer.cs" @@ -0,0 +1,146 @@ +namespace WindowsFormsApp5 +{ + partial class Form2 + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.textBox2 = new System.Windows.Forms.TextBox(); + this.textBox1 = new System.Windows.Forms.TextBox(); + this.label2 = new System.Windows.Forms.Label(); + this.label1 = new System.Windows.Forms.Label(); + this.button2 = new System.Windows.Forms.Button(); + this.button1 = new System.Windows.Forms.Button(); + this.textBox3 = new System.Windows.Forms.TextBox(); + this.label3 = new System.Windows.Forms.Label(); + this.SuspendLayout(); + // + // textBox2 + // + this.textBox2.Location = new System.Drawing.Point(394, 102); + this.textBox2.Name = "textBox2"; + this.textBox2.Size = new System.Drawing.Size(100, 21); + this.textBox2.TabIndex = 11; + // + // textBox1 + // + this.textBox1.Location = new System.Drawing.Point(394, 56); + this.textBox1.Name = "textBox1"; + this.textBox1.Size = new System.Drawing.Size(100, 21); + this.textBox1.TabIndex = 10; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.label2.Location = new System.Drawing.Point(240, 102); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(42, 16); + this.label2.TabIndex = 9; + this.label2.Text = "密码"; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.label1.Location = new System.Drawing.Point(240, 59); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(42, 16); + this.label1.TabIndex = 8; + this.label1.Text = "账号"; + // + // button2 + // + this.button2.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.button2.Location = new System.Drawing.Point(419, 198); + this.button2.Name = "button2"; + this.button2.Size = new System.Drawing.Size(75, 38); + this.button2.TabIndex = 7; + this.button2.Text = "取消"; + this.button2.UseVisualStyleBackColor = true; + this.button2.Click += new System.EventHandler(this.button2_Click); + // + // button1 + // + this.button1.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.button1.Location = new System.Drawing.Point(242, 198); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(75, 38); + this.button1.TabIndex = 6; + this.button1.Text = "注册"; + this.button1.UseVisualStyleBackColor = true; + this.button1.Click += new System.EventHandler(this.button1_Click); + // + // textBox3 + // + this.textBox3.Location = new System.Drawing.Point(394, 148); + this.textBox3.Name = "textBox3"; + this.textBox3.Size = new System.Drawing.Size(100, 21); + this.textBox3.TabIndex = 13; + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.label3.Location = new System.Drawing.Point(240, 148); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(76, 16); + this.label3.TabIndex = 12; + this.label3.Text = "确认密码"; + // + // Form2 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(800, 450); + this.Controls.Add(this.textBox3); + this.Controls.Add(this.label3); + this.Controls.Add(this.textBox2); + this.Controls.Add(this.textBox1); + this.Controls.Add(this.label2); + this.Controls.Add(this.label1); + this.Controls.Add(this.button2); + this.Controls.Add(this.button1); + this.Name = "Form2"; + this.Text = "Form2"; + this.Load += new System.EventHandler(this.Form2_Load); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.TextBox textBox2; + private System.Windows.Forms.TextBox textBox1; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.Button button2; + private System.Windows.Forms.Button button1; + private System.Windows.Forms.TextBox textBox3; + private System.Windows.Forms.Label label3; + } +} \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form2.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form2.cs" new file mode 100644 index 0000000000000000000000000000000000000000..97ed6e57551d317362f64ecb7865a34d20491beb --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form2.cs" @@ -0,0 +1,69 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace WindowsFormsApp5 +{ + public partial class Form2 : Form + { + public Form2() + { + InitializeComponent(); + } + + private void Form2_Load(object sender, EventArgs e) + { + + } + //取消 + private void button2_Click(object sender, EventArgs e) + { + //关闭当前窗口 + this.Close(); + } + //注册 + private void button1_Click(object sender, EventArgs e) + { + var userName1 = textBox1.Text; + var passWord1 = textBox2.Text; + var repassWord1 = textBox3.Text; + + var user = !string.IsNullOrEmpty(userName1); + var wed = !string.IsNullOrEmpty(passWord1); + var rewed = passWord1 == repassWord1; + + if (user && wed && rewed) + { + MessageBox.Show("注册成功", "提示!"); + Form1.users.Add(userName1, passWord1); + this.Show(); + this.Close(); + } + else if (textBox1.Text == "") + { + MessageBox.Show("请输入账号:", "注册失败"); + textBox1.Focus(); + } + else if (textBox2.Text == "") + { + MessageBox.Show("请输入密码:", "注册失败"); + textBox2.Focus(); + } + else if (textBox3.Text == "") + { + MessageBox.Show("请确认密码!", "注册失败"); + textBox3.Focus(); + } + else + { + MessageBox.Show("注册失败", "提示!"); + } + } + } +} diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form2.resx" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form2.resx" new file mode 100644 index 0000000000000000000000000000000000000000..1af7de150c99c12dd67a509fe57c10d63e4eeb04 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form2.resx" @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form3.Designer.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form3.Designer.cs" new file mode 100644 index 0000000000000000000000000000000000000000..cfc1d2d1f977e115011b89c7653e0a675bbfdfe7 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form3.Designer.cs" @@ -0,0 +1,209 @@ +namespace WindowsFormsApp5 +{ + partial class Form3 + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + this.dataGridView1 = new System.Windows.Forms.DataGridView(); + this.idDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.titleDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.authorDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.createdTimeDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.articlesBindingSource = new System.Windows.Forms.BindingSource(this.components); + this.blogsDataSet = new WindowsFormsApp5.BlogsDataSet(); + this.button1 = new System.Windows.Forms.Button(); + this.button2 = new System.Windows.Forms.Button(); + this.button3 = new System.Windows.Forms.Button(); + this.button4 = new System.Windows.Forms.Button(); + this.作者 = new System.Windows.Forms.Label(); + this.textBox1 = new System.Windows.Forms.TextBox(); + this.articlesTableAdapter = new WindowsFormsApp5.BlogsDataSetTableAdapters.ArticlesTableAdapter(); + ((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.articlesBindingSource)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.blogsDataSet)).BeginInit(); + this.SuspendLayout(); + // + // dataGridView1 + // + this.dataGridView1.AutoGenerateColumns = false; + this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.idDataGridViewTextBoxColumn, + this.titleDataGridViewTextBoxColumn, + this.authorDataGridViewTextBoxColumn, + this.createdTimeDataGridViewTextBoxColumn}); + this.dataGridView1.DataSource = this.articlesBindingSource; + this.dataGridView1.Location = new System.Drawing.Point(68, 133); + this.dataGridView1.Name = "dataGridView1"; + this.dataGridView1.RowTemplate.Height = 23; + this.dataGridView1.Size = new System.Drawing.Size(611, 170); + this.dataGridView1.TabIndex = 0; + // + // idDataGridViewTextBoxColumn + // + this.idDataGridViewTextBoxColumn.DataPropertyName = "Id"; + this.idDataGridViewTextBoxColumn.HeaderText = "Id"; + this.idDataGridViewTextBoxColumn.Name = "idDataGridViewTextBoxColumn"; + this.idDataGridViewTextBoxColumn.ReadOnly = true; + // + // titleDataGridViewTextBoxColumn + // + this.titleDataGridViewTextBoxColumn.DataPropertyName = "Title"; + this.titleDataGridViewTextBoxColumn.HeaderText = "Title"; + this.titleDataGridViewTextBoxColumn.Name = "titleDataGridViewTextBoxColumn"; + // + // authorDataGridViewTextBoxColumn + // + this.authorDataGridViewTextBoxColumn.DataPropertyName = "Author"; + this.authorDataGridViewTextBoxColumn.HeaderText = "Author"; + this.authorDataGridViewTextBoxColumn.Name = "authorDataGridViewTextBoxColumn"; + // + // createdTimeDataGridViewTextBoxColumn + // + this.createdTimeDataGridViewTextBoxColumn.DataPropertyName = "CreatedTime"; + this.createdTimeDataGridViewTextBoxColumn.HeaderText = "CreatedTime"; + this.createdTimeDataGridViewTextBoxColumn.Name = "createdTimeDataGridViewTextBoxColumn"; + // + // articlesBindingSource + // + this.articlesBindingSource.DataMember = "Articles"; + this.articlesBindingSource.DataSource = this.blogsDataSet; + // + // blogsDataSet + // + this.blogsDataSet.DataSetName = "BlogsDataSet"; + this.blogsDataSet.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema; + // + // button1 + // + this.button1.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.button1.Location = new System.Drawing.Point(256, 60); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(75, 30); + this.button1.TabIndex = 1; + this.button1.Text = "查询"; + this.button1.UseVisualStyleBackColor = true; + this.button1.Click += new System.EventHandler(this.button1_Click); + // + // button2 + // + this.button2.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.button2.Location = new System.Drawing.Point(397, 60); + this.button2.Name = "button2"; + this.button2.Size = new System.Drawing.Size(75, 30); + this.button2.TabIndex = 2; + this.button2.Text = "添加"; + this.button2.UseVisualStyleBackColor = true; + this.button2.Click += new System.EventHandler(this.button2_Click); + // + // button3 + // + this.button3.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.button3.Location = new System.Drawing.Point(501, 60); + this.button3.Name = "button3"; + this.button3.Size = new System.Drawing.Size(75, 30); + this.button3.TabIndex = 3; + this.button3.Text = "刷新"; + this.button3.UseVisualStyleBackColor = true; + this.button3.Click += new System.EventHandler(this.button3_Click); + // + // button4 + // + this.button4.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.button4.Location = new System.Drawing.Point(604, 60); + this.button4.Name = "button4"; + this.button4.Size = new System.Drawing.Size(75, 30); + this.button4.TabIndex = 4; + this.button4.Text = "删除"; + this.button4.UseVisualStyleBackColor = true; + this.button4.Click += new System.EventHandler(this.button4_Click); + // + // 作者 + // + this.作者.AutoSize = true; + this.作者.Font = new System.Drawing.Font("宋体", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.作者.Location = new System.Drawing.Point(64, 71); + this.作者.Name = "作者"; + this.作者.Size = new System.Drawing.Size(49, 19); + this.作者.TabIndex = 5; + this.作者.Text = "作者"; + this.作者.Click += new System.EventHandler(this.作者_Click); + // + // textBox1 + // + this.textBox1.BackColor = System.Drawing.SystemColors.MenuHighlight; + this.textBox1.Location = new System.Drawing.Point(119, 68); + this.textBox1.Name = "textBox1"; + this.textBox1.Size = new System.Drawing.Size(113, 21); + this.textBox1.TabIndex = 6; + // + // articlesTableAdapter + // + this.articlesTableAdapter.ClearBeforeFill = true; + // + // Form3 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(800, 450); + this.Controls.Add(this.textBox1); + this.Controls.Add(this.作者); + this.Controls.Add(this.button4); + this.Controls.Add(this.button3); + this.Controls.Add(this.button2); + this.Controls.Add(this.button1); + this.Controls.Add(this.dataGridView1); + this.Name = "Form3"; + this.Text = "Form3"; + this.Load += new System.EventHandler(this.Form3_Load); + ((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.articlesBindingSource)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.blogsDataSet)).EndInit(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.DataGridView dataGridView1; + private System.Windows.Forms.Button button1; + private System.Windows.Forms.Button button2; + private System.Windows.Forms.Button button3; + private System.Windows.Forms.Button button4; + private System.Windows.Forms.Label 作者; + private System.Windows.Forms.TextBox textBox1; + private BlogsDataSet blogsDataSet; + private System.Windows.Forms.BindingSource articlesBindingSource; + private BlogsDataSetTableAdapters.ArticlesTableAdapter articlesTableAdapter; + private System.Windows.Forms.DataGridViewTextBoxColumn idDataGridViewTextBoxColumn; + private System.Windows.Forms.DataGridViewTextBoxColumn titleDataGridViewTextBoxColumn; + private System.Windows.Forms.DataGridViewTextBoxColumn authorDataGridViewTextBoxColumn; + private System.Windows.Forms.DataGridViewTextBoxColumn createdTimeDataGridViewTextBoxColumn; + } +} \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form3.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form3.cs" new file mode 100644 index 0000000000000000000000000000000000000000..80d765f21536e6fcd4d4e005e37f4b13f71aa060 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form3.cs" @@ -0,0 +1,145 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace WindowsFormsApp5 +{ + public partial class Form3 : Form + { + private int id; + private string name; + private string title; + private string author; + + public Form3() + { + InitializeComponent(); + } + + private void 作者_Click(object sender, EventArgs e) + { + + } + //主界面 + private void Form3_Load(object sender, EventArgs e) + { + string cmdString = "select * from Articles"; + + var dt = DbHelper.GetDataTable(cmdString); + + dataGridView1.DataSource = dt; + + dataGridView1.ReadOnly = true; + + dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect; //选择一整行 + + dataGridView1.AllowUserToAddRows = false; + } + //查询 + private void button1_Click(object sender, EventArgs e) + { + var name = textBox1.Text; + + string cmdString = string.Format("select * from Articles where Title like '{0}'", name); + + var dt = DbHelper.GetDataTable(cmdString); + + dataGridView1.DataSource = dt; + } + + //删除 + private void button4_Click(object sender, EventArgs e) + { + if (dataGridView1.SelectedRows.Count > 0) + { + var row = dataGridView1.SelectedRows[0]; + + // var Id = row.Cells["Id"].Value; + + var test = MessageBox.Show("确定删除!", "疯狂提示你", MessageBoxButtons.YesNo, MessageBoxIcon.Information); + + if (test.Equals(DialogResult.Yes)) + { + object Id = null; + string cmdString = string.Format("delete Articles where Id = '{0}'", Id); + + var list = DbHelper.AddOrEditSave(cmdString); + if (list == 1) + { + MessageBox.Show("删除成功啦!", "有点心疼!"); + + string select = "select * from Articles"; + + var wer = DbHelper.GetDataTable(select); + + dataGridView1.DataSource = wer; + } + } + else + { + this.Close(); + } + } + else + { + MessageBox.Show("请选择行!", "提示"); + } + } + + //添加 + private void button2_Click(object sender, EventArgs e) + { + + Form4 form4 = new Form4(); + var res = form4.ShowDialog(); + + if (res.Equals(DialogResult.Yes)) + { + string cmdSting = "select * from Articles"; + var data = DbHelper.GetDataTable(cmdSting); + dataGridView1.DataSource = data; + } + } + //刷新 + private void button3_Click(object sender, EventArgs e) + { + var id = (int)dataGridView1.SelectedRows[0].Cells["Id"].Value; + + var name = (string)dataGridView1.SelectedRows[0].Cells["Name"].Value; + + var title = (int)dataGridView1.SelectedRows[0].Cells["Title"].Value; + + var author = (int)dataGridView1.SelectedRows[0].Cells["Author"].Value; + + Form5 form5 = new Form5(name, id, title, author); + + + + var res = form5.ShowDialog(); + + if (res == DialogResult.Yes) + { + var StuSql = "select * from Articles"; + + var dt = DbHelper.GetDataTable(StuSql); + + dataGridView1.DataSource = dt; + } + else + { + MessageBox.Show("No"); + } + + } + } +} + + + + diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form3.resx" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form3.resx" new file mode 100644 index 0000000000000000000000000000000000000000..13e63f287af64b5c215df4daa5d60ab9aae08e0f --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form3.resx" @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 148, 17 + + + 17, 17 + + + 327, 17 + + \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form4.Designer.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form4.Designer.cs" new file mode 100644 index 0000000000000000000000000000000000000000..9023bbfa9b660f863a98c396be54065e447ec95b --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form4.Designer.cs" @@ -0,0 +1,146 @@ +namespace WindowsFormsApp5 +{ + partial class Form4 + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.textBox3 = new System.Windows.Forms.TextBox(); + this.label3 = new System.Windows.Forms.Label(); + this.textBox2 = new System.Windows.Forms.TextBox(); + this.textBox1 = new System.Windows.Forms.TextBox(); + this.label2 = new System.Windows.Forms.Label(); + this.label1 = new System.Windows.Forms.Label(); + this.button2 = new System.Windows.Forms.Button(); + this.button1 = new System.Windows.Forms.Button(); + this.SuspendLayout(); + // + // textBox3 + // + this.textBox3.Location = new System.Drawing.Point(379, 176); + this.textBox3.Name = "textBox3"; + this.textBox3.Size = new System.Drawing.Size(100, 21); + this.textBox3.TabIndex = 21; + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.label3.Location = new System.Drawing.Point(225, 176); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(76, 16); + this.label3.TabIndex = 20; + this.label3.Text = "发布时间"; + // + // textBox2 + // + this.textBox2.Location = new System.Drawing.Point(379, 130); + this.textBox2.Name = "textBox2"; + this.textBox2.Size = new System.Drawing.Size(100, 21); + this.textBox2.TabIndex = 19; + // + // textBox1 + // + this.textBox1.Location = new System.Drawing.Point(379, 84); + this.textBox1.Name = "textBox1"; + this.textBox1.Size = new System.Drawing.Size(100, 21); + this.textBox1.TabIndex = 18; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.label2.Location = new System.Drawing.Point(225, 130); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(42, 16); + this.label2.TabIndex = 17; + this.label2.Text = "作者"; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.label1.Location = new System.Drawing.Point(225, 87); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(42, 16); + this.label1.TabIndex = 16; + this.label1.Text = "名称"; + // + // button2 + // + this.button2.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.button2.Location = new System.Drawing.Point(404, 226); + this.button2.Name = "button2"; + this.button2.Size = new System.Drawing.Size(75, 31); + this.button2.TabIndex = 15; + this.button2.Text = "取消"; + this.button2.UseVisualStyleBackColor = true; + this.button2.Click += new System.EventHandler(this.button2_Click); + // + // button1 + // + this.button1.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.button1.Location = new System.Drawing.Point(227, 226); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(75, 31); + this.button1.TabIndex = 14; + this.button1.Text = "添加"; + this.button1.UseVisualStyleBackColor = true; + this.button1.Click += new System.EventHandler(this.button1_Click); + // + // Form4 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(800, 450); + this.Controls.Add(this.textBox3); + this.Controls.Add(this.label3); + this.Controls.Add(this.textBox2); + this.Controls.Add(this.textBox1); + this.Controls.Add(this.label2); + this.Controls.Add(this.label1); + this.Controls.Add(this.button2); + this.Controls.Add(this.button1); + this.Name = "Form4"; + this.Text = "Form4"; + this.Load += new System.EventHandler(this.Form4_Load); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.TextBox textBox3; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.TextBox textBox2; + private System.Windows.Forms.TextBox textBox1; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.Button button2; + private System.Windows.Forms.Button button1; + } +} \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form4.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form4.cs" new file mode 100644 index 0000000000000000000000000000000000000000..207cb51c5b5c3d0d71b7fed52853438adc5481db --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form4.cs" @@ -0,0 +1,75 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace WindowsFormsApp5 +{ + public partial class Form4 : Form + { + private int id; + + public Form4() + { + InitializeComponent(); + } + //添加 + private void button1_Click(object sender, EventArgs e) + { + var SalaryString = textBox2.Text.ToString(); + + var ManagerIdString = textBox3.Text.ToString(); + + var title = textBox1.Text; + + var author = textBox2.Text; + + if (id > 0) + { + string conSting = string.Format("update Articles set Title = '{0}',Author = '{1}' where Id = {2}", id, title, author); + + var sql = DbHelper.AddOrEditSave(conSting); + + if (sql == 1) + { + MessageBox.Show("我们成功啦!", "夜夜夜夜 提示"); + + this.DialogResult = DialogResult.Yes; + + this.Close(); + } + } + else + { + string cmdSting = string.Format("insert into Articles(Title, Author)values('{0}', '{1}')", title, author); + + var ber = DbHelper.AddOrEditSave(cmdSting); + + if (ber == 1) + { + MessageBox.Show("添加成功", "来自亲爱的提示"); + + this.DialogResult = DialogResult.Yes; + + this.Close(); + } + } + } + + //取消 + private void button2_Click(object sender, EventArgs e) + { + this.Close (); + } + + private void Form4_Load(object sender, EventArgs e) + { + + } + } +} diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form4.resx" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form4.resx" new file mode 100644 index 0000000000000000000000000000000000000000..1af7de150c99c12dd67a509fe57c10d63e4eeb04 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form4.resx" @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form5.Designer.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form5.Designer.cs" new file mode 100644 index 0000000000000000000000000000000000000000..11b406e835b91b6591f7a2377d11b3b5398ea0e2 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form5.Designer.cs" @@ -0,0 +1,145 @@ +namespace WindowsFormsApp5 +{ + partial class Form5 + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.textBox3 = new System.Windows.Forms.TextBox(); + this.label3 = new System.Windows.Forms.Label(); + this.textBox2 = new System.Windows.Forms.TextBox(); + this.textBox1 = new System.Windows.Forms.TextBox(); + this.label2 = new System.Windows.Forms.Label(); + this.label1 = new System.Windows.Forms.Label(); + this.button2 = new System.Windows.Forms.Button(); + this.button1 = new System.Windows.Forms.Button(); + this.SuspendLayout(); + // + // textBox3 + // + this.textBox3.Location = new System.Drawing.Point(378, 150); + this.textBox3.Name = "textBox3"; + this.textBox3.Size = new System.Drawing.Size(100, 21); + this.textBox3.TabIndex = 29; + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.label3.Location = new System.Drawing.Point(224, 150); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(76, 16); + this.label3.TabIndex = 28; + this.label3.Text = "发布时间"; + // + // textBox2 + // + this.textBox2.Location = new System.Drawing.Point(378, 104); + this.textBox2.Name = "textBox2"; + this.textBox2.Size = new System.Drawing.Size(100, 21); + this.textBox2.TabIndex = 27; + // + // textBox1 + // + this.textBox1.Location = new System.Drawing.Point(378, 58); + this.textBox1.Name = "textBox1"; + this.textBox1.Size = new System.Drawing.Size(100, 21); + this.textBox1.TabIndex = 26; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.label2.Location = new System.Drawing.Point(224, 104); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(42, 16); + this.label2.TabIndex = 25; + this.label2.Text = "作者"; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.label1.Location = new System.Drawing.Point(224, 61); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(42, 16); + this.label1.TabIndex = 24; + this.label1.Text = "名称"; + // + // button2 + // + this.button2.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.button2.Location = new System.Drawing.Point(403, 200); + this.button2.Name = "button2"; + this.button2.Size = new System.Drawing.Size(75, 35); + this.button2.TabIndex = 23; + this.button2.Text = "取消"; + this.button2.UseVisualStyleBackColor = true; + // + // button1 + // + this.button1.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.button1.Location = new System.Drawing.Point(226, 200); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(75, 35); + this.button1.TabIndex = 22; + this.button1.Text = "刷新"; + this.button1.UseVisualStyleBackColor = true; + this.button1.Click += new System.EventHandler(this.button1_Click); + // + // Form5 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(800, 450); + this.Controls.Add(this.textBox3); + this.Controls.Add(this.label3); + this.Controls.Add(this.textBox2); + this.Controls.Add(this.textBox1); + this.Controls.Add(this.label2); + this.Controls.Add(this.label1); + this.Controls.Add(this.button2); + this.Controls.Add(this.button1); + this.Name = "Form5"; + this.Text = "Form5"; + this.Load += new System.EventHandler(this.Form5_Load); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.TextBox textBox3; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.TextBox textBox2; + private System.Windows.Forms.TextBox textBox1; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.Button button2; + private System.Windows.Forms.Button button1; + } +} \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form5.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form5.cs" new file mode 100644 index 0000000000000000000000000000000000000000..b7c445ca7d8311c6fc79758ef9e6b3d8b87e47b2 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form5.cs" @@ -0,0 +1,58 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace WindowsFormsApp5 +{ + public partial class Form5 : Form + { + private int id; + + public Form5() + { + InitializeComponent(); + } + + public Form5(string name, int id, string title, string author) + { + this.id = id; + } + + public Form5(string name, int id, int title, int author) + { + Name = name; + this.id = id; + } + + private void Form5_Load(object sender, EventArgs e) + { + + } + + private void button1_Click(object sender, EventArgs e) + { + + /* var name = textBox1 .Text; + var age = textBox2.Text; + var score = textBox3 .Text; + + + //修改 + if (this.id > 0) + { + var sql = string.Format("update Articles set Author ='{0}',name={1}, id={2}, title={3}, author", name, age, score, this.id); + + DbHelper.AddOrEditSave(sql); + + MessageBox.Show("修改成功!", "提示"); + + }*/ + } + } +} diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form5.resx" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form5.resx" new file mode 100644 index 0000000000000000000000000000000000000000..1af7de150c99c12dd67a509fe57c10d63e4eeb04 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Form5.resx" @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Program.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Program.cs" new file mode 100644 index 0000000000000000000000000000000000000000..10849a5f9cc4efe937ee20614aa9277f475a016d --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Program.cs" @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace WindowsFormsApp5 +{ + static class Program + { + /// + /// 应用程序的主入口点。 + /// + [STAThread] + static void Main() + { + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new Form1()); + } + } +} diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/AssemblyInfo.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/AssemblyInfo.cs" new file mode 100644 index 0000000000000000000000000000000000000000..dc85b917631f483414b22d4460f743859d276b08 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/AssemblyInfo.cs" @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// 有关程序集的一般信息由以下 +// 控制。更改这些特性值可修改 +// 与程序集关联的信息。 +[assembly: AssemblyTitle("WindowsFormsApp5")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("WindowsFormsApp5")] +[assembly: AssemblyCopyright("Copyright © 2020")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// 将 ComVisible 设置为 false 会使此程序集中的类型 +//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型 +//请将此类型的 ComVisible 特性设置为 true。 +[assembly: ComVisible(false)] + +// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID +[assembly: Guid("31175128-6cf9-40a7-98e4-42db46586571")] + +// 程序集的版本信息由下列四个值组成: +// +// 主版本 +// 次版本 +// 生成号 +// 修订号 +// +// 可以指定所有值,也可以使用以下所示的 "*" 预置版本号和修订号 +// 方法是按如下所示使用“*”: : +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/Resources.Designer.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/Resources.Designer.cs" new file mode 100644 index 0000000000000000000000000000000000000000..8c4dea3f5df15d68bb929a3b45957cb4cae0f999 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/Resources.Designer.cs" @@ -0,0 +1,71 @@ +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本: 4.0.30319.42000 +// +// 对此文件的更改可能导致不正确的行为,如果 +// 重新生成代码,则所做更改将丢失。 +// +//------------------------------------------------------------------------------ + +namespace WindowsFormsApp5.Properties +{ + + + /// + /// 强类型资源类,用于查找本地化字符串等。 + /// + // 此类是由 StronglyTypedResourceBuilder + // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 + // 若要添加或删除成员,请编辑 .ResX 文件,然后重新运行 ResGen + // (以 /str 作为命令选项),或重新生成 VS 项目。 + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources + { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() + { + } + + /// + /// 返回此类使用的缓存 ResourceManager 实例。 + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager + { + get + { + if ((resourceMan == null)) + { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("WindowsFormsApp5.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// 覆盖当前线程的 CurrentUICulture 属性 + /// 使用此强类型的资源类的资源查找。 + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture + { + get + { + return resourceCulture; + } + set + { + resourceCulture = value; + } + } + } +} diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/Resources.resx" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/Resources.resx" new file mode 100644 index 0000000000000000000000000000000000000000..af7dbebbacef595e3089c01c05671016c21a8304 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/Resources.resx" @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/Settings.Designer.cs" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/Settings.Designer.cs" new file mode 100644 index 0000000000000000000000000000000000000000..83953fff62031051d6c7c6fcdfeadd87d57f9372 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/Settings.Designer.cs" @@ -0,0 +1,36 @@ +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +namespace WindowsFormsApp5.Properties { + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.9.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default { + get { + return defaultInstance; + } + } + + [global::System.Configuration.ApplicationScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)] + [global::System.Configuration.DefaultSettingValueAttribute("Data Source=.;Initial Catalog=Blogs;User ID=sa;Password=123456")] + public string BlogsConnectionString { + get { + return ((string)(this["BlogsConnectionString"])); + } + } + } +} diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/Settings.settings" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/Settings.settings" new file mode 100644 index 0000000000000000000000000000000000000000..d12ed9d0cffed9b3a3e3a240bff572352e412eac --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/Properties/Settings.settings" @@ -0,0 +1,14 @@ + + + + + + <?xml version="1.0" encoding="utf-16"?> +<SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> + <ConnectionString>Data Source=.;Initial Catalog=Blogs;User ID=sa;Password=123456</ConnectionString> + <ProviderName>System.Data.SqlClient</ProviderName> +</SerializableConnectionString> + Data Source=.;Initial Catalog=Blogs;User ID=sa;Password=123456 + + + \ No newline at end of file diff --git "a/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/WindowsFormsApp5.csproj" "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/WindowsFormsApp5.csproj" new file mode 100644 index 0000000000000000000000000000000000000000..4d745c647c71096d83b89cfecd6ad9193ee57d82 --- /dev/null +++ "b/\346\242\201\350\211\272\347\274\244/WindowsFormsApp5/WindowsFormsApp5.csproj" @@ -0,0 +1,136 @@ + + + + + Debug + AnyCPU + {31175128-6CF9-40A7-98E4-42DB46586571} + WinExe + WindowsFormsApp5 + WindowsFormsApp5 + v4.6.1 + 512 + true + true + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + + + True + True + BlogsDataSet.xsd + + + + Form + + + Form1.cs + + + Form + + + Form2.cs + + + Form + + + Form3.cs + + + Form + + + Form4.cs + + + Form + + + Form5.cs + + + + + Form1.cs + + + Form2.cs + + + Form3.cs + + + Form4.cs + + + Form5.cs + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + + + BlogsDataSet.xsd + + + MSDataSetGenerator + BlogsDataSet.Designer.cs + Designer + + + BlogsDataSet.xsd + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + \ No newline at end of file