2

これと同じクラスがいくつかあるシステムを構築しています。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

/// <summary>
/// Class to handle operations at Status table
/// </summary>
public class Status
{
    #region Vars and Class Objects
    protected Dados d;
    protected string sql;
    protected Logs log;
    protected Permissoes p;
    protected List<string> Mensagens;
    #endregion

    #region Constructor e Destructor
    public Status()
    {
        d = new Dados();
        log = new Logs();
        p = new Permissoes();
        Mensagens = new List<string>();
    }

    ~Status()
    {
        d = null;
        p = null;
        log = null;
        sql = null;
    }
    #endregion
}

(クラスログとクラス許可は同様のコード構造を持っています)。

上記のコードでは、コンストラクター内のすべての宣言について、VS2010IDEによって次のエラーが表示されています。

エラーファイル行列             
'Status.d'と'Status.d'の間のあいまいさStatus.cs229
'Status.log'と'Status.log'の間のあいまいさStatus.cs239
'Status.p'と'Status.p'の間のあいまいさStatus.cs249
'Status.Mensagens'と'Status.Mensagens'のあいまいさStatus.cs259
'Status.d'と'Status.d'のあいまいさPrioridades.cs219
'Status.p'と'Status.p'のあいまいさPrioridades.cs229
'Status.log'と'Status.log'のあいまいさPrioridades.cs239
'Status.d'と'Status.d'のあいまいさPrioridades.cs283
'Status.p'と'Status.p'のあいまいさPrioridades.cs299
'Status.log'と'Status.log'のあいまいさPrioridades.cs309
'Status.sql'と'Status.sql'のあいまいさPrioridades.cs319
'Status.p'と'Status.p'のあいまいさPrioridades.cs4518
'Status.sql'と'Status.sql'のあいまいさPrioridades.cs535
'Status.d'と'Status.d'のあいまいさPrioridades.cs545
'Status.log'と'Status.log'のあいまいさPrioridades.cs5817
'Status.p'と'Status.p'のあいまいさPrioridades.cs7818
'Status.sql'と'Status.sql'のあいまいさPrioridades.cs8617
'Status.d'と'Status.d'のあいまいさPrioridades.cs8717
'Status.log'と'Status.log'のあいまいさPrioridades.cs8817
'Status.p'と'Status.p'のあいまいさPrioridades.cs10618
'Status.sql'と'Status.sql'のあいまいさPrioridades.cs11417
'Status.d'と'Status.d'のあいまいさPrioridades.cs11517
'Status.log'と'Status.log'のあいまいさPrioridades.cs11617
'Status.p'と'Status.p'のあいまいさPrioridades.cs13618
'Status.sql'と'Status.sql'のあいまいさPrioridades.cs13713
'Status.d'と'Status.d'のあいまいさPrioridades.cs13817
'Status.p'と'Status.p'のあいまいさPrioridades.cs15718
'Status.sql'と'Status.sql'のあいまいさPrioridades.cs15813
'Status.d'と'Status.d'のあいまいさPrioridades.cs15926
'Status.p'と'Status.p'のあいまいさPrioridades.cs17718
'Status.sql'と'Status.sql'のあいまいさPrioridades.cs1784
'Status.d'と'Status.d'のあいまいさPrioridades.cs17917

奇妙なことに、私はこれとまったく同じ方法論を使用して別のシステムを構築しましたが、それは魅力のように機能します。これらのファイルを別のWebサイトにコピーして貼り付け、クラスを変更して別のシステムを作成しています。

何か案は?虫臭い…

編集:

ちょうど見つけた。何が起こったのか:Prioridadesクラスをコピーして貼り付け、名前を変更して、VS2010でリファクタリングを使用しました。元のクラスを含め、すべての参照の名前を「Prioridades」から「Status」に変更しました...そしてすべてが乱雑になりました。

解決策:リファクタリングを使用するときは注意してください。

すみません、みんな...

4

1 に答える 1

1

Prioridades.csの「Status.d」に反対しているのは興味深いことです。私には、Prioridades.csに「Prioridades」ではなく「Status」という名前のクラスが含まれているように見えます。クラスの内容(またはファイル全体)をコピーして貼り付けるときは、必ずクラス名を変更してください。忘れがちなことです。

于 2012-11-13T17:54:16.257 に答える