小编Ser*_*hei的帖子

从C#读取性能计数器:指定类别中不存在实例

我正在尝试从另一个.NET 4应用程序中运行的.NET 4应用程序中读取许多性能计数器.

某些计数器,如Process\% Processor TimeProcess\Private Bytes做工精细.但是,只要我尝试从其中一个.NET类别中读取性能计数器,例如.NET CLR Memory\# Gen 0 Collections,我就会遇到以下异常:

Instance 'MyApplication' does not exist in the specified Category
Run Code Online (Sandbox Code Playgroud)

我打电话的时候:

new PerformanceCounterCategory(".NET CLR Memory").GetInstanceNames()
Run Code Online (Sandbox Code Playgroud)

它返回一组非常小的实例,而MyApplication确实不在列表中.但是,当我查看我的性能计数器时perfmon,我在同一类别/计数器中看到的实例列表要长得多,并且包括MyApplication.

有谁知道为什么我的应用程序看不到.NET计数器?

(注意:受监视的应用程序由监视应用程序启动,因此它们肯定在同一用户帐户中运行.我还尝试以管理员身份启动我的监视应用程序并将我的帐户添加到性能监视器用户组,但不起作用.)

.net c# performancecounter

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

使用3层体系结构验证ASP.NET MVC应用程序中的业务规则的更好方法是什么?

我正在开发一个带有3层经典架构的ASP.NET MVC应用程序1.数据访问(Repositories)2.业务逻辑(Services)3.应用层(MVC Controller类)任务是遵循领域类Learner和学习者可以参加考试,参加考试会产生一个订单(订单类),之后学习者参加考试,我们需要为每个学习者发布考试成绩(这意味着给出一个分数和成绩)并且有一些需要的商业规则已验证1.结果尚未公布2.所有有身份的学员应该有标记3.应该确认评分边界(考试的分数和等级)当用户确实发布结果时,所有这些规则应该验证,如果有一些规则不满意应该显示错误信息.我决定所有与验证业务规则相关的逻辑都保留在Service类中,如果任何规则没有传递抛出特定异常,则在控制器类中,此异常将捕获并向客户端显示错误.这是代码

服务类

    public void ReleaseResults(long orderId)
    {
        var order =orderRepository.Get(orderId);

        Check.Require(order != null, "Order was not found");


        if (IsOrderReleased(order))
        {
            throw new ReleaseResultsException("The results has been already released", order.OrderNo);
        }

        if (AllLearnersHasStatusPresentAndMark(order))
        {
            throw new ReleaseResultsException("One or more learners unmarked", order.OrderNo);
        }
        if (!GradingBoundaryConfirmed(order))
        {
            throw new ReleaseResultsException("The Grading boundary needs to be confirmed", order.OrderNo);
        }



        foreach (var learnerDetail in order.LearnerDetails)
        {
            if (HasNotStatusPresent(learnerDetail))
            {
                continue;
            }
            learnerDetail.SetReleasedResults();

        }

        orderRepository.SaveOrUpdate(order);
    }
Run Code Online (Sandbox Code Playgroud)

控制器类

        public ActionResult Release(EncryptedId orderId)
    {
        Check.Require(orderId …
Run Code Online (Sandbox Code Playgroud)

c# architecture asp.net-mvc business-rules

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

如何用很多参数重构类的方法?

每个人我都对ASP.NET MVC应用程序中的遗留代码有疑问,在此代码中,业务逻辑层中有一个类Service.这个类有20个参数的方法,这个方法使用这20个参数创建一个对象实例.如何重构此代码,因为当更改创建的对象并且需要更改方法中的参数时,这是一个问题.此服务类用于控制器类和单元测试.帮我修改这段代码在此先感谢您.

编辑附加信息:

我可以显示该方法的签名

public Qualification CreateQualification(string achievableCode, string achievableTitle,
        string accreditationRef, bool brandingPrefix, long brand, float guidedLearningHours, 
        int creditValue, long level, long type, long gradingType, long area, int subArea,
        DateTime accreditationStartDate, DateTime accreditationEndDate,
        DateTime lastCertDate, string nameOnCert, 
        long organisationId)
Run Code Online (Sandbox Code Playgroud)

我认为需要应用Kely和Chevex aproach,例如我可以提取一些类

一个将来自参数:

 long area, int subArea
Run Code Online (Sandbox Code Playgroud)

其他

bool brandingPrefix, long brand,
Run Code Online (Sandbox Code Playgroud)

在提取子类之后我可以使用Introduce Parameter Object我正确理解了吗?

c# refactoring

8
推荐指数
2
解决办法
2921
查看次数

如何在WPF MVVM应用程序中组织接口和实现

我正在研究包含以下项目的WPF MVVM项目,

  • 域,
  • 的ViewModels,
  • 基础设施,
  • 查看

例如我需要IFileService提供一些带文件的操作并且不包含任何业务逻辑,我确信这个接口FileService的实现将在Infrastructure项目中,但我有问题放在哪里IFileService接口

我需要在ViewModels项目中使用这个接口,如果我将它放在这个项目中,它意味着基础设施将在ViewModels上引用我认为不好的,如果我将它放在包含业务相关类的域中.

帮助我组织项目之间的结构和引用以及放置接口的最佳位置是IFileService什么?

c# architecture wpf mvvm

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

组织大型解决方案的单元测试项目

我需要为许多项目的现有解决方案添加单元测试.构建项目需要很长时间,因此我决定为单元测试项目创建另一个单独的解决方案.我不知道什么更好:引用dll或包含在单元测试解决方案中我想要测试的现有项目.

我该如何组织我的测试用例,为什么?请根据您自己的直接经验给出答案.

c# asp.net unit-testing

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

实现可脱机工作的桌面.NET应用程序.

我需要在.NET中创建一个桌面WPF应用程序.

应用程序与Web服务器通信,并且在Web服务器不可用时可以在脱机模式下工作.

例如,应用程序需要计算用户在项目上工作的时间.应用程序连接到服务器并获取项目列表,用户选择一个项目,然后按下按钮以启动计时器.用户可以稍后停止计时器.项目启动和停止时间需要发送到服务器.

如何在应用程序处于脱机模式时实现此功能?

是否有一些现有的解决方案或一些库来简化此任务?

提前致谢.

.net c# wpf offline

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

使用许多if和duplicated逻辑从不同的Controls类中提取值来重构代码的最佳方法是什么

我在WPF应用程序中有以下代码

if (panel != null)
{
     IList listOfValues = new ComparableListOfObjects();
        var childControls = panel.GetChildren<Control>(x => x.Visibility == Visibility.Visible);
 foreach (Control childControl in childControls)
 {
    var textBox = childControl as TextBox;
    if (textBox != null)
    {
        listOfValues.Add(textBox.Text);
        continue;
    }

    var comboBox = childControl as ComboBox;
    if (comboBox != null)
    {
        listOfValues.Add(comboBox.SelectedItem);
        continue;
    }

    var datePicker = childControl as DatePicker;
    if (datePicker != null)
    {
        listOfValues.Add(datePicker.SelectedDate.GetValueOrDefault());
        continue;
    }
    var numericBox = childControl as NumericUpDown;
    if (numericBox != null)
    {
        listOfValues.Add(numericBox.Value);
        continue; …
Run Code Online (Sandbox Code Playgroud)

c# refactoring design-patterns

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

如果IsEditable和IsReadOnly为true,如何使WPF ComboBox键盘文本搜索正常工作?

大家好,我有一个WPF ComboBox问题看看代码

<ComboBox x:Name="comboBox" Width="100" IsReadOnly="True" IsEditable="True" IsTextSearchEnabled="True">
<ComboBoxItem>dsf gd</ComboBoxItem>
<ComboBoxItem>asf gd</ComboBoxItem>
<ComboBoxItem>dsf gd</ComboBoxItem>
<ComboBoxItem>hsf gd</ComboBoxItem>
</ComboBox>
Run Code Online (Sandbox Code Playgroud)

要求是可以选择ComboBox中的文本,通过键首字母shold工作进行文本搜索,并且comboBox应该是可编辑的我设置属性

IsReadOnly="True" 
IsEditable="True"
Run Code Online (Sandbox Code Playgroud)

但文本搜索不起作用.请帮我解决这个问题.提前致谢.

c# wpf

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

WPF WebBrowser控制如何禁用IE的短键?

大家好我有一个问题我在应用程序中使用WPF WebBrowser控件,我需要禁用IE的短键,例如Ctrl+ Netc有没有办法解决这个问题?请帮帮我.

提前致谢

c# wpf controls

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