小编Jas*_*tti的帖子

多个指令实例和事件

我有一个指令,我在页面上多次使用.它在状态改变时触发事件,然后控制器处理事件.

问题是该事件被触发两次.我知道为什么会发生这种情况,但我要么试图找到解决方法或更好的设计.有小费吗?

Plunker示例:http://plnkr.co/edit/xObOvi253qejphU5arFr

angularjs angularjs-directive

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

尝试/最后阻止vs调用dispose?

这两个代码示例之间是否有任何区别,如果没有,为什么using存在?

StreamWriter writer;
try {
    writer = new StreamWriter(...)
    writer.blahblah();

} finally {
    writer.Dispose();
}
Run Code Online (Sandbox Code Playgroud)

VS:

using (Streamwriter writer = new Streamwriter(...)) {
    writer.blahblah
}
Run Code Online (Sandbox Code Playgroud)

我的意思是在第二个例子中你真的应该把它放在try块中,所以添加finally块确实不会花费太多精力.我知道整个事情可能包含在一个更大的尝试块中但是,对我来说似乎是多余的.

c# dispose using try-catch streamwriter

8
推荐指数
3
解决办法
9644
查看次数

这个安全警告意味着什么(.Net Process类)?

我使用的是VSTS 2008 + .Net 2.0 + C#.我在构建后运行代码分析.我收到了以下令人困惑的安全警告.这是警告和相关代码,任何想法有什么不对?如果有安全警告,如何解决?

System.Diagnostics.Process myProcess = new System.Diagnostics.Process();
myProcess.StartInfo.FileName = "IExplore.exe";
myProcess.StartInfo.Arguments = @"default.html";
myProcess.StartInfo.Verb = "runas";
myProcess.Start();
Run Code Online (Sandbox Code Playgroud)

警告:CA2122:Microsoft.Security:'TestHtml()'调用具有LinkDemand的'Process.Start()'.通过进行此调用,'Process.Start()'间接暴露给用户代码.查看以下可能提供绕过安全保护的方法的调用堆栈:

.net c# security fxcop code-access-security

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

具有长时间运行任务的应用程序对 AWS Lambda 或 AWS Step Functions 的适用性

我在 AWS EC2 实例上有一个每天运行一次的应用程序。该应用程序从 Web 服务中获取一些文件,逐行解析文件,更新数据库,根据数据库中的更改更新 S3 文件,向客户发送通知电子邮件以及一些其他任务。

这是一系列必须按顺序发生的逻辑任务,尽管其中一些任务可以被视为可以并行执行的子任务。所有任务都是 Perl 脚本和 Java 程序的组合,单个 Perl 脚本充当依次执行每个任务的管理器。有些任务可能需要长达 45 分钟才能完成,整个过程总共可能需要长达 3 小时。

我想让整个过程成为无服务器的。我最初的想法是使用AWS Lambda,其中每个任务都将作为 Lambda 函数执行,直到我发现 Lambda 函数施加5 分钟的执行超时。看起来AWS Step Functions服务实际上更适合我的用例,但我的理解是该服务由 Lambda 支持,因此任务仍然有 5 分钟的执行限制。

(我还知道我必须将 Perl 脚本重写为 Lambda 支持的语言)。

我假设我可以通过将代码重构为较小的函数来解决执行时间限制,从而保证在 5 分钟内完成。但在我的特殊情况下,这似乎效率低下。

目前,数据库更新任务一次处理一个文件中的行。为了与 Lambda 配合使用,Lambda 函数只需处理文件中的一行(或极少量的行),以保证执行时间不超过 5 分钟。这将涉及在每次调用 Lambda 函数时打开和关闭与数据库的连接。此外,处理的每一行都应将一个条目写入文件,并存储在 S3 中。现在,我只是在内存中保留一个文件句柄,并在处理完所有行后将文件写入 S3,但使用 Lambda,我需要继续读取文件、更新文件并将其写回 S3。

我要问的是:

  • 我的用例是否不适合 AWS Lambda 和/或 AWS Step Functions?
  • 我是否误解了这些服务的运作方式?
  • 是否还有其他更适合我的使用案例的 AWS 服务?

经过进一步研究,我认为AWS Batch可能是一个好主意

amazon-web-services aws-lambda aws-step-functions

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

如何在使用后更新活动更改首选项的外观?

当用户在我的应用上打开首选项时,他可能会进行更改,例如更改应用主题.

文档ContextThemeWrapper.setTheme(int)说:

为此上下文设置基本主题.请注意,任何意见可在上下文(例如调用之前实例化之前这应该叫setContentView(View)inflate(int, ViewGroup)).

所以我的第一个想法是onResume()在用户更改首选项时重新启动应用程序.但是我注意到,有时重新启动活动的过程是无缝的,而有时活动关闭,主屏幕会被看到,并且只有几秒钟后应用程序再次打开.

我想知道是否有办法改变处理偏好变化.例如onResume,在用户处于首选项时,在不重新启动活动或在后台重新启动活动之后更改主题.

处理这个问题的正确方法是什么?

android preferences

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

DSC - PowerShell 模块路径中不存在模块

这是我遇到的错误:“PowerShell 提供程序 <module> 在 PowerShell 模块路径中不存在,也未注册为 WMI 提供程序”

我并不是 PowerShell 和 DSC 的新手,但我很难弄清楚这一点。我已按照此处的指南进行故障排除。我还发现了这个几乎相同的问题......唯一的解决方案似乎是重新启动(我尝试过)。

所以我做了一个配置,导入一个模块,OctopusDSC。在对模块导入进行故障排除期间,我遗漏了很多参数,但这是我所拥有的:

Configuration OctopusServer
{
    Import-DscResource -Module OctopusDSC

    Node "WIN-ABC123" 
    {
        cTentacleAgent OctopusTentacle 
        { 
            Ensure = "Present"
            State = "Started"
            Name = "Tentacle"
            ApiKey = ""
            OctopusServerUrl = ""
            DefaultApplicationDirectory = "C:\Utility"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

该模块存在于C:\Program Files\WindowsPowerShell\Modules本地和服务器上:

C:\>tree "C:\Program Files\WindowsPowerShell\Modules" /f
Folder PATH listing
Volume serial number is 9EC4-62C1
C:\PROGRAM FILES\WINDOWSPOWERSHELL\MODULES
????OctopusDSC
    ?   OctopusDSC.psd1
    ?
    ????DSCResources
        ????cTentacleAgent
                cTentacleAgent.psm1
                cTentacleAgent.schema.mof
Run Code Online (Sandbox Code Playgroud)

模块路径看起来不错(为了便于阅读,我在每个分号处都加了回车):

PS C:\> …
Run Code Online (Sandbox Code Playgroud)

powershell dsc

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