小编sun*_*der的帖子

如何创建完美的OOP应用程序

最近我在尝试一家公司'x'.他们给我发了一些问题并告诉我只解决一个问题.

问题是这样的 -

所有商品的基本销售税适用率为10%,但免税的书籍,食品和医疗产品除外.
进口税是适用于所有进口商品的额外销售税,税率为5%,不含豁免.

当我购买物品时,我收到一张收据,其中列出了所有物品的名称及其价格(含税),最后是物品的总成本,以及所支付的销售税总额.
销售税的舍入规则是对于n%的税率,p的货架价格包含(np/100四舍五入到最接近的0.05)销售税金额.

"他们告诉我,他们对您的解决方案的设计方面感兴趣,并希望评估我的面向对象编程技巧."

这是他们用自己的话说的

  • 对于解决方案,我们希望您使用Java,Ruby或C#.
  • 我们对您的解决方案的DESIGN ASPECT感兴趣,并希望评估您的面向对象编程技巧.
  • 您可以使用外部库或工具进行构建或测试.具体来说,您可以使用单元测试库或可用于您所选语言的构建工具(例如,JUnit,Ant,NUnit,NAnt,Test :: Unit,Rake等)
  • 或者,您也可以在设计和假设以及代码中包含简要说明.
  • 请注意,我们不期望基于Web的应用程序或全面的UI.相反,我们期待一个简单的,基于控制台的应用程序,并对您的源代码感兴趣.

所以我提供了以下代码 - 你可以复制粘贴代码并在VS中运行.

class Program
 {
     static void Main(string[] args)
     {
         try
         {
             double totalBill = 0, salesTax = 0;
             List<Product> productList = getProductList();
             foreach (Product prod in productList)
             {
                 double tax = prod.ComputeSalesTax();
                 salesTax += tax;
                 totalBill += tax + (prod.Quantity * prod.ProductPrice);
                 Console.WriteLine(string.Format("Item = {0} : Quantity = {1} : Price = {2} : Tax …
Run Code Online (Sandbox Code Playgroud)

c# oop

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

安装窗口服务System.Security.SecurityException时出错

我创建了一个窗口服务并安装它,我创建了它的部署项目并安装了它.安装后我盯着它看.它成功开始了.

第二天,我做了一些修改,重建并重新安装,但现在它没有安装.

然后我想到了安装程序的问题,让我们为服务创建一个自定义安装程序,以便我可以随时更新我的​​代码.

如果有人将来需要这个,我就像这样创建它.

public class MyInstaller : Installer
    {
        ServiceProcessInstaller spi;
        ServiceInstaller si;
        public MyInstaller()
        {            
            spi = new ServiceProcessInstaller();
            spi.Account = ServiceAccount.LocalSystem;

            si = new ServiceInstaller();
            si.StartType = ServiceStartMode.Manual;
            si.ServiceName = "MyService";
            si.DisplayName = "My Service";
            si.Description = "service installed from command line";

            this.Installers.Add(spi);
            this.Installers.Add(si);

        }
}
Run Code Online (Sandbox Code Playgroud)

我通过检查参数args从main方法调用它.

                            case "-i":
                            case "-install":
                                ti = new TransactedInstaller();
                                mi = new MyInstaller();
                                ti.Installers.Add(mi);
                                string logPath = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + "\\install.log";
                                ctx = new InstallContext(logPath, cmdline);
                                ti.Context = ctx; //.Context ( ctx …
Run Code Online (Sandbox Code Playgroud)

c# installation windows-services

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

windows存储api访问地铁和手机应用程序信息

我可以知道是否有任何官方微软API用于地铁和手机应用程序,我们可以连接并获取有关应用程序,下载,发布者等的信息.

我认为live api仅适用于与skydrive,hotmail或skype连接的app.

我可以看到很多网站在他们的网站上提供这些信息.

提前致谢.

api windows-phone-7 microsoft-metro windows-store-apps

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

angular-cache无法按预期工作

我试图将angular-cache模块用于我的项目,但不确定它是否正常工作.以下是代码 -

angular.module('TrackerApp').factory('TrackerFactory', function ($resource, CacheFactory) {
    if (!CacheFactory.get('CenterCache')) {
        console.log('cache does not exists');
        CacheFactory.createCache('CenterCache', {
            maxAge: 5 * 60 * 1000,
            deleteOnExpire: 'aggressive'
        });
    }
    var centerCache = CacheFactory.get('CenterCache');
    var CenterClass = $resource(_ServiceBaseURL + 'api/Center/:id',{},{
        query: {
            method: 'GET',
            cache: centerCache,
            isArray:true
        }
    });
    CenterClass.GetMultipleAsObject = function () { return this.query(); };
    return {
        CenterClass: CenterClass
    };
});
Run Code Online (Sandbox Code Playgroud)

在加载应用程序时,它会在控制台中打印"缓存不存在"的消息,它会在本地存储中创建缓存.它创建了本地存储的关键 -

“angular-cache.caches.CenterCache.keys” = [http://localhost/Services/Tracker/api/Center]
Run Code Online (Sandbox Code Playgroud)

另一个关键是创建

“angular-cache.caches.CenterCache.data.http:// localhost/Services/Tracker/api/Center” = mystoredvalue
Run Code Online (Sandbox Code Playgroud)

问题 -

  1. 在页面刷新(f5),我确实看到再次打印控制台消息,在http调用中,我可以看到"中心"信息正在下载,它不是从缓存中选取的.
  2. 在从一个页面导航到另一个页面时,我看不到控制台消息被打印.但我确实看到"中心"api被调用.数据正在网络选项卡中下载.它应该从缓存中选择.

我觉得它不是从缓存中挑选数据.我错过了什么吗?

caching local-storage angularjs angular-cache angular-local-storage

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

将对象从一个进程传递到另一个进程

我有两个.NET托管程序集.第一个是主要应用程序,一个是独立工具.

现在我要做的是将小工具与主应用程序集成.因此,当用户单击主应用程序中的按钮时,需要将"用户定义的对象"传递给另一个小工具,该工具将运行到另一个不同的独立进程.

但是我们只能向进程发送一个字符串参数.

有什么方法可以做到这一点?我需要发送到另一个进程的是具有每个文件设置的文件列表.这里的设置是我的"用户定义对象".

我有另一个转折点.

如果您正在处理的第一次没有运行,我将向其发送参数并运行该过程.但是如果进程正在运行,我是否可以向其发送参数并将数据附加到现有数据,而无需从头开始重新启动它.

对此有任何帮助.如何做到这一点.

谢谢

.net ipc process

6
推荐指数
2
解决办法
6344
查看次数

IE无法生成报告

我们的一位客户正在尝试生成包含大量子报告的报告,这是一份单页报告.如果他们生成它2 - 3年,它适用于所有浏览器,但是当它们生成它5年.报告在chrome和firefox中工作正常,但IE将无法加载报告并显示IE窗口"Internet Explorer无法加载页面".

事件日志或IE控制台中没有错误.即使是Fiddler也没有提供任何信息,说明为什么IE无法加载报告.它说响应200.

报告生成成功,我可以在日志中看到.

我不知道为什么会发生IE(8,9,10).请检查下面的图片 在此输入图像描述 在此输入图像描述 在此输入图像描述 谢谢

asp.net internet-explorer reportviewer report reporting-services

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

IE jquery异步文件上传请求待处理

我创建了一个带有进度条的新的多拖放文件上传控件.它适用于所有浏览器,除了IE 10及更高版本的问题.

当我在IE中上传文件时,大多数时候jquery异步请求都无法完成.它显示待定.我可以看到它在IE网络调试器窗口中待定.但在所有其他浏览器中它运行良好.我无能为力这里有什么不妥.最初我认为它可能与缓存有关.但在服务器响应中添加以下参数后.它仍然处于待定状态

context.Response.AppendHeader("Cache-Control", "no-cache"); // HTTP 1.1
context.Response.AppendHeader("Pragma", "no-cache"); // HTTP 1.1 
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述 在此输入图像描述 在此输入图像描述

for (var i = 0; i < files.length; i++) {
        var data = new FormData();
        data.append(files[i].name, files[i]);
        uploadFile(handlerurl, data);
    }
function uploadFile(handlerurl, formData) {
                var jqXHR = $.ajax({
                    type: 'POST',
                    url: handlerurl,
                    contentType: false,
                    processData: false,
                    async: true,
                    cache: false,
                    data: formData,                         
                    xhr: function () {   },
                    success: function (result, status, xhr) {   },
                    error: function (xhr, status, error) {   }
          });
}
Run Code Online (Sandbox Code Playgroud)

我在每个文件中调用此函数.我不确定IE有什么问题.

编辑:调试后,发现服务器断点将命中.但是context.Request.Files中没有文件.没有文件从jquery/AJAX发送.您可以通过反复上传同一文件来重现此问题.

jquery html5 internet-explorer xmlhttprequest jquery-file-upload

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

提高应用程序性能和智能

我有一个与应用程序性能和智能相关的问题.

我已经创建了一个窗口服务,如果我在3个不同的配置机器上运行它.我希望它利用适当的机器资源(CPU和内存).

Say Machine 1(M1)具有单核,1 GB内存.

Machine2(M2)有两个内核,2 GB内存.

Machine3(M3)有4个内核,4 GB内存.

现在当我的服务运行时,它应该使用适当的资源.就像cpu使用机器是1%一样,用户应该高达50%或更多.如果它已经50%只使用30%.ram也是如此.但永远不要超过90%或其他限制.

基本上我写了一个多线程服务,现在不关心机器资源并继续使用它.我想在其中加入这种情报.

请帮我解决你的想法.

谢谢

.net performance windows-services memory-management cpu-usage

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

上次备份活动目录时获取

有没有人知道我们如何找到

上次使用C#备份活动目录时?

据我所知,当我们运行这个命令时,repadmin/showbackup

它将向我们展示全部细节.我试图使用C#获得dsa签名的价值,但即使这个值也没有多大意义,并且将帮助我们获得正确的信息.

喜欢从哪个域控制器备份启动和何时?

任何人都知道如何使用C#获取活动目录的最后一个备份细节?

提前致谢

c# active-directory

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

我可以将Windows Phone和Windows 8 App从一个帐户转移到另一个帐户吗?

我可以将Windows 8和Windows手机应用从一个开发者帐户转移到另一个开发者帐户吗?

应用程序包括付费和免费版本.我想转移应用程序,稍后我将从旧帐户中删除它.

我的付款选项是否也会根据付费应用的新帐户进行更新?

提前致谢

windows-phone windows-8 windows-phone-8

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

linq lambda 多个组连接

我正在尝试获取产品列表及其评级、评论和观点。PID是没有外键关系的产品ID列。

\n\n

产品 -

\n\n
Id  Name\n1   P1\n2   P2\n
Run Code Online (Sandbox Code Playgroud)\n\n

评分 -

\n\n
Id  PID Rating\n1   1   5\n2   1   4\n3   2   3\n
Run Code Online (Sandbox Code Playgroud)\n\n

评论 -

\n\n
Id  PID Comment\n1   1   Good\n2   1   Average\n3   2   Bad\n
Run Code Online (Sandbox Code Playgroud)\n\n

意见 -

\n\n
Id  PID View\n1   1   500\n2   1   200\n3   2   10\n
Run Code Online (Sandbox Code Playgroud)\n\n

我的类看起来像这样 \xe2\x80\x93

\n\n
Public Class Product{\n    public int Id { get; set; }\n    public string Name { get; set; }\n    public List<Rating> Ratings{ get; set; }\n    public List<Comments> Comments{ get; set; …
Run Code Online (Sandbox Code Playgroud)

c# linq lambda entity linq-to-sql

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

xpath 查询以选择属性不存在的元素

什么应该是 xpath 查询来选择属性 att 不存在的元素。

<root>
  <elem att='the value' />
  <elem att='the value' />
  <elem att='the value' />
  **<elem />**
  <elem att='the value' />
  <elem att='the value' />
</root>
Run Code Online (Sandbox Code Playgroud)

我想更新属性 att 不存在的元素。

谢谢

c# xpath xpathnavigator

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