小编Oli*_*bes的帖子

如何使decimal.TryParse保持尾随零?

目前,如果我这样做

decimal d;
temp = "22.00";
decimal.TryParse(temp, NumberStyles.Any,  CultureInfo.InvariantCulture, out d);
Run Code Online (Sandbox Code Playgroud)

然后'd'变成22.有什么方法可以确保尾随的零没有被消灭掉?

仅供参考我正在使用.net 4.0

.net c# math

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

Do While Loop没有给我正确的输出字符串

我正在尝试将名称列表分配给Access VBA中的组合框控件.

我的问题是名称的输出字符串不正确.

这是我的代码:

Private Sub command186_click()
    Dim firstName As String
    Dim lastName As String
    Dim rst As Object
    Dim rowSourceText As String
    Dim fullName As String

    Set rst = CurrentDb.OpenRecordset("Pool_Contact")

    Do While Not rst.EOF
        firstName = rst("FName").Value
        lastName = rst("LName").Value
        fullName = firstName + " " + lastName
        rst.MoveNext
    Loop

    Forms(FrmDaysAvailable).Controls("Combo202").rowSource = fullName
    Debug.Print fullName
End Sub
Run Code Online (Sandbox Code Playgroud)

我知道错误在我的循环内部,其中变量fullName由第二个结果写入.

如何修复此循环以生成一个看起来像fullName,fullName,fullName的字符串...

感谢你的帮助

ms-access vba access-vba while-loop do-while

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

得到数量的平均值

我有一个问题,很容易计算一些简单的平均值.我的桌子:

id / user / action     / data
1  / a    / unit_price / 40
2  / a    / quantity   / 1
3  / b    / unit_price / 70
4  / b    / quantity   / 2
Run Code Online (Sandbox Code Playgroud)

Unit_price是用户的价格,数量是数量.所以我应该得到:(40 + 70 + 70)/ 3 = 60

如果我做了

(AVG(action) WHERE action = unit_price)

我明白了:

(70+40)/2 = 55

如果我做了

(SUM(action) WHERE action = unit_price) / (SUM(action) WHERE action = quantity)

我明白了:

110 / 3 = 36.6

我找到的最简单的方法是不要将unit_price但全局价格放在PHP代码中进行划分以获得unit_price,但我希望SQL能为我做点什么.

sql math average sum

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

计算从时间跨度的总夜晚时间

假设夜间时间设定为20.30h至6.15h(AM).这两个参数是用户范围的变量.假设您的到达日期和出发日期可以从几分钟到一天以上.你如何计算夜晚的总小时数?

public static double CalculateTotalNightTimeHours(DateTime arrival, 
                                                  DateTime departure,
                                                  int nightTimeStartHour, 
                                                  int nightTimeStartMinute, 
                                                  int nightTimeEndHour, 
                                                  int nightTimeEndMinute)
{ 
    //??
}
Run Code Online (Sandbox Code Playgroud)

编辑:我明白这可能不是直接的肯定/没有答案,但也许有人有一个优雅的解决方案来解决这个问题.回答评论:我确实想要计算用户可编辑的夜间开始和结束时间之间的总小时数(或分钟数).我正在计算访问时间,第一个日期确实是到达参数.

我的代码是:

DateTime nightStart = new DateTime( departure.Year, departure.Month, departure.Day,
                                    nightTimeStartHour, nightTimeStartMinute, 0);
DateTime nightEnd = new DateTime( arrival.Year, arrival.Month, arrival.Day,
                                  nightTimeEndHour, nightTimeEndMinute, 0);
if (arrival < nightEnd)
{
    decimal totalHoursNight = (decimal)nightEnd.Subtract(arrival).TotalHours;
}
//...
Run Code Online (Sandbox Code Playgroud)

.net c# datetime timespan winforms

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

如何使用抽象类需要后代类实现接口?

我想创建一个抽象类,强制限制其子类必须实现一个接口.我想避免在抽象类中实现接口类.下面的代码不会做我想要的.有没有人建议我能做什么?

public interface IItem()
{
     bool IsUsable();
}

public abstract class Item : IItem
{
    MemberVar var;
    public void DoSomething()
    {
        //Do something
    }
}

public class Something : Item
{
     public bool IsUsable()
     {
         return true;
     }
}
Run Code Online (Sandbox Code Playgroud)

c# interface abstract

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

如何将最后一个字符串附加到 StringBuilder?

在 C# 中,我有一个StringBuilder sb我在 for 循环中多次附加到它。

是否有一种简单的方法StringBuilders可以吐出附加到它的最后一个字符串?

c# stringbuilder

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

递归查找Treeview节点

我有以下树

A
+-B
+-C 
| +-D
+-E
  +-F
  +-G
Run Code Online (Sandbox Code Playgroud)

我试图找到G给定的A

private TreeListNode FindTreeNode(TreeListNode node, Enumerations.ItemType type,
                                  Nullable<long> id)
{
    TreeListNode found = null;
    foreach (TreeListNode child in node.Nodes)
    {
        if ((Enumerations.ItemType)child[2] == type)
        {
            if (id == null)
            {
                found = child;
                break;
            }
            else
            {
                if ((long)child[0] == (long)id)
                {
                    found = child;
                    break;
                }
            }
        }
        else
        {
            if (child.HasChildren)
            {
                found = FindTreeNode(child, type, id);
                break;
            }
        }
    }
    return found;
}
Run Code Online (Sandbox Code Playgroud)
FindTreeNode(root,C,null)
Run Code Online (Sandbox Code Playgroud)

因为 …

c#

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

如何使用Reflection创建Action <T>,其中T是已发现的泛型类型

如何在C#中完成以下操作?

var someType = new CustomerMessageHandler<CustomerMessage>();
var nType = someType.GetGenericArguments().First().GetType();
// except the next line of code would be a (Action<nType>)
var a = new Action<string>();
Run Code Online (Sandbox Code Playgroud)

Reflection.Emit,Expressions或F#是否有一个很好的解决方案?

注意:"基于约定"的方法对我来说不是一个选择.而且我想看看这是否有可能推动我的C#/ F#技能.

c# generics reflection f#

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

如何检索Access查询的查询定义(SQL文本)并存储已更改的定义

我有一个要求,我需要在c#中从Access DB读取查询,并检查访问数据库查询是否有任何关键字,如"KEY",如果它有关键字我需要将其括在方括号"[]"中.就像它如何在SQL中完成.

有人可以建议我怎么做吗?

c# ddl ms-access database-schema

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

Outlook VBA Mailitem 属性 SenderEmailAddress 未正确返回地址

所以我有一个程序可以让用户选择一个 Outlook 文件夹来导入到表中。然后可以从组合框中选择并传输到表单以供使用。

但是,我对返回的值之一有问题。SenderEmailAddress 实际上并没有给我一个电子邮件地址,例如这是我保存在我的表中的内容。

为了隐私,我删除了名字。

/O=COMPANY/OU=MAIL12/CN=RECIPIENTS/CN=FIRSTNAME.LASTNAME

现在当然,如果我想将此值传递回 Outlook 以回复电子邮件,我不能使用它。

有人可以帮我吗?

Public Sub LoadEmails()

    On Error Resume Next

    'Outlook wasn't running, start it from code
    If Started = False Then
        Set olApp = New Outlook.Application '("Outlook.Application")
        Started = True
    End If

    Set myNamespace = olApp.GetNamespace("MAPI")
    Set objFolder = myNamespace.PickFolder

    ' if outlook is closed, it will display this error
    If Err <> 0 Then
        MsgBox "Outlook was closed. Please log out and log back in."
        Started = False
        Exit Sub …
Run Code Online (Sandbox Code Playgroud)

email ms-access outlook vba

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