Visual Studio 2010 での事です。
昨日 .NET 1.1 -> .NET 4 への 移行(Windows アプリ) - お だ のスペース は気づきませんでしたが、実は変わっているのに変換ログに載らない項目がありました。
それは、Web 参照を追加した際に自動生成される Reference.cs です。変換ログでは変更無しとなっていますが、実際には再生成されています。
.NET 1.1 時の Reference.cs (変換時に BackUp フォルダに移される)
//------------------------------------------------------------------------------ // <autogenerated> // This code was generated by a tool. // Runtime Version: 1.1.4322.2470 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // </autogenerated> //------------------------------------------------------------------------------ // // このソース コードは Microsoft.VSDesigner、バージョン 1.1.4322.2470 によって自動生成されました。 // namespace WindowsApplication1.localhost { using System.Diagnostics; using System.Xml.Serialization; using System; using System.Web.Services.Protocols; using System.ComponentModel; using System.Web.Services; /// <remarks/> [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] [System.Web.Services.WebServiceBindingAttribute(Name="Service1Soap", Namespace="http://tempuri.org/")] public class Service1 : System.Web.Services.Protocols.SoapHttpClientProtocol { /// <remarks/> public Service1() { this.Url = "http://localhost/WebService2/Service1.asmx"; } /// <remarks/> [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/CreateDataSet", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] public System.Data.DataSet CreateDataSet(System.Data.DataSet param) { object[] results = this.Invoke("CreateDataSet", new object[] { param}); return ((System.Data.DataSet)(results[0])); } /// <remarks/> public System.IAsyncResult BeginCreateDataSet(System.Data.DataSet param, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("CreateDataSet", new object[] { param}, callback, asyncState); } /// <remarks/> public System.Data.DataSet EndCreateDataSet(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((System.Data.DataSet)(results[0])); } } }.NET 4 に移行した Reference.cs
//------------------------------------------------------------------------------ // <auto-generated> // このコードはツールによって生成されました。 // ランタイム バージョン:4.0.30319.1 // // このファイルへの変更は、以下の状況下で不正な動作の原因になったり、 // コードが再生成されるときに損失したりします。 // </auto-generated> //------------------------------------------------------------------------------ // // このソース コードは Microsoft.VSDesigner、バージョン 4.0.30319.1 によって自動生成されました。 // #pragma warning disable 1591 namespace WindowsApplication1.localhost { using System; using System.Web.Services; using System.Diagnostics; using System.Web.Services.Protocols; using System.ComponentModel; using System.Xml.Serialization; using System.Data; /// <remarks/> [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.1")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] [System.Web.Services.WebServiceBindingAttribute(Name="Service1Soap", Namespace="http://tempuri.org/")] public partial class Service1 : System.Web.Services.Protocols.SoapHttpClientProtocol { private System.Threading.SendOrPostCallback CreateDataSetOperationCompleted; private bool useDefaultCredentialsSetExplicitly; /// <remarks/> public Service1() { this.Url = "http://localhost/WebService2/Service1.asmx"; if ((this.IsLocalFileSystemWebService(this.Url) == true)) { this.UseDefaultCredentials = true; this.useDefaultCredentialsSetExplicitly = false; } else { this.useDefaultCredentialsSetExplicitly = true; } } public new string Url { get { return base.Url; } set { if ((((this.IsLocalFileSystemWebService(base.Url) == true) && (this.useDefaultCredentialsSetExplicitly == false)) && (this.IsLocalFileSystemWebService(value) == false))) { base.UseDefaultCredentials = false; } base.Url = value; } } public new bool UseDefaultCredentials { get { return base.UseDefaultCredentials; } set { base.UseDefaultCredentials = value; this.useDefaultCredentialsSetExplicitly = true; } } /// <remarks/> public event CreateDataSetCompletedEventHandler CreateDataSetCompleted; /// <remarks/> [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/CreateDataSet", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] public System.Data.DataSet CreateDataSet(System.Data.DataSet param) { object[] results = this.Invoke("CreateDataSet", new object[] { param}); return ((System.Data.DataSet)(results[0])); } /// <remarks/> public System.IAsyncResult BeginCreateDataSet(System.Data.DataSet param, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("CreateDataSet", new object[] { param}, callback, asyncState); } /// <remarks/> public System.Data.DataSet EndCreateDataSet(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((System.Data.DataSet)(results[0])); } /// <remarks/> public void CreateDataSetAsync(System.Data.DataSet param) { this.CreateDataSetAsync(param, null); } /// <remarks/> public void CreateDataSetAsync(System.Data.DataSet param, object userState) { if ((this.CreateDataSetOperationCompleted == null)) { this.CreateDataSetOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCreateDataSetOperationCompleted); } this.InvokeAsync("CreateDataSet", new object[] { param}, this.CreateDataSetOperationCompleted, userState); } private void OnCreateDataSetOperationCompleted(object arg) { if ((this.CreateDataSetCompleted != null)) { System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg)); this.CreateDataSetCompleted(this, new CreateDataSetCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); } } /// <remarks/> public new void CancelAsync(object userState) { base.CancelAsync(userState); } private bool IsLocalFileSystemWebService(string url) { if (((url == null) || (url == string.Empty))) { return false; } System.Uri wsUri = new System.Uri(url); if (((wsUri.Port >= 1024) && (string.Compare(wsUri.Host, "localHost", System.StringComparison.OrdinalIgnoreCase) == 0))) { return true; } return false; } } /// <remarks/> [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.1")] public delegate void CreateDataSetCompletedEventHandler(object sender, CreateDataSetCompletedEventArgs e); /// <remarks/> [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.1")] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute("code")] public partial class CreateDataSetCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs { private object[] results; internal CreateDataSetCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : base(exception, cancelled, userState) { this.results = results; } /// <remarks/> public System.Data.DataSet Result { get { this.RaiseExceptionIfNecessary(); return ((System.Data.DataSet)(this.results[0])); } } } } #pragma warning restore 1591
自動生成のコードなので、編集する方が悪いと言われるかも知れませんが .NET 1.1 では partial (型) (C# リファレンス) が使えないので直接編集している可能性もある訳で、変換ログに載せてくれると助かるのになぁと。