我试图让一些宝石在支持ruby和一些红宝石的web主机上工作,但不是我需要使用的一些宝石.
按照我在这里找到的说明,我将原始宝石位置保存在我的宝石路径中,并将我自己的/ path /添加到/ my/home/gems到〜/ .gemrc
gemhome: /users/home/myuser/gems
gempath:
- /usr/local/lib/ruby/gems/1.8
- /users/home/mysuser/gems
Run Code Online (Sandbox Code Playgroud)
我手动下载了一些gem,并使用gem命令的--local和--install-dir选项进行安装.然后我做了一个"宝石列表",实际上可以看到我在我的用户目录中安装的宝石,以及正常系统路径中的原始宝石.
如果我踢IRB或做ruby -e,所有系统宝石都能正常工作.但是,我无法加载我的用户目录加载的gems:
$ ruby -r rubygems -e "require 'nokogiri'"
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in `require__': no such file to load -- nokogiri (LoadError)
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in `require'
from -e:1
Run Code Online (Sandbox Code Playgroud)
我甚至尝试了旧学校的require_gem:
$ irb -r rubygems
irb(main):001:0> require_gem 'nokogiri'
Gem::LoadError: Could not find RubyGem nokogiri (> 0.0.0)
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:204:in `report_activate_error'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:141:in `activate'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:37:in `require_gem_with_options'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:31:in `require_gem'
from (irb):1
Run Code Online (Sandbox Code Playgroud)
从我的"宝石列表"中我可以看到:
nokogiri (1.3.3)
Nokogiri is an HTML, XML, SAX, and …Run Code Online (Sandbox Code Playgroud) 我在允许特定角色访问子目录中的特定页面时遇到问题.
我的ASP.NET应用程序有一个目录,〜/ Forms/Administration具有有限的访问权限.有一个特定的文件,〜/ Forms/Administration/Default.aspx,我想给予1个额外的用户角色访问权限,以及Admin角色.
在〜/ Forms/Administration中,我有一个web.config文件,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<authorization>
<allow roles="Administrator, User" />
<deny users="*"/>
</authorization>
</system.web>
<location path="Forms/Administration/Default.aspx">
<system.web>
<authorization>
<allow roles="Administrator, User, AdditionalUser" />
</authorization>
</system.web>
</location>
</configuration>
Run Code Online (Sandbox Code Playgroud)
Admin用户工作正常,但AdditionalUser总是失败.我尝试了很多东西 - 将位置列为
<location path="Forms/Administration/Default.aspx">
Run Code Online (Sandbox Code Playgroud)
并作为
<location path="~/Forms/Administration/Default.aspx">
Run Code Online (Sandbox Code Playgroud)
来自第一个通用规则的deny ="*"是先例吗?我试过改变
<deny users="*"/>
Run Code Online (Sandbox Code Playgroud)
至
<deny users="?"/>
Run Code Online (Sandbox Code Playgroud)
但最终会让ExtraUser访问所有内容.建议?
编辑:我尝试在通用拒绝规则之前放置位置特定允许,以防顺序重要.同样的问题.
更新:我在这里显然遗漏了一些东西:我删除了deny*config,只留下了特定位置的部分.然后,我没有允许某些角色,而是将其设置为拒绝全部(*).但是,当我登录时,它并没有否认我.我甚至将规则简化为不是文件特定的,但适用于整个目录,并且它不会拒绝任何东西.但是,原始的非位置特定规则确实有效,因此我知道正在读取此配置文件.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<location path="Forms/Administration">
<system.web>
<authorization>
<deny users="*" />
</authorization>
</system.web>
</location>
</configuration>
Run Code Online (Sandbox Code Playgroud) 我有一个无法启动的Windows服务,给出错误"错误1053:服务没有及时响应启动或控制请求".
在我的调试器中运行服务工作正常,如果我双击远程计算机上的服务.exe弹出控制台窗口并继续运行没有问题 - 我甚至可以看到日志消息显示程序正在处理所有内容应该是这样的.
该服务以前运行良好,虽然这是我个人第一次尝试使用该程序的最新更改来部署它.我已经评估了这些变化,并且无法弄清楚它们可能会如何导致这个问题,特别是因为一切都运行良好,而不是作为服务启动.
服务impelmentation的StartRoutine()方法是空的,因此应该以"及时的方式"返回.
我已经检查了计算机上的事件日志,除了在30秒的必要时间内没有从服务中收到回复之外,它没有提供任何其他信息.
既然它可以在我的机器上运行,并且作为一个双击的可执行文件,我将如何找出它作为服务失败的原因?
哦,它是.NET 2.0,所以它不应该受到出现这种症状的1.1框架bug的影响(http://support.microsoft.com/kb/839174)
该框是运行SP2的Windows Server 2003 R2计算机.
我有一些在ASP.NET MVC Web应用程序中没有HttpContext的情况下运行的进程.此过程需要能够确定用于读取/写入数据的应用程序的Contents目录的物理路径.但是,因为它是没有一个HttpContext的,我没有得到使用像和使用Server.Mappath等花哨的东西.建议?
我在Visual Studio 2013中有一个WebAPI项目.如果我在Visual Studio中构建项目,在bin /目录中我会看到一个名为MyProject.dll.config的文件,它代表构建时的web.config文件.
但是,如果我从命令行执行MSBuild,则会丢失.config文件,但所有其他文件都存在.
> msbuild.exe /t:build /v:q /p:Configuration=Debug /nologo \
D:\Workspace\MyProject\src\MyProject.sln
Run Code Online (Sandbox Code Playgroud)
是什么赋予了?为什么不复制.config?
我有一张桌子,我们打电话Users.此表具有在SQL Server中定义的单个主键 - 自动增量int ID.
有时,我对该表的LINQ查询失败并出现"Index was outside the range"错误 - 即使是最简单的查询.查询本身不使用任何索引器.
例如:
User = Users.Take(1);
Run Code Online (Sandbox Code Playgroud)
要么
IEnumerable<Users> = Users.ToList();
Run Code Online (Sandbox Code Playgroud)
两个查询都抛出了同样的错误.使用调试器Visualizer查看生成的查询 - 我在SQL中复制并粘贴查询,它工作正常.我也点击了可视化工具上的"执行",它工作正常.但是,执行代码本身会引发此错误.我没有在类上实现任何部分方法,因此没有任何事情发生.如果我重新启动我的调试器,问题就会消失,只是在几个小时之后再次随机地重新启动它.更重要的是,我在生产中运行的应用程序的错误日志中看到了这个错误.
我在我的应用程序中对我的数据库中的十几个不同实体进行了大量的LINQ,但我只在与表中的特定实体相关的查询中看到此问题.一些谷歌搜索表明这个问题可能与我的模型和另一个实体之间指定的错误关系有关,但我与此对象没有任何关系.它似乎在95%的时间工作,只是其他5%的失败.
我已经从设计器中完全删除了该对象,并从"刷新"的服务器浏览器中重新添加了该对象,但这并没有解决问题.
有什么想法在这里发生了什么?
这是完整的错误消息和堆栈跟踪:
指数超出范围.必须是非负数且小于集合的大小.参数名称:System.Data.Linq的System.Data.Linq.SqlClient.SqlProvider.Execute(表达式查询,QueryInfo queryInfo,IObjectReaderFactory工厂,Object [] parentArgs,Object [] userArgs,ICompiledSubQuery [] subQueries,Object lastResult)的索引System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute中的.SqlClient.SqlProvider.ExecuteAll(Expression query,QueryInfo [] queryInfos,IObjectReaderFactory factory,Object [] userArguments,ICompiledSubQuery [] subQueries) (表达式查询)
1.System.Linq.IQueryProvider.Execute[TResult](Expression expression) at System.Linq.Queryable.FirstOrDefault[TSource](IQueryable在MyProject.FindUserByType(String typeId)的System.Data.Linq.Table 1 source,Expression`1谓词)
编辑:根据要求,下面是表模式的副本.
CREATE TABLE [dbo].[Container](
[ID] [int] IDENTITY(1,1) NOT NULL,
[MarketCode] [varchar](max) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Description] [varchar](max) COLLATE SQL_Latin1_General_CP1_CI_AS …Run Code Online (Sandbox Code Playgroud) 具体来说,如果在本地作用域中创建Timer的实例,然后从该作用域返回:
1)定时器是否仍然执行?
2)什么时候会被垃圾收集?
我提供以下两种情况:
Timer timer = new Timer(new TimerCallback((state) => { doSomething(); }));
timer.Change((int)TimeSpan.FromSeconds(30), (int)TimeSpan.FromSeconds(30));
return;
Run Code Online (Sandbox Code Playgroud)
和
Timer timer = new Timer(new TimerCallback((state) => { doSomething(); }));
timer.Change((int)TimeSpan.FromSeconds(30), Timeout.Infinite);
return;
Run Code Online (Sandbox Code Playgroud) 我已经能够成功地将模型返回到视图并以强类型的方式显示结果.
我从未见过返回多个模型的示例.我该怎么做?
我想控制器会有这样的东西:
return View(lemondb.Messages.Where(p => p.user == tmp_username).ToList(), lemondb.Lemons.Where(p => p.acidity >= 2).ToList());
Run Code Online (Sandbox Code Playgroud)
MVC是否允许您返回多个模型?
然后在视图中我在文件顶部有这一行:
@model IEnumerable<ElkDogTrader.Models.Message>
Run Code Online (Sandbox Code Playgroud)
我经常在视图中调用"模型".
@foreach (var item in Model)
Run Code Online (Sandbox Code Playgroud)
如果有2个模型,我将如何单独引用它们?
这可能是多个模型,或者这就是为什么人们使用ViewBag和ViewData?
我有一个Java Swing UI,没有像我想的那样更新/重新绘制.应用程序发送XMPP消息并在另一个线程上接收响应.处理该响应并更新UI以反映消息中包含的信息.
收到响应后,我使用更新JPanel组件
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() { /* execute logic to update panel */ }
});
Run Code Online (Sandbox Code Playgroud)
自从我使用Java开发以来,已经有一段时间了,但基于我的研究,在线invokeLater将可运行的队列排队,以便在GUI线程上执行.但是,我的GUI不会更新,直到我在应用程序中执行导致重新绘制的其他内容 - 例如调整窗口大小.我错过了什么?在更新面板的逻辑之后,我尝试了invalidate()和repaint()的各种组合,但结果仍然相同 - 在我调整窗口大小之前,GUI不会更新.
编辑:当我说更新面板时,我特别是做一个removeAll()然后添加一些JLabel.