小编Ode*_*ded的帖子

TcpClient如何实现IDisposable并且没有公共Dispose方法?

就像标题说的那样:

TcpClient如何实现IDisposable并且没有公共Dispose方法?

.net idisposable tcpclient

15
推荐指数
1
解决办法
907
查看次数

路上的非法人物

我想找到一个位于的文件

C:\Program Files (x86)\test software\myapp\demo.exe
Run Code Online (Sandbox Code Playgroud)

在VS调试器中,我将路径视为:

"\"C:\\\Program Files (x86)\\\test software\\\myapp\\\demo.exe\""
Run Code Online (Sandbox Code Playgroud)

当我打印出来时,我在控制台中看到:

"C:\Program Files (x86)\test software\myapp\demo.exe"
Run Code Online (Sandbox Code Playgroud)

但是当我尝试类似的东西时

FileInfo fi = new FileInfo(PathMentionedAbove); 
Run Code Online (Sandbox Code Playgroud)

我在路上得到了非法角色.

怎么了?文件存在且路径正确.在这条道路上有什么不合法的?

任何帮助,将不胜感激.

c#

15
推荐指数
4
解决办法
10万
查看次数

对象和集合初始化器 - 分配自己?

我正在程序中使用对象和集合初始化程序,并思考如何获取下面的示例.

Orders.Add(new Order()
                {
                  id = 123,
                  date = new datetime(2012,03,26)
                  items = new OrderItems()
                          { 
                             lineid = 1,
                             quantity = 3,
                             order = ?? // want to assign to current order.
                          }
                 }
Run Code Online (Sandbox Code Playgroud)

如何将新创建的订单分配给订单商品?

.net c#

15
推荐指数
1
解决办法
2489
查看次数

状态机有哪些问题?

状态机最适合哪种编程问题?

我已经阅读过有关使用状态机实现的解析器,但是想了解一些尖叫出来作为状态机实现的问题.

algorithm state

14
推荐指数
2
解决办法
4389
查看次数

14
推荐指数
1
解决办法
2万
查看次数

使用泛型与XmlSerializer

在C#中使用XML序列化时,我使用如下代码:

public MyObject LoadData()
{
    XmlSerializer xmlSerializer = new XmlSerializer(typeof(MyObject));
    using (TextReader reader = new StreamReader(settingsFileName))
    {
        return (MyObject)xmlSerializer.Deserialize(reader);
    }
}
Run Code Online (Sandbox Code Playgroud)

(以及类似的反序列化代码).

它需要铸造而且不是很好.有没有办法,直接在.NET Framework中使用泛型与序列化?也就是说写下这样的东西:

public MyObject LoadData()
{
    // Generics here.
    XmlSerializer<MyObject> xmlSerializer = new XmlSerializer();
    using (TextReader reader = new StreamReader(settingsFileName))
    {
        // No casts nevermore.
        return xmlSerializer.Deserialize(reader);
    }
}
Run Code Online (Sandbox Code Playgroud)

c# oop generics xml-serialization xmlserializer

14
推荐指数
2
解决办法
2万
查看次数

将字符串的字符编码从windows-1252转换为utf-8

我已经将Word文档(docx)转换为html,转换后的html将windows-1252作为其字符编码.在.Net中,对于这个1252字符编码,所有特殊字符都显示为" ".这个html正在Rad编辑器中显示,如果html是Utf-8格式,它将正确显示.

我曾尝试过以下代码但没有静脉

Encoding wind1252 = Encoding.GetEncoding(1252);  
Encoding utf8 = Encoding.UTF8;  
byte[] wind1252Bytes = wind1252.GetBytes(strHtml);  
byte[] utf8Bytes = Encoding.Convert(wind1252, utf8, wind1252Bytes);  
char[] utf8Chars = new char[utf8.GetCharCount(utf8Bytes, 0, utf8Bytes.Length)];   
utf8.GetChars(utf8Bytes, 0, utf8Bytes.Length, utf8Chars, 0);  
string utf8String = new string(utf8Chars);
Run Code Online (Sandbox Code Playgroud)

有关如何将html转换为UTF-8的任何建议?

c# asp.net

14
推荐指数
2
解决办法
7万
查看次数

C#模糊扩展方法

LinqKit有一个扩展方法ForEach用于IEnumerable与相冲突System.Collections.Generic.IEnumerable.

Error   4   The call is ambiguous between the following methods or properties: 
'LinqKit.Extensions.ForEach<Domain>(System.Collections.Generic.IEnumerable<Domain>, System.Action<Domain>)' 
and 
'System.Linq.EnumerableExtensionMethods.ForEach<Domain>(System.Collections.Generic.IEnumerable<Domain>, System.Action<Domain>)'
Run Code Online (Sandbox Code Playgroud)

我怎样才能摆脱这个错误?

c# extension-methods

14
推荐指数
1
解决办法
6765
查看次数

没有锁的Threadsafe集合

我正准备接受采访,我遇到了跟​​随问题.我试过,但我找不到任何可以创建包含线程安全集合而没有"锁定"的类.如果知道任何解决方案,请帮助.

创建一个派生自Object的C#类,并实现以下方法:

  • AddString - 此方法应将给定字符串添加到内部集合
  • ToString - 重写此方法并返回包含内部集合中所有字符串的单个逗号分隔字符串

要求:

  • 必须是线程安全的
  • 必须支持多个并发读者
  • 不得使用任何预先存在的线程安全集合
  • 额外奖励:不要使用任何类型的锁

c# collections multithreading

14
推荐指数
2
解决办法
8308
查看次数

如何检查字符串是否包含List <string>的任何元素?

我有一个if语句,我想检查,如果一个字符串包含任何项目list<string>.

if (str.Contains(list2.Any()) && str.Contains(ddl_language.SelectedValue))
{
    lstpdfList.Items.Add(str);
}
Run Code Online (Sandbox Code Playgroud)

c# string contains list

14
推荐指数
1
解决办法
8673
查看次数