Tag: 名称空间

类库引用问题

我正在构建一个类库,并使用其默认名称空间作为“系统”。 假设我正在创建一个通用数据结构,例如PriorityQueue并将其放在System.Collections.Generic命名空间下。 现在,当我从另一个项目引用该库时,我再也看不到“System.Collections.Generic”命名空间下的PriorityQueue。 虽然该项目中引用了库,但我无法访问其中的任何类。 我的问题是mscorlib和System.dll共享类似的命名空间,但仍然可以访问程序集中的类,但为什么不能挖掘? 如果我在我的类库中的System.Collections.Generic命名空间下放置一个公共类并在项目中引用该库并使用“using System.Collections.Generic”之类的语句,那还为什么我不能在那里访问我的类呢? 这是我做过的实验,我知道在自定义类库中不鼓励使用System命名空间,但我想知道为什么在这种特殊情况下我无法访问我的类的原因? 请有人对此有所了解。 PS:上次我问过类似的问题,但说错了,所以人们被误解了,我没有得到答案。 这次我试图尽可能正确地说出来。 很抱歉对于这个误会。

从其他名称空间访问变量

我是C#的新手,编程一般我的问题是如何调用不同命名空间中的变量? 如果我有这个代码 public void servicevalues(string _servicename) { string servicename = _servicename; string query = string.Format(“SELECT * FROM Win32_Service WHERE Name ='{0}'”, servicename); ManagementObjectSearcher moquery = new ManagementObjectSearcher(query); ManagementObjectCollection queryCollection = moquery.Get(); foreach (ManagementObject service in queryCollection) { string serviceId = Convert.ToString(service[“DisplayName”]); bool serviceResult = Convert.ToBoolean(service[“Started”]); } 我在服务名称中传递如何从不同的命名空间调用一个或多个变量值?

ASP.NET:通过命名空间一次注册多个控件?

是否可以在aspx-File中注册一个完整的usercontrol名称空间,而不是单独的每个控件? 我创建了一堆usercontrols并将它们收集到一个自己的命名空间“MyWebControls”中,如下所示: 代码隐藏: namespace MyWebControls { public partial class LevelFilter : System.Web.UI.UserControl { … } } 我现在尝试将它们包含在我的页面中(以及什么不起作用): … 有没有办法做到这一点? 显然它适用于像AjaxControlToolkit这样的外部程序集,所以我想这应该是可能的。 我正在使用ASP.NET 4.0。

App.xaml中的错误试图在Windows Phone 8项目中使用MVVM Light

当我通过NuGet添加MVVM Light包时,我会在安装期间添加引用App.xaml文件中的行的错误。 这些错误仅出现在Windows Phone 8项目中。 Windows Phone 7项目中完全相同的行不会引发任何错误。 MVVM Light添加的行是: 这些行位于结束标记之前。 “错误列表”窗格中报告的错误是: 每个字典必须有一个关联的密钥 名称“ViewModelLocator”在命名空间“clr-namespace:sdkVoiceAlarmClockWP8CS.ViewModel”中不存在 这似乎有意义,因为标记没有键属性。 但是,如果我试图将这一行移动到外面 块,我得到一组全新的错误。 就ViewModelLocator问题而言,我进行了双重检查,并将以下命名空间作为属性添加到标记中,并且未标记任何错误: xmlns:vm=”clr-namespace:sdkVoiceAlarmClockWP8CS.ViewModel” mc:Ignorable=”d” 为什么这一组完全相同的行在Windows Phone 7项目中工作正常?如何修复我在Windows Phone 8项目中遇到的命名空间问题? 以防这是由于更复杂的问题,这里是整个App.xaml文件:

为什么命名空间类型不应该依赖于嵌套的命名空间类型?

在.Net命名指南( http://msdn.microsoft.com/en-us/library/893ke618(v=vs.71).aspx )中有这样的声明: “嵌套命名空间应该依赖于包含命名空间中的类型。例如,System.Web.UI.Design中的类依赖于System.Web.UI中的类。但是,System.Web.UI中的类不依赖于System.Web.UI.Design中的类。“ 我想知道为什么?

不能包含Microsoft.Security.Application?

我不能包含Microsoft.Security.Application using Microsoft.Security.Application; 给出了这个错误: 命名空间“Microsoft”中不存在类型或命名空间名称“Security”(您是否缺少程序集引用?) 是的,我点击了Bin – > Add Reference … – > AntiXSSLibrary.dll ,它将它添加到包含AntiXSSLibray.xml的Bin文件夹中。 我重建了整个网站,但仍然没有。 我正在使用ASP .NET 3.5 C# – AntiXSSLibrary 4.0稳定

XSD命名空间到C#命名空间

我们正在寻找一种方法来从XSD中获取C#autogenerate类,并使用XSD中的命名空间信息创建C#命名空间。 你似乎可以从XSD创建一个结构化的(xxxx.yyyy.zzzz)C#命名空间吗? 我们缺少一个技巧吗? 谢谢

C#:在这种情况下,如何过滤掉不需要的命名空间?

这更像是一个与语言无关的问题而不是C#特定的问题,但由于它处理命名空间,我认为我将其标记为与.NET相关。 假设您有一堆代表名称空间的字符串: [ “System”, “System.Windows”, “System.Windows.Input”, “System.Windows.Converters”, “System.Windows.Markup”, “System.Windows.Markup.Primitives”, “System.IO”, “System.IO.Packaging” ] 您希望以这样的方式过滤它们,即排除“包含”集合中另一个命名空间的任何命名空间。 例如,由于System包含System.Windows ,因此将其排除。 由于System.IO是System.IO的父级,因此它也被排除在外。 这一直持续到你最终得到这个: [ “System.Windows.Input”, “System.Windows.Converters”, “System.Windows.Markup.Primitives”, “System.IO.Packaging” ] 在C#中以这种方式过滤列表的有效方法是什么? 我正在寻找一个看起来像这样的方法: public IEnumerable FilterNamespaces(IEnumerable namespaces) {} 任何帮助将不胜感激,谢谢! 编辑:这是最终对我有用的: public IEnumerable FilterNamespaces(IEnumerable namespaces) => namespaces.Where(current => !namespaces.Any(n => n.StartsWith($”{current}.”)));

为什么我不能在对象初始化期间使用部分限定的命名空间?

我怀疑这是一个以前被问过多次的问题,但我还没找到。 如果我不经常在文件中使用该类型,或者我using namaspacename文件顶部的using namaspacename添加以便能够编写new ClassName()我通常使用完全限定的命名空间。 但是如果只添加了完整命名空间的一部分呢? 为什么编译器找不到类型并抛出错误? 考虑嵌套命名空间中的以下类: namespace ns_1 { namespace ns_1_1 { public class Foo { } } } 因此,如果我现在想要初始化此类的实例,它可以通过以下方式工作: using ns_1.ns_1_1; public class Program { public Program() { // works, fully qualified namespace: var foo = new ns_1.ns_1_1.Foo(); // works, because of using ns_1.ns_1_1: foo = new Foo(); } } 但是以下不起作用: using […]

在C#中使用命名空间别名有什么好处?

使用命名空间别名有什么好处? 它只对简化编码有用吗?