小编Ign*_*cia的帖子

何时使用DataContract和DataMember属性?

DataContract对WCF中的属性非常困惑.据我所知,它用于序列化类似用户定义的类型.我写了一个类,这个类在客户端公开.

[DataContract]
public class Contact
{
    [DataMember]
    public int Roll { get; set; }

    [DataMember]
    public string Name { get; set; }

    [DataMember]
    public string Address { get; set; }

    [DataMember]
    public int Age { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

它工作正常,但是当我删除DataContract并且DataMember它也工作正常.我无法理解为什么它正常工作.谁能告诉我实际用途是DataContract什么?

我的服务合同是这样的

[ServiceContract]    
public interface IRestServiceImpl
{
    [OperationContract]        
    Contact XmlData(string id);      
}
Run Code Online (Sandbox Code Playgroud)

wcf datacontract datamember datacontractserializer

171
推荐指数
3
解决办法
12万
查看次数

为什么我可以像C#中的数组一样初始化List?

今天我很惊讶地发现在C#中我能做到:

List<int> a = new List<int> { 1, 2, 3 };
Run Code Online (Sandbox Code Playgroud)

我为什么要这样做?调用什么构造函数?我怎么能用我自己的课程做到这一点?我知道这是初始化数组的方法,但数组是语言项,列表是简单的对象......

.net c# initialization list

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

如何在cmd.exe中将stderr重定向到null

我有一个应用程序,它会将大量噪音记录到stderr,并且真的会减慢应用程序的执行速度.我想将该输出重定向到null.这可能与cmd.exe一起使用吗?

redirect cmd stderr

113
推荐指数
1
解决办法
11万
查看次数

我是.Net,C#和WPF程序员.Expression Blend值得吗?

我的意思是,作为一个普通的开发人员,我会用Expression Blend实现一些我不会使用VS的东西吗?我不知道Expression Blend,乍一看看起来不是很友好/容易学习.

你在那里做什么?值得花时间学习使用它,或者我将和VS一样做?

谢谢!

编辑:我知道微软对这些工具的评价.我想知道的是,作为像我这样的开发人员,你是否尝试过Expression Blend并发现这是浪费时间,或者你认为它是一个很好的工具,你停止从VS开发WPF GUI并切换到EB.

.net c# wpf expression-blend

49
推荐指数
4
解决办法
1万
查看次数

如何使用Converter绑定到StaticResource?

我想在将属性赋值给属性之前使用a Converter来更改a的值StaticResource.有没有办法模拟一个Binding只会设置StaticResource转换后的值?

有点像{Binding Value={StaticResource myStatic}, Converter={StaticResource myConverter}}

wpf xaml converters staticresource

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

使用Min或Max时如何处理LINQ中的空值?

我有以下Linq查询:

result.Partials.Where(o => o.IsPositive).Min(o => o.Result)
Run Code Online (Sandbox Code Playgroud)

当result.Partials.Where(o => o.IsPositive)不包含元素时,我得到一个异常.有没有一种优雅的方法来处理这个,除了将操作分成两部分并检查null?我有一个充满类似这样的操作的课程.

编辑:这个问题与LINQ to Objects有关.

这是我得到的例外(翻译它说:序列是空的):

在此输入图像描述

.net c# linq null

32
推荐指数
3
解决办法
3万
查看次数

有没有一种很好的方法将int分成两个短裤(.NET)?

我认为这是不可能的,因为Int32有1位符号并且有31位数字信息,Int16有1位符号和15位数字信息,这导致有2位符号和30位信息.

如果这是真的那么我就不能有一Int32到两个Int16.这是真的?

提前致谢.

附加信息:使用Vb.Net,但我认为我可以毫无问题地翻译C#答案.

我最初想要做的是将一个转换UInt32为两个,UInt16因为这是一个与基于WORD的机器交互的库.然后我意识到这Uint不符合CLS,并试图用Int32和做同样的事情Int16.

EVEN WORSE:a = CType(c And &HFFFF, Int16);投掷OverflowException.我期望该语句与a = (Int16)(c & 0xffff);(不抛出异常)相同.

.net c# vb.net math

27
推荐指数
3
解决办法
1万
查看次数

使用C#和SymmetricAlgorithm进行真正简单的加密

我正在寻找一种非常简单的crypt/decrypt方法.我将始终使用相同的静态密钥.我知道这种方法的风险.目前我正在使用以下代码,但在加密和删除相同的字符串后,它不会生成相同的结果(字符串中间有一些垃圾).

public static string Crypt(this string text)
{
    string result = null;

    if (!String.IsNullOrEmpty(text))
    {
        byte[] plaintextBytes = Encoding.Unicode.GetBytes(text);

        SymmetricAlgorithm symmetricAlgorithm = DES.Create();
        symmetricAlgorithm.Key = new byte[8] {1, 2, 3, 4, 5, 6, 7, 8};
        using (MemoryStream memoryStream = new MemoryStream())
        {
            using (CryptoStream cryptoStream = new CryptoStream(memoryStream, symmetricAlgorithm.CreateEncryptor(), CryptoStreamMode.Write))
            {
                cryptoStream.Write(plaintextBytes, 0, plaintextBytes.Length);
            }

            result = Encoding.Unicode.GetString(memoryStream.ToArray());
        }
    }

    return result;
}

public static string Decrypt(this string text)
{
    string result = null;

    if (!String.IsNullOrEmpty(text))
    {
        byte[] …
Run Code Online (Sandbox Code Playgroud)

c# encryption des encryption-symmetric

27
推荐指数
3
解决办法
7万
查看次数

怎么会这个== null?

编辑:这不是这个问题的重复,因为这是一个使用Delegate.CreateDelegate的实际例子,另一个是关于IL的理论讨论.除了单词this和null之外,没有什么可以互相做.

相对于这个问题 ......

我遇到一个在null的实例上调用事件处理程序的情况.奇怪的.看图像:

在此输入图像描述

我不明白发生了什么.如何在null实例上调用实例方法???

.net c# null events

27
推荐指数
1
解决办法
1806
查看次数

如何在TFS上撤消"获取最新版本"

我正在使用TFS与VS2008和VS2010,在TFS集合中我有几个项目.

我已经将TFS根映射到本地驱动器以保留TFS文件夹结构,并且我已经完成了几个子文件夹的Get Latests.

我还下载了一个不需要的文件夹,所以我删除了本地文件夹内容,但现在在TFS中,我看到该文件夹​​为黑色,"最新"是.如何告诉TFS我已经在本地删除了我之前下载的文件夹?

tfs undo visual-studio-2010 visual-studio

22
推荐指数
2
解决办法
9408
查看次数