如何知道 Visual Studio 项目项是否是 WebReference?
我正在开发一个 Visual Studio 扩展包。我需要使用 IVsSccProject2.GetSccFiles
。
Visual Studio 对于标准文件夹和 WebReferences 的行为有所不同:
- 标准文件夹不返回 SCC 文件,即使它有子文件夹也是如此。
- WebReference 返回 Web 引用下的所有文件(*.wsdl、*.datasource、*.map、*.cs)
这会导致问题,因为我使用通用函数来枚举项目项下的文件。
如何确定项目项是 Web 参考还是标准文件夹?
我尝试使用以下方式获取项目类型:
hierProject.GetGuidProperty(
itemid,
(int)__VSHPROPID.VSHPROPID_TypeGuid,
out guid);
但在本例中 返回的 GUID 始终是物理文件夹(6BB5F8EF-4483-11D3-8BCF-00C04F8EC28C
) 适用于 WebReference 和标准文件夹。
I'm developing a Visual Studio extensibility package. I need to get the files under a project hierarchy using IVsSccProject2.GetSccFiles
.
Visual Studio behaves different for an standard folders and for WebReferences:
- An standard folder returns no SCC files even it has childs.
- The WebReference returns all the files under the web reference (*.wsdl, *.datasource, *.map, *.cs)
This causes a problem because I use a common function to enumerate files under a project item.
How can I determine if the project item is a web reference or a standard folder?
I tried to get the item type using:
hierProject.GetGuidProperty(
itemid,
(int)__VSHPROPID.VSHPROPID_TypeGuid,
out guid);
but in this case the returned GUID is always Physical Folder (6BB5F8EF-4483-11D3-8BCF-00C04F8EC28C
) for both WebReference and standard folder.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
根据上面的注释,使用 GetSccSpecialFiles 方法。
As per the comments above, use the GetSccSpecialFiles method.