小编fea*_*net的帖子

仅包括参数用于内部函数中的异常报告

CreateDocument(string templatePath)
{
    Document doc = OpenDocument(templatePath);
    Picture pic = GetLogo();
    AddLogo(doc, pic, templatePath);
}

AddLogo(Document doc, Picture logo, string templatePath)
{
    Picture placeholder = doc.FindLogoPlaceholder();
    if (placeholder.Size != logo.Size)
    {
        throw new ApplicationException(
            String.Format("Invalid template {0}, logo size: {1}, required: {2}",
                 templatePath, placeholder.Size, logo.Size
            ));
    }
}
Run Code Online (Sandbox Code Playgroud)

考虑上面的代码作为我刚刚编写的一个例子.

请注意,templatePath传递给AddLogo方法的唯一原因是为了便于异常生成.

我今天的代码中有一些东西需要我这样做,感觉就像一个非常讨厌的代码味道给我.但我不太熟悉异常处理模式,我真的没有看到更好的方法.

我想知道你的想法是什么,以及是否有更好的模式来处理这样的情况.

.net c# exception-handling parameter-passing

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

有没有办法在jQuery选择器中执行OR

例如,像......

// get everything that is either an input or a select
$container.find(':any(input, select)'); 
Run Code Online (Sandbox Code Playgroud)

jquery jquery-selectors

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

SQL不会在INSERT错误上增加主键

今天有点惊讶发现当插入语句错误时我的自动增量主键仍然增加,结果我们在表中有"缺失"数字.

有没有什么理由为什么SQL这样设计?有没有办法来覆盖这种行为?

我通过Linq-to-SQL访问.

error-handling primary-key auto-increment sql-server-2008 linq-to-sql

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

使用'as'进行投射 - 为什么这不起作用?

也许现在早上太早了,我是个白痴,但我有点困惑....

SqlCommand cmd = new SqlCommand("prc_FooBar", conn));
object obj = cmd.ExecuteScalar();

 // this is fine
decimal? d = (decimal?)(obj as double?);

// this doesn't compile
decimal? d = (obj as double?) as decimal?; 
Run Code Online (Sandbox Code Playgroud)

为什么不编译最后一个版本?

c# ado.net casting type-conversion

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

jquery:如何为2个或更多不同的按钮编写单击事件?

 $("#loggedinNav").click(function (e) {
     // do something
    });
Run Code Online (Sandbox Code Playgroud)

这是我的,我想对其他按钮使用相同的点击功能,所以我可以这样做:

$("#loggedinNav" || "#mainlogo").click(function (e) {
     // do something
    });
Run Code Online (Sandbox Code Playgroud)

其中||=or

javascript ajax jquery click

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

相对于当前控制器的MVC Ajax动作

我正在尝试从母版页中的链接获取Ajax调用.

所以我想只指定相对于当前页面/控制器的动作.

 $.ajax({
      url: '/Save',
      type: "GET",
      // .. etc 
 });
Run Code Online (Sandbox Code Playgroud)

我想调用页面上任何控制器的"保存"操作.我认为这会直接起作用,但似乎没有.有优雅的解决方案吗?

asp.net-mvc jquery asp.net-mvc-routing relative-url

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

在Outlook中发送电子邮件html字体大小

<div style="font-family: Arial; font-size: 10px;">TEST</div>
Run Code Online (Sandbox Code Playgroud)

我将上述源代码作为html电子邮件提供给Outlook 2007,它呈现7.5px字体.关于我需要做什么工作的任何想法?

编辑:我正在设置邮件内容body,如:

new MailMessage
{
    IsBodyHtml = true,
    Body = "<div style=\"font-family: Arial; font-size: 10px;\">TEST</div>"
};
Run Code Online (Sandbox Code Playgroud)

我不相信这是相关的.请注意,如果我在生成的电子邮件中查看源代码,则html与预期一致.问题似乎只是前景无论出于何种原因都无法正确呈现.

html email outlook outlook-2007

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

要为无法识别的ID参数抛出什么异常类型?

ITool GetTool(Guid tool)
{
    if (tool == Hammer.Id)
        return new Hammer();
    else if (tool == Drill.Id)
        return new Drill();

    else
        throw new ....?
}
Run Code Online (Sandbox Code Playgroud)

扔在这里最合适的异常类型是什么?NotSupportedException是我发现的最接近但我不认为这是正确的.

.net c# exception

0
推荐指数
1
解决办法
273
查看次数

在JavaScript/jQuery中克隆内存中的图像

这可能是一个非常简单的,但我找不到答案.

我有以下JavaScript/jQuery代码,我正在尝试创建加载消息:

// preload an image to use for dynamic loading icon whenever requested
$(document).ready(function() {
    var loadingIcon = document.createElement('img');
    loadingIcon.src = '../images/ajax-loader.gif';
    window.loadingIcon = loadingIcon; // chache in global var
});
Run Code Online (Sandbox Code Playgroud)

我想在加载时缓存图像,所以每次我想要加载消息时我都不会请求它.我实际上是用上面的代码实现的吗?

我们的想法是页面上有很多动态内容,而且我可能随时会有几个不同的加载图标处于活动状态.

我在任何地方添加加载图标:

$('#myElem').appendChild(window.loadingIcon);
Run Code Online (Sandbox Code Playgroud)

这实际上并不起作用,当我尝试显示一个新的加载图标时,它只是移动前一个,所以我一次不能在页面上有多个.

我假设我需要克隆元素?

我试图将元素包装在一个jQuery对象中以使用clone $(window.loadingIcon).clone()但不起作用(函数出错).

javascript jquery dom clone append

0
推荐指数
1
解决办法
6998
查看次数

来自简单的$ .getJSON调用的HTTP状态代码500 - 为什么?

我已经getJSON脱离了我对最简单的例子的呼吁,试图弄清楚为什么它不起作用但是我没有想法.我目前有:

public JsonResult MyAction()
{
    return Json(new { status = "OK" });
}

$.getJSON('MyController/MyAction', function(result) { alert('worked'); });
Run Code Online (Sandbox Code Playgroud)

该操作被调用,但警报不会被触发并查看Chrome开发人员工具我看到返回状态500错误代码.什么可能导致这个?我该怎么调试呢?

ajax asp.net-mvc jquery httpresponse

0
推荐指数
1
解决办法
1629
查看次数

通用类型参数不是类型?

我发现以下有点令人困惑....

Dictionary<Type, Object> _typeMap;

public void RegisterType<T>(Object o)
{
    _typeMap.Add(typeof(T), o);
}
Run Code Online (Sandbox Code Playgroud)

为什么方法typeof(T)需要Add?是不是T类型参数已经是Type?还有什么?

c# generics types typeof

0
推荐指数
1
解决办法
109
查看次数

web.config中的多个appSettings部分

这有可能吗?例如,通过命名appSettings部分,或嵌套在其他命名部分的appSettings.

我希望实现以下内容:

<section name="development">
    <appSettings>
    </appSettings>
</section>

<section name="test">
    <appSettings>
    </appSettings>
</section>


string connectionString 
   = ConfigurationManager.GetSection("test").AppSettings["connectionString"];
Run Code Online (Sandbox Code Playgroud)

这个模式是什么?

.net configuration design-patterns web-config appsettings

0
推荐指数
1
解决办法
6012
查看次数