web-dev-qa-db-ja.com

「...は特定のコンテキストでは無効な「タイプ」ですか?」を解決する方法は? (C#)

次のコードはエラーを生成します。

エラー:「CERas.CERAS」は「タイプ」であり、指定されたコンテキストでは無効です

なぜこのエラーが発生するのですか?

using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WinApp_WMI2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            CERas.CERAS = new CERas.CERAS();
        }
    }
}
15
Penguen

変化する

private void Form1_Load(object sender, EventArgs e) 
    { 
        CERas.CERAS = new CERas.CERAS(); 
    } 

private void Form1_Load(object sender, EventArgs e) 
    { 
        CERas.CERAS c = new CERas.CERAS(); 
    } 

または、後でもう一度使用する場合

に変更する

using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 

namespace WinApp_WMI2 
{ 
    public partial class Form1 : Form 
    { 
        CERas.CERAS m_CERAS;

        public Form1() 
        { 
            InitializeComponent(); 
        } 

    private void Form1_Load(object sender, EventArgs e) 
    { 
        m_CERAS = new CERas.CERAS(); 
    } 
} 


}
22
Adriaan Stander

CERASは、割り当てることができないクラス名です。クラスが IDisposable を実装するため、一般的な使用法は次のとおりです。

using (CERas.CERAS ceras = new CERas.CERAS())
{
    // call some method on ceras
}
5
Darin Dimitrov

変数名を指定するのを忘れました。 CERas.CERAS newCeras = new CERas.CERAS();である必要があります

5