小编Uwe*_*eim的帖子

更轻松地调试Windows服务

是否有更简单的方法来单步执行代码,而不是通过Windows服务控制管理器启动服务,然后将调试器附加到线程?这有点麻烦,我想知道是否有一个更简单的方法.

c# debugging windows-services

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

LINQ:如何对集合中所有对象的属性执行.Max()并返回具有最大值的对象

我有一个具有两个int属性的对象列表.该列表是另一个linq查询的输出.物体:

public class DimensionPair  
{
    public int Height { get; set; }
    public int Width { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我想找到并返回列表中具有最大Height属性值的对象.

我可以设法获得值的最高值,Height但不能获得对象本身.

我可以用Linq做到这一点吗?怎么样?

c# linq object max

264
推荐指数
5
解决办法
35万
查看次数

随机浮点数生成

如何在C++中生成随机浮点数?

我以为我可以把整数兰特除以某种东西,这足够了吗?

c++ random floating-point

260
推荐指数
7
解决办法
37万
查看次数

接口 - 有什么意义?

接口的原因真正让我无所适从.根据我的理解,这是一种解决C#中不存在的不存在的多继承的问题(或者我被告知).

我所看到的是,你预先定义了一些成员和函数,然后必须再次在类中重新定义.从而使界面变得多余.它只是感觉像句法...好吧,垃圾对我来说(请不要冒犯意思.垃圾就像无用的东西).

在下面给出的示例中,从堆栈溢出的不同C#接口线程中获取,我只是创建一个名为Pizza而不是接口的基类.

简单示例(取自不同的堆栈溢出贡献)

public interface IPizza
{
    public void Order();
}

public class PepperoniPizza : IPizza
{
    public void Order()
    {
        //Order Pepperoni pizza
    }
}

public class HawaiiPizza : IPizza
{
    public void Order()
    {
        //Order HawaiiPizza
    }
}
Run Code Online (Sandbox Code Playgroud)

.net c# interface

253
推荐指数
13
解决办法
13万
查看次数

流利和查询表达 - 一个优于其他人的利益吗?

LINQ是对.NET以来最伟大的改进之一,它可以节省大量的时间和代码行.但是,对于我来说,流畅的语法似乎比查询表达式语法更自然.

var title = entries.Where(e => e.Approved)
    .OrderBy(e => e.Rating).Select(e => e.Title)
    .FirstOrDefault();

var query = (from e in entries
             where e.Approved
             orderby e.Rating
             select e.Title).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

这两者之间是否有任何区别,或者一方面有什么特别的好处呢?

c# linq

247
推荐指数
8
解决办法
6万
查看次数

如何处理ASP.NET MVC表单中的复选框?

警告:这个问题已经超过九年了!

您最好的选择是搜索更新的问题,或搜索下面的答案,寻找您的MVC的特定版本,因为现在许多答案已经过时.

如果您确实找到适合您的版本的答案,请确保答案包含您正在使用的MVC版本.
(原始问题从下面开始)


这对我来说似乎有点奇怪,但就我所知,这就是你如何做到的.

我有一组对象,我希望用户选择其中一个或多个.这对我说"形式有复选框".我的对象没有任何"选择"的概念(它们是通过反序列化wcf调用形成的基本POCO).所以,我做了以下事情:

public class SampleObject{
  public Guid Id {get;set;}
  public string Name {get;set;}
}
Run Code Online (Sandbox Code Playgroud)

在视图中:

<%
    using (Html.BeginForm())
    {
%>
  <%foreach (var o in ViewData.Model) {%>
    <%=Html.CheckBox(o.Id)%>&nbsp;<%= o.Name %>
  <%}%>
  <input type="submit" value="Submit" />
<%}%>
Run Code Online (Sandbox Code Playgroud)

并且,在控制器中,这是我可以看到用来检查用户检查的对象的唯一方法:

public ActionResult ThisLooksWeird(FormCollection result)
{
  var winnars = from x in result.AllKeys
          where result[x] != "false"
          select x;
  // yadda
}
Run Code Online (Sandbox Code Playgroud)

它首先是怪异的,其次,对于用户检查的那些项,FormCollection将其值列为"真假"而不仅仅是真.

显然,我错过了一些东西.我认为这是基于这样的想法构建的,即在html表单中作用的集合中的对象是使用UpdateModel()或通过ModelBinder 更新的.

但我没有为此设置对象; 这是否意味着这是唯一的方法?还有另一种方法吗?

forms checkbox asp.net-mvc

247
推荐指数
10
解决办法
23万
查看次数

如何将文件拖放到应用程序中?

我已经在Borland的Turbo C++环境中看到过这种情况,但是我不知道如何处理我正在研究的C#应用​​程序.是否有最佳实践或需要注意的问题?

c# drag-and-drop winforms

244
推荐指数
8
解决办法
15万
查看次数

如何计算两个日期之间的天数

我有两个输入日期来自日期选择器控件.我选择了开始日期2/2/2012和结束日期2/7/2012.我已经为此编写了以下代码.

我应该得到结果6但我得到5.

function SetDays(invoker) {   
    var start = $find('<%=StartWebDatePicker.ClientID%>').get_value();
    var end = $find('<%=EndWebDatePicker.ClientID%>').get_value();

    var oneDay=1000 * 60 * 60 * 24;
    var difference_ms = Math.abs(end.getTime() - start.getTime())
    var diffValue = Math.round(difference_ms / oneDay);
}
Run Code Online (Sandbox Code Playgroud)

谁能告诉我如何才能得到确切的区别?

javascript

243
推荐指数
7
解决办法
21万
查看次数

在Dictionary中添加新项或更新现有项的方法

在一些遗留代码中,我看到了以下扩展方法,以便于添加新的键值项或更新值(如果该键已存在).

方法-1(遗留代码).

public static void CreateNewOrUpdateExisting<TKey, TValue>(
    this IDictionary<TKey, TValue> map, TKey key, TValue value)
{            
    if (map.ContainsKey(key))
    {
        map[key] = value;
    }
    else
    {
        map.Add(key, value);
    }
}
Run Code Online (Sandbox Code Playgroud)

虽然,我已经检查过map[key]=value 完全相同的工作.也就是说,此方法可以替换为下面的方法-2.

方法2.

public static void CreateNewOrUpdateExisting<TKey, TValue>(
    this IDictionary<TKey, TValue> map, TKey key, TValue value)
{
    map[key] = value;
}
Run Code Online (Sandbox Code Playgroud)

现在,我的问题是..如果我用Method-2替换Method-1会有什么问题吗?它会在任何可能的情况下破裂吗?

另外,我认为这曾经是HashTable和Dictionary之间的区别.HashTable允许更新项目,或使用索引器添加新项目,而词典则不行!在C#> 3.0版本中是否消除了这种差异?

如果用户再次发送相同的键值,则此方法的目标不是抛出异常,该方法应该只使用新值更新条目,并且如果已将新的键值对发送到该方法,则创建新条目.

c# dictionary

209
推荐指数
5
解决办法
15万
查看次数

HTTPS和SSL3_GET_SERVER_CERTIFICATE:证书验证失败,CA正常

我正在使用XAMPP进行开发.最近我将xampp的安装从旧版本升级到1.7.3.

现在当我卷曲启用HTTPS的网站时,我得到以下异常

致命错误:未捕获的异常'RequestCore_Exception',消息'cURL resource:Resource id#55; cURL错误:SSL证书问题,验证CA证书是否正常.详细信息:错误:14090086:SSL例程:SSL3_GET_SERVER_CERTIFICATE:证书验证失败(60)'

每个人都建议使用PHP代码中的一些特定curl选项来解决这个问题.我认为这不应该是这样的.因为我的旧版XAMPP没有任何问题,只是在安装新版本后才发生.

我需要帮助来弄清楚我的PHP安装中哪些设置发生了变化,Apache等可以解决这个问题.

php ssl curl openssl ca

206
推荐指数
6
解决办法
37万
查看次数