Tag: .net

Icecast 2:协议描述,使用C#流式传输

我需要编写一个Icecast 2客户端,它能够将来自计算机的音频(mp3文件,声卡录音等)传输到服务器。 我决定在C#上写这样一个客户端。 两个问题: 1)了解我可能/应该/必须使用的通用指南(最佳实践,可能是技巧)非常有用,以便在C#中无缝地处理流式音频(当然是通过网络流式传输)。 一些关于TCP / IP流通用的一般技术文档,特别是ICY,关于应用程序整体架构的建议和注释将非常受欢迎。 2)是否有关于Icecast 2流媒体协议的良好文档? 我无法在Icecast的官方网站上找到这些文档。 我不想直接从它的源代码中提取协议描述。 如果协议真的很简单,那么有人可以在这里提供它的摘要吗?

没有使用generics扩展方法的类型推断

我有以下方法: public static TEventInvocatorParameters Until (this TEventInvocatorParameters p, Func breakCond) where TEventInvocatorParameters : EventInvocatorParameters where TEventArgs : EventArgs { p.BreakCondition = breakCond; return p; } 而这堂课 public class EventInvocatorParameters where T : EventArgs { public Func BreakCondition { get; set; } // Other properties used below omitted for brevity. } 现在,我有以下问题: 此扩展方法显示所有类型,甚至是string 。 我不能写new EventInvocatorParameters(EventABC).Until(e […]

OleDbParameters和参数名称

我有一个SQL语句,我正在通过OleDb执行,语句是这样的: INSERT INTO mytable (name, dept) VALUES (@name, @dept); 我正在向OleDbCommand添加参数,如下所示: OleDbCommand Command = new OleDbCommand(); Command.Connection = Connection; OleDbParameter Parameter1 = new OleDbParameter(); Parameter1.OleDbType = OleDbType.VarChar; Parameter1.ParamterName = “@name”; Parameter1.Value = “Bob”; OleDbParameter Parameter2 = new OleDbParameter(); Parameter2.OleDbType = OleDbType.VarChar; Parameter2.ParamterName = “@dept”; Parameter2.Value = “ADept”; Command.Parameters.Add(Parameter1); Command.Parameters.Add(Parameter2); 我得到的问题是,如果我添加参数以反过来命令,那么列将填充错误的值(即名称在dept列中,反之亦然) Command.Parameters.Add(Parameter2); Command.Parameters.Add(Parameter1); 我的问题是,如果参数值只是按照添加命令的顺序插入到表中,参数名称的重点是什么? 参数名称似乎多余?

Windows服务未显示在控制面板下添加删除程序

我安装了我的Windows服务(服务名称:测试服务) Windows 7计算机中的.NET Framework(:\ Windows \ Microsoft.NET \ FrameWork64 \ v4)中存在InstallUtil.exe。 我可以在服务控制台下看到我的服务。 但是,我去控制面板的程序和function手动卸载相同的服务,我没有在程序和function下看到我的服务? 有什么想法为什么服务不会显示,这样,用户可以卸载它? 我也检查了显示隐藏文件,但仍未显示服务?

LINQ动态分组

我有一个类列表的记录,因此用户可以选择按属性名称动态分组行。 例如MenuText , RoleName或ActionName 。 然后我必须执行分组,所以我需要一个通用方法来通过传递列名来处理分组。 示例: public class Menu { public string MenuText {get;set;} public string RoleName {get;set;} public string ActionName {get;set;} } public class Menus { var list = new List(); list.Add( new Menu {MenuText=”abc”,RoleName =”Admin”, ActionName=”xyz”}; list.Add( new Menu {MenuText=”abc”,RoleName =”Admin”, ActionName=”xyz”}; list.Add( new Menu {MenuText=”abc1″,RoleName =”Admin1″, ActionName=”xyz1″}; list.Add( new Menu {MenuText=”abc1″,RoleName […]

如何以编程方式隐藏桌面图标?

如何使用C#以编程方式显示/隐藏桌面图标? 我正在尝试创建一个使用小部件的替代桌面,我需要隐藏旧图标。

如何在C#中枚举枚举?

你怎么能enum C#中的enum ? 例如,以下代码无法编译: public enum Suit { Spades, Hearts, Clubs, Diamonds } public void EnumerateAllSuitsDemoMethod() { foreach (Suit suit in Suit) { DoSomething(suit); } } 并给出以下编译时错误: ‘Suit’是’type’,但用作’变量’ 它在Suit关键字上失败,第二个。

Nuget连接尝试失败“无法加载源的服务索引”

在尝试连接到Nuget时,得到以下错误然后我无法连接: [nuget.org]无法加载源https://api.nuget.org/v3/index.json的服务索引。 发送请求时发生错误。 无法连接到远程服务器连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机无法响应68.232.34.200:443 我可以在浏览器上访问https://api.nuget.org/v3/index.json 。 这不是重复的。 其他答案并没有解决我的问题。

当你没有类的源代码时,是否可以对对象进行.NET二进制序列化?

我正在使用BinaryFormatter对C#中的某些对象进行二进制序列化。 但是,某些对象包含我通过DLL访问但没有源代码的类,因此我无法使用Serializable属性标记它们。 是否有一种简单的方法来序列化它们? 我有一个解决方法,涉及获取类NoSource并创建一个新类SerializableNoSource ,构造函数接受一个NoSource对象并NoSource提取我需要的所有信息,但它很糟糕。 还有更好的选择吗?

Environment.Exit()和Application.Shutdown()之间有什么区别?

当我调用Application.Shutdown时 ,有时应用程序无法退出,UI已关闭,但该过程仍在运行。 如何关闭所有线程关闭应用程序? Environment.Exit ()可以关闭所有线程吗? 或者我们应该调用Win32 API TerminateThread来做到这一点?