问题列表 - 第15158页

构建资产管理数据库

有没有人有处理公司资产的建议?服务器,交换机,电话,监视器,办公桌,Blackberrys,软件等.您如何设计数据库来处理这些不同类型的资产,而不会在数据库设计中过于模糊或过于精确?

例如,如果我有一个物理资产标记的字段,您将放置在一个对象上,我将如何处理下载的软件?如果我想跟踪机器名称但我不想给桌面提供机器名称怎么办?这些不同类型的资产正在让我失望.

database-design

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

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

用于#<ActionView :: Base:0xdb3158>的未定义方法`user_sessions_path'

我收到这个错误,这让我感到困扰.我不知道发生了什么......我已按照T的说明进行操作,但仍在抱怨 - 请帮助!我有错误消息,控制器文件,登录页面和路由文件的摘录.

错误信息

NoMethodError in User_sessions#new
Showing app/views/user_sessions/new.html.erb where line #4 raised:
undefined method `user_sessions_path' for #<ActionView::Base:0x1fe766f>
Run Code Online (Sandbox Code Playgroud)

提取的来源(第4行):

应用程序/视图/用户/ login.rhtml

4. <% form_for @user_session do |f| %>
5.  <%= f.error_messages %>
Run Code Online (Sandbox Code Playgroud)

控制器/ user_sessions_controller.rb

class UserSessionsController < ApplicationController
  before_filter :require_no_user, :only => [:new, :create]
  before_filter :require_user, :only => :destroy

  def new
    @user_session = UserSession.new
  end

  def create
    @user_session = UserSession.new(params[:user_session])
    if @user_session.save
      flash[:notice] = "Login successful!"
      redirect_to root_url
      #redirect_back_or_default account_url
    else
      render :action => :new
    end
  end

  def destroy
    current_user_session.destroy …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails

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

内存缓存和通配符

我只是想知道是否有办法使用通配符清除memcache的键值.

所以说我有一个带有"1234~foo"键和另一个"1234~foo~bar"的缓存.

有什么方法我可以通过使用像clear("1234*")这样的东西来清除缓存并从上面清除它们吗?

我希望这是有道理的.

谢谢.

memcached

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

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

嵌套的UpdatePanel触发器

我的孩子UpdatePanel更新其内容及其父UpdatePanel的内容.

<asp:UpdatePanel ID="UpdatePanel1" 
                 runat="server">
    ...
    <asp:UpdatePanel ID="UpdatePanel2" 
                     runat="server">
        ...
    </asp:UpdatePanel>
    ...
</asp:UpdatePanel>
Run Code Online (Sandbox Code Playgroud)

我不希望每次子更新时都更新我的父UpdatePanel.

.net asp.net ajax updatepanel asp.net-ajax

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

将Func <T>重构为Expression <Func <T >>

我有一个方法,目前Func<Product, string>作为一个参数,但我需要它作为一个Expression<Func<Product, string>>.使用AdventureWorks,这是我想用Func做的一个例子.

private static void DoSomethingWithFunc(Func<Product, string> myFunc)
{
    using (AdventureWorksDataContext db = new AdventureWorksDataContext())
    {
        var result = db.Products.GroupBy(product => new
        {
            SubCategoryName = myFunc(product),
            ProductNumber = product.ProductNumber
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

我希望它看起来像这样:

private static void DoSomethingWithExpression(Expression<Func<Product, string>> myExpression)
{
    using (AdventureWorksDataContext db = new AdventureWorksDataContext())
    {
        var result = db.Products.GroupBy(product => new
            {
                SubCategoryName = myExpression(product),
                ProductNumber = product.ProductNumber
            });
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,我遇到的问题myExpression(product)是无效(不会编译).阅读其他一些帖子后,我理解为什么.如果不是因为我需要product变量用于我的密钥的第二部分,我可能会说这样的事情:

var result = db.Products.GroupBy(myExpression);
Run Code Online (Sandbox Code Playgroud)

但我确实需要product变量,因为我确实需要密钥的第二部分(ProductNumber).所以我现在不确定要做什么.我不能把它当成Func,因为这会导致问题.我无法弄清楚如何使用Expression,因为我没有看到如何将 …

.net c# expression-trees linq-to-sql

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

如何防止WordPress格式化前导空格?

我正试图在我的WordPress博客上发布一些代码片段,但是当我复制并粘贴时,它会从每行代码中删除所有前导空格.一般来说,领先的空间似乎没有问题,因为我可以手动添加它们,但它不喜欢它们被粘贴在任何原因.

是否有一些我可以使用的插件,或者我可以做一些简单的代码修改,让它接受我粘贴的代码而不试图为我格式化它?

wordpress formatting plugins

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

创建我自己的MJPEG流

我正在尝试创建一个MJPEG流,我有一系列jpeg,我想将它们组合成一个流,以便用户只需点击一个URL并获得一个mjpeg流.过去几天我一直在努力让它发挥作用,而且可能是不可能的.我提起了空灵,并听取了网上某个轴摄像头的数据包,并试图模仿它.我最初尝试使用WCF,并返回"流"但后来发现我需要在该流上设置内容类型,因此我尝试了WCF REST api,但是这也遇到了同样的问题.所以我现在只是使用一个简单的HTTPListener,并处理事件.我更喜欢使用WCF,但我不确定它是否允许我返回具有正确内容类型的流.所以这就是我对httpListener的看法.

在监听器回调的处理程序中我把以下内容.

        HttpListenerResponse response = context.Response;
        response.ProtocolVersion = new System.Version(1, 0);
        response.StatusCode = 200;
        response.StatusDescription = "OK";
        response.ContentType = "multipart/x-mixed-replace;boundary=" + BOUNDARY + "\r\n";
        System.IO.Stream output = response.OutputStream;
        Render(output);
Run Code Online (Sandbox Code Playgroud)

Render方法看起来像这样

        var writer = new StreamWriter(st);
        writer.Write("--" + BOUNDARY + "\r\n");
        while (true)
        {
            for (int i = 0; i < imageset.Length; i++)
            {
                var resource = Properties.Resources.ResourceManager.GetObject(imageset[i]) as Bitmap;
                var memStream = new MemoryStream();
                resource.Save(memStream,ImageFormat.Jpeg);
                byte[] imgBinaryData = memStream.ToArray();
                string s = Convert.ToBase64String(imgBinaryData);
                writer.Write("Content-type: image/jpeg\r\n");
                foreach (var s1 …
Run Code Online (Sandbox Code Playgroud)

video streaming jpeg http mjpeg

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

如何在没有这么多嘲笑的情况下编写测试?

我是正确的测试驱动设计或行为驱动设计的忠实拥护者,我喜欢编写测试.但是,我一直把自己编码到一个角落里,我需要在一个特定的测试用例中使用3-5个模拟进行单个类.无论我从哪个方向开始,自上而下或自下而上,我最终都需要一个至少需要三个来自最高抽象级别的合作者的设计.

有人可以就如何避免这个陷阱给出好的建议吗?

这是一个典型的场景.我设计了一个Widget,它从给定的文本值生成一个Midget.在我深入了解细节之前,它始终非常简单.我的Widget必须与几个难以测试的东西进行交互,比如文件系统,数据库和网络.

所以,不是将所有内容都设计到我的Widget中,而是制作一个Bridget合作者.Bridget负责处理复杂性,数据库和网络的一半,使我能够专注于另一半的多媒体演示.那么,我制作了一个执行多媒体作品的Gidget.整个事情需要在后台发生,所以现在我包含了一个Thridget来实现这一点.完成所有操作后,我最终得到了一个Widget,它可以将工作交给Thridget,后者通过一个Bridget来讨论将其结果发送给Gidget.

因为我在CocoaTouch中工作并试图避免模拟对象,所以我使用自分流模式,其中协作者的抽象成为我的测试采用的协议.有3个以上的合作者,我的测试气球变得太复杂了.即使使用像OCMock模拟对象这样的东西,也会给我一个复杂的顺序,我宁愿避免.我试着把我的大脑缠绕在一个菊花链的合作者身上(一个委托给B的代表,他代表C等等),但我无法想象它.

编辑 从下面举一个例子,假设我们有一个必须从套接字读/写并呈现返回的电影数据的对象.

//Assume myRequest is a String param...
InputStream   aIn  = aSocket.getInputStram();
OutputStream  aOut = aSocket.getOutputStram();
DataProcessor aProcessor = ...;

// This gets broken into a "Network" collaborator.
for(stuff in myRequest.charArray()) aOut.write(stuff);
Object Data = aIn.read(); // Simplified read

//This is our second collaborator
aProcessor.process(Data);
Run Code Online (Sandbox Code Playgroud)

现在上面显然处理网络延迟,所以它必须是Threaded.这引入了一个Thread抽象,使我们脱离了线程单元测试的实践.我们现在有

AsynchronousWorker myworker = getWorker(); //here's our third collaborator
worker.doThisWork( new WorkRequest() {
//Assume myRequest is a String param...
DataProcessor aProcessor = ...;

// Use our "Network" collaborator.
NetworkHandler networkHandler …
Run Code Online (Sandbox Code Playgroud)

tdd unit-testing mocking

21
推荐指数
2
解决办法
3178
查看次数