gpt4 book ai didi

c# - 使用 VS13 在 C# 中声明变量时出现奇怪的错误

转载 作者:太空宇宙 更新时间:2023-11-03 18:30:44 25 4
gpt4 key购买 nike

所以我导入了 office 库,我说 using Microsoft.Office.Interop;

我正在尝试创建一种方法来检查 Excel 工作簿是否已打开。由于此错误,尚未取得任何进展。

当我声明 Excel.Application exApp; 时,它说找不到类型或命名空间名称“excel”。

它说我需要声明它 Microsoft.Office.Interop.Excel.Application exApp;

我真的不认为我在这里做错了什么......我的导入没有错误..

using Microsoft.Office.Interop;

namespace Month_End_Closing
{
public partial class Step1Form : Form
{
public Step1Form()
{
InitializeComponent();
}

static bool IsOpened(string wbook)
{
bool isOpened = true;
Excel.Application exApp;

return isOpened;
}
}
}

最佳答案

using 指令不是那样工作的。您不能在 using 指令中提供命名空间名称的部分,然后在其他地方提供其余部分。

来自 C# 5 规范的第 9.4.2 节:

A using-namespace-directive imports the types contained in a namespace into the immediately enclosing compilation unit or namespace body, enabling the identifier of each type to be used without qualification.

...

A using-namespace-directive imports the types contained in the given namespace, but specifically does not import nested namespaces.

例如,这是无效的:

using System;
...

Console.WriteLine(IO.File.Exists("foo"));

所以你可以这样写:

using Microsoft.Office.Interop.Excel;

然后:

Application exApp;

假设 Application 在其他方面是明确的。 (听起来好像不是你的情况。)或者你可以使用别名:

using Excel = Microsoft.Office.Interop.Excel;

然后:

Excel.Application exApp;

关于c# - 使用 VS13 在 C# 中声明变量时出现奇怪的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22814183/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com