小编Hei*_*nzi的帖子

在更新查询中使用case语句

是否可以在更新查询中使用case语句?我需要做这样的事情:如果人名以'S'开头,则追加'1',否则追加'2'.

我在sql server中试过这个并没有用

UPDATE PERSON
CASE
WHEN NAME LIKE 'S%' THEN SET NAME = NAME + '1'
ELSE SET NAME = NAME + '2'
END

sql sql-server sql-server-2005

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

在VB.net中读取XML

我用google搜索了最后一个小时左右没有运气(我想我也是一个伟大的Google员工!),所以我在这里.

我有一个XML文件,我用于我的程序设置,它看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<config>
    <store>
        <number>0323</number>
        <address>address</address>
        <phone>phone</phone>
    </store>

    <emailsettings>
        <emailfrom>emailfrom</emailfrom>
        <emailpass>pass</emailpass>
        <emailsubject>received</emailsubject>
        <smtpserver>smtp.gmail.com</smtpserver>
        <smtpport>587</smtpport>
        <enablessl>true</enablessl>
        <emailbody>package received</emailbody>
    </emailsettings>
    <dbconfig>
        <dbpath>path</dbpath>
    </dbconfig>
</config>
Run Code Online (Sandbox Code Playgroud)

我如何使用vb.net获取每个元素并返回我想要的特定值?本身,我想退<number>(下<store>在TextBox1中),和<emailbody>(下<emailsettings>在TextBox2中).

帮助pleaseeeeee!谢谢 :)

xml vb.net

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

.net:分配对象引用原子(即线程安全)?

比方说,我有一些变量x(类型的myClass),它最初是null一些分配

x = myObject
Run Code Online (Sandbox Code Playgroud)

在某些后台线程中恰好出现一次.

是否保证x始终包含nullmyObject从主线程访问?或者很快可能x包含一些无效数据?

.net multithreading

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

浮点值的"上半部分"

我们坚持使用一个数据库(不幸的是)使用浮点数而不是十进制值.这使得四舍五入有点困难.请考虑以下示例(SQL Server T-SQL):

SELECT ROUND(6.925e0, 2)   --> returns 6.92
Run Code Online (Sandbox Code Playgroud)

ROUND确实轮半起来,但由于浮点数不能准确地表示十进制数,"错误"的结果(从视终端用户的点)被显示.我理解为什么会这样.

我已经提出了两个可能的解决方案(两个都返回一个浮点数,不幸的是,这也是一个要求):

  1. 舍入前转换为十进制数据类型: SELECT CONVERT(float, ROUND(CONVERT(decimal(29,14), 6.925e0), 2))
  2. 乘以直到第三个数字位于小数点的左侧(即精确表示),然后进行舍入: SELECT ROUND(6.925e0 * 1000, -1) / 1000

我应该选择哪一个?有更好的解决方案吗?(遗憾的是,由于某些遗留应用程序访问同一个数据库,我们无法更改数据库中的字段类型.)

是否存在针对此(常见?)问题的完善的最佳实践解决方案?

(显然,常规技术"四舍五入"在这里没有用,因为6.925已经四舍五入到小数点后三位 - 只要这可以在浮点数中.)

language-agnostic sql-server floating-point rounding

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

Java:创建一个类型为类型参数的对象

我想编写C#代码的等效Java代码.

我的C#代码如下:

public abstract class A<T> where T : A<T>, new()
{
    public static void Process()
    {
        Process(new T());
    }

    public static void Process(T t)
    {
        // Do Something...
    }
}

public class B : A<B>
{
}

public class C : A<C>
{
}
Run Code Online (Sandbox Code Playgroud)

Java代码与我的代码相似.

public abstract class A<T extends A<T>>
{
    public static <T extends A<T>> void process()
    {
        process(new T()); // Error: Cannot instantiate the type T 
    }

    public static <T extends A<T>> void process(T t)
    { …
Run Code Online (Sandbox Code Playgroud)

c# java generics inheritance

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

.NET正则表达式中的(?i)是什么意思?

在我们的代码中,有一个以下形式的正则表达式:

string regex = @"(?i)foo=(BAR?-[A-Z]+(33|34)?)";
Run Code Online (Sandbox Code Playgroud)

(?i)正则表达式开头的" "匹配/做什么?我查看了.NET正则表达式文档,似乎无法弄清楚(?i)意味着什么.谢谢!

.net c# regex

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

是否可以在LINQ-to-objects中保存顺序?

var source = new List<string> { "A1", "A2", "B1", "B2" };
var filtered = source.Where(s => s.StartsWith("A"));

foreach (var s in filtered)
    Console.WriteLine(s);    // outputs first A1 and then A2
Run Code Online (Sandbox Code Playgroud)

似乎Enumerable.Where保持单元的原始顺序上的有序的IEnumerable使用时(如List<T>T[]).总是这样吗?如果是的话,这会记录在哪里?

.net c# linq linq-to-objects

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

什么是"小工具漏洞"?

在最近的安全公告中,微软警告称" 小工具中的漏洞可能允许远程执行代码 ":

成功利用Gadget漏洞的攻击者可以在当前用户的上下文中运行任意代码.

(Microsoft安全通报2719662)


我真的不明白这一点.据我所知,小工具(按设计)基于HTML的应用程序运行完全信任!

完全信任

运行小工具的选择以与运行从Internet下载的任何应用程序的选择相同的方式呈现给用户.有关小工具作者的信息显示在一个对话框中,表明存在与此文件相关的风险.用户接受警告后,小工具将以与用户登录帐户关联的所有权限运行.

(MSDN:Windows边栏安全的小工具)

例如,没有什么可以阻止您添加

<script language="VBScript"> 
    Set shell = CreateObject("Wscript.Shell")
    shell.Run "notepad.exe"
</script> 
Run Code Online (Sandbox Code Playgroud)

并从您的小工具执行任意命令.这是有效的,它是设计的.

显然,他们可以完成在本地用户上下文中运行的另一个应用程序可以执行的所有操作.那么,MS安全顾问提到哪些"可被利用" 的漏洞在哪里?

security windows-desktop-gadgets

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

SWT按钮上的MouseClick事件在哪里?

我知道这听起来像一个非常基本的问题,我觉得很尴尬但是...

如何将鼠标单击处理程序添加到SWT按钮?

我检查了什么:

  • 我可以找到大量关于如何添加鼠标按下,鼠标按下或双击处理程序的示例(通过分配MouseListener).显然,鼠标单击(同一控件上的向下和向上的顺序)与鼠标向下不同.
  • 我理解在泛型控件上可能没有单击处理程序,但是我在Button控件上看到的唯一事件是一个SelectionListener - 可能就是它,但选择听起来更像是"收到焦点"给我而不是"被点击"或者选择,然后用按键调用".
  • 我发现了一个相关的问题,他的回答基本上说你需要自己实现 - 我觉得有点难以置信.

选择在其他语言/框架中通常称为"OnClick"的是什么?或者还有其他我完全错过的东西?

java swt button

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

DRY XML评论

当提供相同方法的多个重载时,我经常不得不重复该方法的描述,这违反了DRY并增加了维护成本:

/// <summary>
/// Frobnicates all foos read from the given reader. Frobnication is a
/// process where ...[lots of text]...
/// </summary>
/// <param name="hasBar">[Description of hasBar]</param>
void FrobnicateFoo(TextReader reader, bool hasBar)
{
    ...
}

/// <summary>
/// Frobnicates all foos read from the given file. Frobnication is a
/// process where ...[same lots of text]...
/// </summary>
/// <param name="hasBar">[Same description of hasBar]</param>
void FrobnicateFoo(String path, bool hasBar)
{
    ...
}
Run Code Online (Sandbox Code Playgroud)

如果重复具有相同目的的多个参数,则该问题变得更糟(作为示例给出"hasBar").

我找到的一个"解决方法"是"引用"其他文档:

/// <summary>
/// Frobnicates all …
Run Code Online (Sandbox Code Playgroud)

c# vb.net documentation xml-documentation

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