问题列表 - 第46376页

Rails to_json:具有参数的方法

我有一个拥有所有者方法的模型对象数组.此方法需要将一个参数传递给它才能工作.我需要将模型对象序列化为json并包含owner方法的值.

我如何将参数传递给to_json我目前使用的方法

objects.to_json(:methods => :owner)
Run Code Online (Sandbox Code Playgroud)

包括所有者方法,但因为我没有传递参数它不起作用.

json ruby-on-rails

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

在声明一个新对象时,我应该什么时候使用接口和实现?

我是 Java 新手。我想知道什么时候应该使用基类的引用,什么时候应该创建一个新对象。我的意思是我们可以写

List list = new ArrayList();
Run Code Online (Sandbox Code Playgroud)

什么时候

ArrayList list = new ArrayList();
Run Code Online (Sandbox Code Playgroud)

如何确定使用什么???

java

0
推荐指数
2
解决办法
4252
查看次数

Specflow的[AfterScenario]

我已经在我的stepdefinition类中定义了[AfterScenario]绑定,并且具有将在每个场景之后执行的方法,但是由于某些原因这不起作用.在每个场景之后都没有调用我的方法,因此在经过一些测试之后,excel仍然保持打开状态......对于一些不成功的测试,也没有日志.为什么?你有什么想法或建议吗?

这是我的方法:

[AfterScenario]        
public void AfterScenario()
{
    if (TestContext.CurrentContext.Result.State != TestState.Success) ErrorLog();
    excelDriver.Stop();
}
Run Code Online (Sandbox Code Playgroud)

specflow

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

通过使用mmap()在进程之间共享内存

我在Linux 2.6.我有一个环境,其中2个进程通过简单的消息传递模式实现模拟(使用共享内存)数据交换.

我有一个客户端进程(从父服务器分叉,它是服务器),它将结构(消息)写入创建的内存映射区域(在fork之后):

message *m = mmap(NULL, sizeof(message), PROT_READ|PROT_WRITE, MAP_SHARED|MAP_ANONYMOUS, -1, 0)

然后,该指针被写入到队列(在链接列表的形式)转换成是共同的服务器和客户端处理(因为如果事先创建上面相同的代码叉)另一个共享存储器区域.然后由服务器读取该区域,该服务器获得指向消息的指针并对其进行处理.

问题是*m是在fork()之后创建的,当服务器进程尝试访问指向的内存位置时,我得到了分段错误.在客户端创建后,是否可以将该内存区域附加到服务器POST分叉?

注意:我不想在分叉之前将指针映射到消息(然后在服务器之前共享它)因为我通常不知道客户端想要发送到服务器的消息数量,而且可能还有更多消息比一个客户端进程,所以我想只在客户端需要发送消息时创建一个新的共享内存块,并在服务器收到该消息后取消映射.

注意:这是出于学术目的:我知道这不是解决这个问题的最佳方法,但我只需要遵循这条道路.

提前致谢!

c linux ipc mmap shared-memory

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

C#算法博弈论API

我最近来到了Gambit - http://www.gambit-project.org/doc/index.html--一个C++算法游戏理论API.

有人知道.NET游戏理论库吗?

c# game-theory

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

正则表达式通过php获取子字符串

如何在substr()PHP函数中使用正则表达式来获取模式匹配的子字符串?

编辑:

例:

$name = 'hello [*kitty*],how good is today';
Run Code Online (Sandbox Code Playgroud)

我想得到[ .... ]占位符之间的内容.

php regex substring

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

上传文件并发送到服务层即c#类库

我想上传一个文件并将其发送到服务层保存,但是我一直在寻找的控制器如何获取HTTPPostedFileBase例子,在控制器中直接将其保存.我的服务层在web dll上没有依赖关系,因此我需要将我的对象读入内存流/字节吗?关于我应该怎么做的任何指示非常感谢...

注意:文件可以通过pdf,word,所以我可能还需要检查内容类型(可能在域服务层...

码:

   public ActionResult UploadFile(string filename, HttpPostedFileBase thefile)
{
//what do I do here...?


}
Run Code Online (Sandbox Code Playgroud)

编辑:

public interface ISomethingService    
{
  void AddFileToDisk(string loggedonuserid, int fileid, UploadedFile newupload);    
}
    public class UploadedFile
    {
        public string Filename { get; set; }
        public Stream TheFile { get; set; }
        public string ContentType { get; set; }
    }

public class SomethingService : ISomethingService    
{
  public AddFileToDisk(string loggedonuserid, int fileid, UploadedFile newupload)
  {
    var path = @"c:\somewhere";
    //if image
     Image _image = Image.FromStream(file); …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc

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

选择没有任何类的元素

我需要通过jQuery选择器找到页面中没有类的所有跨度.

例:

<span class='Cool'>do not found me</span>
<span>me, me, take me please!!!</span>
Run Code Online (Sandbox Code Playgroud)

html jquery jquery-selectors

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

初始化D3D9会导致第三方库停止工作

首先,一般情况......通过DLL加载的第三方库会渲染为HWND.这是简单的2D渲染,而不是直接使用D3D的方式,我可以看到-对DLL的依赖步行表明许多像D3DKMT功能,D3DKMTCreateDevice但不经常D3D调用喜欢IDirect3D9::CreateDevice.当我打电话时IDirect3D9::CreateDevice,第三方渲染变得棘手.它没有抱怨,只是简单地将所有内容呈现为黑色矩形.我自己的渲染工作正常.

细节......第三方DLL是Mozilla XULRunner 1.9.x,它是包含在wxWidgets wxWebConnect库中的FireFox(不是具有硬件加速功能的2.0)的核心.wxWC加载XUL DLL并提供Web浏览器GUI组件.

我有一个使用wx和wxWebConnect的工作应用程序,一个已编译的EXE和代码:http://www.kirix.com/forums/viewtopic.php?f = 25&t = 911#p2605

这是我现实生活中的代码,它与wxWidgets有点绑定但不足以让它难以阅读 - 我从一个随机窗口获得一个HWND只是为了初始化D3D但从不渲染到它:

void MyFrame::OnD3DButton( wxCommandEvent &event )
{
    static bool initialized = false;
    static LPDIRECT3D9 mpD3D = NULL;
    static LPDIRECT3DDEVICE9 mpD3DDevice=NULL;
    if(!initialized)
    {
        wxButton *button=wxDynamicCast(event.GetEventObject(), wxButton);
        HWND mHWnd = (HWND)button->GetHandle();
        mpD3D = Direct3DCreate9(D3D_SDK_VERSION);

        D3DPRESENT_PARAMETERS md3dpp;
        ZeroMemory( &md3dpp, sizeof(D3DPRESENT_PARAMETERS) );
        md3dpp.Windowed                 = true;
        md3dpp.SwapEffect               = D3DSWAPEFFECT_DISCARD;
        // triple buffer if VSync is on
        md3dpp.BackBufferCount          = 1;
        md3dpp.EnableAutoDepthStencil   = 0;
        md3dpp.hDeviceWindow            = …
Run Code Online (Sandbox Code Playgroud)

c++ dll wxwidgets xul direct3d

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

恢复git中的一系列提交

如何在git中恢复一系列提交?从查看gitrevisions文档,我看不出如何指定我需要的范围.例如:

A -> B -> C -> D -> E -> HEAD
Run Code Online (Sandbox Code Playgroud)

我想做相同的:

git revert B-D
Run Code Online (Sandbox Code Playgroud)

结果将是:

A -> B -> C -> D -> E -> F -> HEAD
Run Code Online (Sandbox Code Playgroud)

其中F包含BD的反向.

git range revert

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