我想验证仅在项目中可见的属性,这是编译操作的默认命名空间值。我能够找到验证项目引用的能力,但这不提供读取默认项目的命名空间的选项。
可以用 Roslyn 分析仪来做吗?
编辑:我发现在编译开始期间有一些可用的属性,但这并没有提供想要的信息:
context.Compilation.GlobalNamespace.IsNamespace > returns true
context.Compilation.GlobalNamespace.IsGlobalNamespace > returns true
context.Compilation.GlobalNamespace.Name > returns ""
context.Compilation.GlobalNamespace.ToDisplayString() > returns "<global namespace>"
Run Code Online (Sandbox Code Playgroud)
我知道我可以转到每个类并检查名称空间,但事实并非如此,因为我想知道默认项目的名称空间。示例:项目名称=“Project.UnitTests”,程序集=“Project.UnitTests”,默认命名空间为“Project.UnitTest”。默认命名空间与项目不匹配,因为项目名称是复数,而命名空间是单一含义。
嗨我已经将VC++ 6项目转换为VC++ 2010,并且在显示模态打开文件对话框时遇到错误.
它显示对话框的底部但顶部缺失,也未填充过滤器.
header具有用于存储文件信息的公共成员:
CString m_strFilePathName;
CString m_strFileExtName;
Run Code Online (Sandbox Code Playgroud)
我的代码显示对话框:
static TCHAR BASED_CODE szFilter[] = _T("Open Bin File(*.abs)|")
_T("Default DataBase File(*.ddf)|")
_T("SatCodex File(*.sdx)|")
_T("Format Text File(*.txt)");
// TODO: Add your command handler code here
CFileDlg fd(TRUE, NULL, "", OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, szFilter);
//"Open Bin File(*.abs)|Default DataBase File(*.ddf)|SatCodex File(*.sdx)|Format Text File(*.txt)");
const int c_cMaxFiles = 1;
const int c_cbBuffSize = (c_cMaxFiles * (MAX_PATH + 1)) + 1;
fd.GetOFN().lpstrFile = m_strFilePathName.GetBuffer(c_cbBuffSize);
fd.GetOFN().nMaxFile = c_cbBuffSize;
// Dialog hangs on this line:
if(fd.DoModal() != …Run Code Online (Sandbox Code Playgroud)