0

Windows Azure の .NET サイトで作業しています。昨夜、デプロイを行ったところ、次のエラーが発生し始めました。

Server Error in '/' Application.
Compilation Error
Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately. 
Compiler Error Message: CS0101: The namespace 'Avviato.PVSA.Objects' already contains a definition for 'LogProccess'

Source Error:
    Line 13: namespace Avviato.PVSA.Objects
    Line 14: {
    Line 15:     public class LogProccess
    Line 16:     {
    Line 17:         public long logId { get; set; }
>Source File: c:\DWASFiles\sites\pvsadev\VirtualDirectory0>\site\wwwroot\App_Code\Objects\LogProcess.cs    Line: 15 

私はいくつかの調査を行いました.MSDNによると、このエラーは、関連するクラスに対して複数の宣言がある場合にトリガーされます. ただし、コードを実行しましたが、LogProcessクラスの 2 番目の宣言はありません。プロジェクトはローカルで実行されます。誰かが、Azure にキャッシュされているコンパイル エラーである可能性があるとほのめかしたので、Azure の新しいサイトにデプロイしようとしましたが、すべてがそこで機能しています。

質問は次のとおりです。このエラーを引き起こす可能性のある他の原因はありますか? キャッシュ理論が正しい場合、Azure でコンパイル キャッシュをクリアする方法はありますか?

VS2012 から Windows Azure SDK を使用してデプロイしました。さらに役立つ場合は、エラーを生成するクラスのコードを次に示します。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
using Avviato.PVSA.Utils;
namespace Avviato.PVSA.Objects
{
    public class LogProccess
    {
        public long logId { get; set; }
        public DateTime createDate { get; set; }
        public GlobalEnums.LogStatus status { get; set; }
        public GlobalEnums.ObjectType objectType { get; set; }
        public string errorMessage { get; set; }
        public GlobalEnums.LogErrorType errorType {get; set;}
        public long localId { get; set; }
        public string externalId { get; set; }
        public string parameters { get; set; }
        public string testAzure { get; set; }
        public LogProccess()
        {
        }
        public bool  Save()
        {
            bool saved = false;
            SqlCommand command = new SqlCommand();
            SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["PVSA_BD_CONNECTION"].ToString());
            try
            {
                connection.Open();
                command.Connection = connection;
                if (this.logId == 0) // actually the story only can be create, not updated
                {
                    command.CommandText = @"INSERT INTO [tblLog] ([createdDate],[status],[typeObject],[errorMessage],[typeError],[localId],[externalId],[parameters])
                                          VALUES(
                                            @createdDate,@status,@typeObject,@errorMessage,@typeError,@localId,@externalId,@parameters
                                           )";

                    command.Parameters.AddWithValue("@createdDate", DateTime.Now);
                    command.Parameters.AddWithValue("@status", this.status);
                    command.Parameters.AddWithValue("@typeObject", this.objectType);
                    command.Parameters.AddWithValue("@errorMessage", (string.IsNullOrEmpty(this.errorMessage)) ? System.Data.SqlTypes.SqlString.Null : this.errorMessage);
                    command.Parameters.AddWithValue("@typeError", this.errorType);
                    command.Parameters.AddWithValue("@localId", this.localId);
                    command.Parameters.AddWithValue("@externalId", (string.IsNullOrEmpty(this.externalId)) ? System.Data.SqlTypes.SqlString.Null : this.externalId);
                    command.Parameters.AddWithValue("@parameters", (string.IsNullOrEmpty(this.parameters)) ? System.Data.SqlTypes.SqlString.Null : this.parameters);
                    command.ExecuteNonQuery();
                }
            }
            catch (SqlException sqlEx)
            {
                Util.LogExceptionWithQuery(sqlEx, "Registering log", command);
            }
            catch (Exception ex)
            {
                Util.LogException(ex, "Registering log");
            }
            finally
            {
                connection.Close();
            }
            return saved;
        }
    }
}
4

0 に答える 0