问题列表 - 第29175页

如何解决警告:'NSArray'可能无法响应'-objectForKey:'

警告:'NSArray'可能无法响应'-objectForKey:'

PicsCount = [[[results objectForKey:@"wallper"] objectForKey:@"total"] intValue];
Run Code Online (Sandbox Code Playgroud)

iphone warnings

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

使用HttpContext.Current.Application存储简单数据

我想在我的ASP.NET MVC应用程序中存储一个简单对象(包含三个字符串)的小列表.该列表是从数据库加载的,并且很少通过编辑站点管理区域中的某些值来更新.

我正在考虑使用HttpContext.Current.Application来存储它.这样我可以在Global.asax中加载它:

    protected void Application_Start()
    {
        RegisterRoutes(RouteTable.Routes);

        HttpContext.Current.Application["myObject"] = loadDataFromSql(); // returns my object
    }
Run Code Online (Sandbox Code Playgroud)

然后可以根据需要从任何控制器或视图轻松引用它.然后,如果管理区域调用updateMyObject控制器操作,我可以更新数据库并再次加载并替换HttpContext.Current.Application["myObject"].

这样做有什么缺点吗?看起来它会对我想要实现的目标起作用,但是有没有人知道更好的方法来做到这一点,假设我已经列出的方法有一些主要的缺点?

c# asp.net-mvc httpcontext

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

零填充位移0有什么用呢?(a >>> 0)

我刚刚在Mozilla Javascript文档中看到了这篇文章:

var len = this.length >>> 0;  
Run Code Online (Sandbox Code Playgroud)

我不太明白为什么要这样做.有什么好处呢填零,右移this.length0呢?据我所知,它什么都没做.它是否安全地为其建立默认值len,即使this.length它不是整数?这可能是这样吗?如果是这样,>> 0和之间的区别是>>> 0什么?

javascript bitwise-operators

55
推荐指数
0
解决办法
5117
查看次数

如何在mercurial中"进一步拆分"?

不可否认,这是一个误导性的标题,但我不知道如何把它变得更好.

因此,在开设分支之前,我错误地推动了所有项目特定的更改.这样,有一些变更集位于默认分支中,不属于那里.他们应该在我新开的分店.

我是否必须先退出所有变更集,然后再将它们推送到正确的分支机构?这甚至有用吗?

谢谢您的帮助.

version-control mercurial branch

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

Python模块初始化命令?

我是来自C++背景的Python新手.虽然我知道尝试使用我的旧C++知识找到匹配的概念并不是Pythonic,但我认为这个问题仍然是一个普遍的问题:

在C++下,有一个众所周知的问题叫做全局/静态变量初始化命令惨败,因为C++无法决定哪个全局/静态变量首先在编译单元中初始化,因此全局/静态变量取决于另一个编译单元单元可能早于其依赖对应物初始化,并且当依赖开始使用依赖对象提供的服务时,我们将有未定义的行为.在这里,我不想深入了解C++如何解决这个问题.:)

在Python世界中,我确实看到全局变量的使用,甚至跨越不同的.py文件,我看到的一个典型用例是:在一个.py文件中初始化一个全局对象,在其他.py文件中,代码无所畏惧开始使用全局对象,假设它必须已经在其他地方初始化,由于我上面指出的问题,在C++下我自己肯定不会接受.

我不确定上述用例是否是Python(Pythonic)中的常见做法,以及Python如何解决这种全局变量初始化顺序问题?

非常感谢你!

python initialization

15
推荐指数
2
解决办法
3024
查看次数

创建"双向"配置文件

我正在编写针对非极客,非程序员的PHP应用程序.我需要创建一个带有一堆"选项"的选项页面,然后将这些选项存储在某个地方.使用数据库应用程序(MySQL/PostgreSQL/SQLite)是不可能的,因为它需要比用户需要更多的配置(我不希望用户在他不想要时进行任何类型的配置) .因此,剩下的唯一解决方案是将配置写入配置文件.另一方面,我还希望配置文件是人类可读的,以防用户是极客并且他想直接编辑配置文件(或者如果他想通过SSH或任何原因远程编辑文件). ..)

以下是我发现的几种潜在解决方案:

使用JSON文件...

...从文件中检索数据,使用json_decode转换数据,将其输出为HTML,检索任何更改,使用json_encode进行编码等.您可以获得图片.有一些我不喜欢这种方法的东西,主要的一点是使用PHP编码的JSON数据不会格式化,很难编辑而不事先重新格式化.

使用XML文件

我不会描述这个解决方案,因为我也不喜欢它......我不知道如何使用XSLT并且不想学习......而且因为它是一个非常重要的解决方案,至少与JSON解决方案相比.如我错了请纠正我.

使用INI文件

我喜欢INI文件,真的很喜欢它们!我认为它们真的是最具可读性的,并且很难搞砸(即:语法错误).该解决方案的问题在于没有本地方式来编写/编辑ini文件.我发现了一个主题,显示了一个自定义方法来编写一个...如果我找不到更好的东西,这可能是我将采用的解决方案......

使用两个文件

最后的解决方案似乎与INI解决方案一样合理.事实上,我可以使用INI文件作为"输入"(用户可以根据需要编辑的文件)和XML/JSON文件作为输出(每次用户更改选项时将由PHP编辑的文件网络前端).此时,最佳解决方案是,如果用户直接编辑配置文件,则要求用户手动重新加载配置,以便"输​​出"文件始终是最新的.


我知道上面的解决方案都不是完美的,这就是我创建这个主题以寻求建议的原因.什么是最好的解决方案?也许(可能)我错过了另一个解决方案.

最后一件事:YAML不是一个有效的解决方案,因为如果你不熟悉它,它会更容易弄乱语法.PHP也不是解决方案,因为用PHP编辑PHP是一件痛苦的事.如果我想要检索一些配置但不通过Web前端直接编辑它,PHP只是一个很好的解决方案.

php xml ini json configuration-files

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

通过命令行参数更改默认蚂蚁目标

我最近被分配了一项任务,让 ant 能够为不同的环境构建战争包。除了一项功能外,我几乎完成了。

蚂蚁env通过 like接受一个参数-Denv=DEV,并使用不同的配置文件来制作 war 包。但默认目标是start构建、部署和启动 tomcat。当我传入-Denv=PRODarg时,我不希望 ant 部署战争也不启动服务器。我只想用蚂蚁来构建ROOT.war。够了。

我知道我可以再输入一个词来实现这个目标,但你知道我们都很懒惰。:D

有谁知道如何根据命令行参数更改默认目标?我的要求如下:

  1. ant -Denv=DEV 将构建、部署和启动服务器
  2. ant -Denv=PROD 只会构建 ROOT.war

java ant build-automation build-process build

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

VS 2010:防止在输出窗口中显示构建摘要

当您在 Visual Studio 2008 中以“安静”模式构建时,输出如下所示:

Compile complete -- 0 errors, 0 warnings
------ Build started: Project: JLTA.JBS.UI.Office.VSTODocument, Configuration: Debug Any CPU ------
------ Build started: Project: JLTA.JBS.UI.Office.VSTOWorkbook, Configuration: Debug Any CPU ------
------ Build started: Project: JLTA.JBS.UI.GeneralLedgerUpdater, Configuration: Debug Any CPU ------

Compile complete -- 0 errors, 0 warnings
========== Build: 86 succeeded or up-to-date, 0 failed, 0 skipped ==========
Run Code Online (Sandbox Code Playgroud)

这很好,因为输出的最后两行可以快速显示构建的结果(成功/失败)。

在 Visual Studio 2010 中,微软在此之后添加了构建摘要。因此,当我使用相同的设置(例如“安静”选项)在 VS 2010 中构建时,我会在 VS 2008 中已显示的内容之后显示以下内容:

------ Build started: Project: JLTA.JBS.UI.TestBed, Configuration: Debug …
Run Code Online (Sandbox Code Playgroud)

.net c# visual-studio-2010 visual-studio

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

概述/了解eclipse中的架构代码

我有一个导入Eclipse的maven项目.我正在尝试理解代码模式(架构).做这个的最好方式是什么?

  1. 将使用任何UML Eclipse插件帮助吗?
  2. 将使用序列图,帮助吗?
  3. 我应该使用哪些插件?

请分享您的意见.

java eclipse design-patterns code-visualization

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

如何在ASP.NET MVC站点中实现速率限制?

我正在构建一个ASP.NET MVC站点,我想限制经过身份验证的用户使用该站点的某些功能的频率.

虽然我从根本上理解了速率限制是如何工作的,但我无法想象如何以编程方式实现它而不会产生主要的代码气味.

能用C#示例代码指出一个简单而强大的解决方案来解决这个问题吗?

如果重要,所有这些功能目前都表示为仅接受的动作HTTP POST.我可能最终也希望对HTTP GET函数实现速率限制,所以我正在寻找适用于所有这些情况的解决方案.

c# asp.net asp.net-mvc limit rate-limiting

12
推荐指数
2
解决办法
9631
查看次数