小编tof*_*tim的帖子

在.NET 4.0下使用SmtpClient,SendAsync和Dispose的最佳实践是什么

我对如何管理SmtpClient感到有点困惑,因为它是一次性的,特别是如果我使用SendAsync进行调用.据推测,在SendAsync完成之前,我不应该调用Dispose.但我应该打电话给它(例如,使用"使用").该方案是一个WCF服务,它在发出呼叫时定期发送电子邮件.大多数计算速度很快,但发送电子邮件可能需要一秒左右的时间,所以Async会更好.

我每次发邮件时都应该创建一个新的SmtpClient吗?我应该为整个WCF创建一个吗?救命!

更新如果它有所不同,则始终为用户自定义每封电子邮件.WCF托管在Azure上,Gmail用作邮件程序.

c# .net-4.0 smtpclient

109
推荐指数
5
解决办法
8万
查看次数

CancellationToken的默认参数

我有一些异步代码,我想添加一个CancellationToken.但是,有许多实现不需要这样做,所以我想有一个默认参数 - 也许是CancellationToken.None.然而,

Task<x> DoStuff(...., CancellationToken ct = null)
Run Code Online (Sandbox Code Playgroud)

产量

类型''的值不能用作默认参数,因为没有标准转换来键入'System.Threading.CancellationToken'

Task<x> DoStuff(...., CancellationToken ct = CancellationToken.None)
Run Code Online (Sandbox Code Playgroud)

'ct'的默认参数值必须是编译时常量

有没有办法让CancellationToken有一个默认值?

c# asynchronous task-parallel-library cancellation-token

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

在Bootstrap 3中堆叠列时的垂直空间

当列以移动模式堆叠时,我想要一些垂直空间来分隔列内容,我该怎么做?

请参阅http://jsfiddle.net/tofutim/3sWEN/中的 jsfiddle 并改变输出的宽度.在第二个lorem ipsum之前应该有一些间距.

在此输入图像描述

<div class="container">
    <div class="well well-lg" style="margin:10px">
    <div class="row">
        <div class="col-sm-6">
            <p>"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."</p>
            <form>               
                <input type="textbox" class="form-control" placeholder="Username"></input>
                <input type="password" class="form-control" placeholder="Password"></input>                     
            </form>
        </div>
        <div class="col-sm-6">
            <p>"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."</p>
            <form role="form">
                <div class="form-group">  
                    <button class="form-control btn btn-default">Push me</button>
                <input type="textbox" class="form-control" placeholder="Username"></input> …
Run Code Online (Sandbox Code Playgroud)

twitter-bootstrap twitter-bootstrap-3

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

Linq OrderByDescending,首先为null

我的数据库中有一个包含DateTime的字段?我想对结果进行排序,以便NULL显示在顶部,然后按DateTime降序,例如,

null
null
2012-04-01
2012-01-01
2011-09-04
Run Code Online (Sandbox Code Playgroud)

原因是我正在查看到期日期,但有些条目没有到期.

c# linq

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

使用Jade在变量中呈现HTML

我有一些文本存储在一个包含一些HTML的变量中.例如,帽子中的<b>猫</ b>.但是,当我在Jade中渲染它时,它会显示标签而不是渲染格式.我怎样才能解决这个问题?

node.js pug

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

我应该如何在redis中存储JSON?

我有通过node.js存储在Redis中的JSON(<1k).将其存储为对象或字符串有哪些优缺点?我错过了其他选择吗?所有处理最终都会在客户端进行,因此无需转换为对象.

var images = JSON.parse(data);          // data is already JSON, is this needed?
callback(images);                       // sends result to the user
r.set('images:' + req.query, images);   // saving the object
Run Code Online (Sandbox Code Playgroud)

得到

callback(images);
Run Code Online (Sandbox Code Playgroud)

redis node.js

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

如何将"胖"库变成"非胖"库?

我正在尝试使用armv6和armv7架构从库中删除重复的对象,即

$ lipo -info libx.a胖文件中的体系结构:libx.a是:armv6 armv7

正如预期的那样,"ar d"不能直接使用,因此我使用"lipo -extract"来拆分库.但是,由此产生的库仍然是"胖"架构.

$ ar d libx-armv6.a offendingduplicate.o ar:libx-armv6.a是一个胖文件(使用libtool(1)或lipo(1)和ar(1))ar:libx-armv6.a:不恰当文件类型或格式

$ lipo -info x-armv6.a胖文件中的架构:libx.a是:armv6

我怎么能不图书馆?(您可以想象在Google中搜索"删除脂肪文件"时出现的各种链接.帮助!)

c++ compiler-construction macos

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

如何设置ReSharper默认公司和版权?

我刚刚和ReSharper一起安装了Stylecop 4.5RC.当我创建一个新课程时,我发现我现在符合要求(是的!),但我希望公司成为我的公司,而不是微软.我还有很多工作要担心更新版权文本.我如何默认填写这些内容?

// -----------------------------------------------------------------------
// <copyright file="ReaderResultTypes.cs" company="Microsoft">
// TODO: Update copyright text.
// </copyright>
// ---------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)

-

c# resharper stylecop

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

在SQLite中计算表中行的最有效方法是什么?

我总是只使用"SELECT COUNT(1)FROM X",但也许这不是最有效的.有什么想法吗?其他选项包括SELECT COUNT(*)或者如果它是自动递增(并且从不删除),则可能获取最后插入的id.

如果我只是想知道桌子上是否有任何东西怎么样?(例如,计数> 0?)

sql sqlite

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

如何在单独的线程上在Converter中运行代码,以便UI不会冻结?

我有一个很慢的WPF转换器(计算,在线提取等).如何异步转换以便我的UI不会冻结?我发现这一点,但解决的办法是将转换器代码在属性- http://social.msdn.microsoft.com/Forums/pl-PL/wpf/thread/50d288a2-eadc-4ed6-a9d3-6e249036cb71 -这我宁愿不这样做.

以下是演示该问题的示例.这里的下拉列表将冻结,直到睡眠过去.

namespace testAsync
{
    using System;
    using System.Collections.Generic;
    using System.Threading;
    using System.Windows;
    using System.Windows.Data;
    using System.Windows.Threading;

    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();

            MyNumbers = new Dictionary<string, int> { { "Uno", 1 }, { "Dos", 2 }, { "Tres", 3 } };

            this.DataContext = this;           
        }

        public Dictionary<string, int> MyNumbers
        {
            get { return (Dictionary<string, int>)GetValue(MyNumbersProperty); }
            set { SetValue(MyNumbersProperty, value); }
        }
        public …
Run Code Online (Sandbox Code Playgroud)

c# data-binding wpf multithreading ivalueconverter

14
推荐指数
3
解决办法
4043
查看次数