问题列表 - 第1073页

如何使用ASP.NET MVC对网页授权进行单元测试?

假设您有一个只能由该个人资料的所有者访问的个人资料页面.此个人资料页面位于:

用户/资料/ {用户ID}

现在,我想,为了防止其他用户访问此页面,您可以构建UserController类的Profile函数来检查当前会话的标识:

HttpContext.Current.User.Identity.Name

如果id与url中的id匹配,则继续.否则,您将重定向到某种错误页面.

我的问题是你如何对这样的东西进行单元测试?我猜你需要使用某种依赖注入而不是控制器中的HttpContext来进行检查,但我不清楚最好的方法是什么.任何意见将是有益的.

tdd asp.net-mvc

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

什么是关系数据库中客户端可创建和可修改的Web表单的最佳实现?

在我参与的几个Web应用程序项目中,客户端要求能够创建自己的表单.问题出现在如何存储其表单定义,以及如何将用户输入的值存储到这些自定义表单中.

我已经看到它有两种方式:

  1. 假设客户端仅定义了多少个字段,以及与这些字段关联的标签; 我们可以找到一个涉及四个表的解决方案. FormDefinition,FormFieldDefinition,FormInstances,FormFieldValues.客户端对FormDefinition和进行更改FormFieldDefinition,并且Web应用程序使用该信息呈现HTML Web表单,网站访问者(最终用户)将在该表单上提交表单,其中FormInstances创建新行并将值保存在FormFieldValues表.

    行中FormDefinition定义了表单,即form definition ID = 2, form title = 'Car Registration Form'.行中FormFieldDefinition定义表单的字段FormDefinition,即field definition ID = 7, field label = 'Car Model', field type = 'varchar(50)'.行FormInstance是用户填写的每个表单的实例,即definition id = 2, date_entered = '2008-09-24'.并且行FormFieldValues是用户的条目,即field definition = 7, value = 'Tiburon'.

    不幸的是,这意味着value列FormFieldValues必须是客户端可能在Web表单中指定的最大可能大小的char类型...并且当表单定义更改时,管理旧数据变得不确定.但用户条目是可查询的(我写了一个快速查询,列出了给定表单ID的用户条目,这类似于 …

forms database-design webforms entity-attribute-value

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

如何使用Perl识别对Java类的引用?

我正在写一个Perl脚本,我已经到了一个点,我需要逐行解析Java源文件,检查对完全限定的Java类名的引用.我知道我正在寻找的课程; 也是正在搜索的源文件的完全限定名称(基于其路径).

例如,在com/bob/is/YourUncle.java文件中找到对foo.bar.Baz的所有有效引用.

此时我能想到的需要考虑的案例是:

  1. 正在解析的文件与搜索类位于同一个包中.

    在foo/bar/Boing.java中找到foo.bar.Baz引用

  2. 它应该忽略评论.

    // this is a comment saying this method returns a foo.bar.Baz or Baz instance 
    // it shouldn't count
    
    /*   a multiline comment as well
     this shouldn't count
     if I put foo.bar.Baz or Baz in here either */
    
    Run Code Online (Sandbox Code Playgroud)
  3. 在线完全限定参考.

    foo.bar.Baz fb = new foo.bar.Baz();
    
    Run Code Online (Sandbox Code Playgroud)
  4. 引用基于import语句.

    import foo.bar.Baz;
    ...
    Baz b = new Baz();
    
    Run Code Online (Sandbox Code Playgroud)

在Perl 5.8中最有效的方法是什么?有些花哨的正则表达式可能吗?

open F, $File::Find::name or die;
# these three things are already known
# $classToFind    looking for references of this …
Run Code Online (Sandbox Code Playgroud)

java perl parsing

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

我不能在我继承的旧Delphi项目中包含版本号.我如何解决它?

我有一个旧的Delphi代码库,我必须维护,许多DLL,一些比其他更老.在其中一些DLL中,"项目选项"对话框中没有版本信息.添加版本的控件显示为灰色,我甚至无法通过手动编辑.DOF文件来添加版本号.如何在这些项目中包含版本号?

delphi dof-file

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

unsigned int vs. size_t

我注意到现代的C和C++代码似乎size_t代替int/ unsigned int几乎无处不在 - 从C字符串函数的参数到STL.我很好奇这个原因及其带来的好处.

c c++ size-t

478
推荐指数
5
解决办法
20万
查看次数

用于复制表的SQL命令

将表从一个数据库复制到另一个数据库的SQL命令是什么?我正在使用MySQL,我有两个数据库x和y.假设我在x中有一个名为a的表,我需要将该表复制到y数据库.对不起,如果这个问题太新手了.

谢谢.

mysql sql

9
推荐指数
2
解决办法
7139
查看次数

模拟不是接口的类

我一直在编写一些从providerbase类继承的c#中的提供程序.我发现很难编写使用提供程序的测试,因为大多数模拟框架只允许你模拟一个接口.

有没有办法模拟对从providerbase继承的提供程序的调用?

如果没有,是否有一种模式可以用来实现提供者的模拟?

c# unit-testing mocking

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

string.unpack如何在Ruby中工作?

有人可以解释为什么如何计算以下解压缩的结果?

"aaa".unpack('h2H2')               #=> ["16", "61"]
Run Code Online (Sandbox Code Playgroud)

在二进制中,'a'= 0110 0001.我不确定'h2'如何变为16(0001 0000)或'H2'变为61(0011 1101).

ruby

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

你如何计算C#中的累积时间?

我想计算我在数据库中保存的2次之间的时间跨度.所以从字面上我想知道2个值之间的时间长度.

14:10:20 - 10:05:15 = 02:05:05

结果将是02:05:05.

我怎样才能使用C#实现这一目标?

14:10:20是我在数据库中保存的格式.

c# time datetime

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

将线程保持最佳状态?

应用程序有一个辅助线程.这个线程不是一直在运行,但主进程可以经常调用它.

所以,我的问题是,在CPU性能方面哪个更优:在没有使用时挂起线程还是保持活动并使用WaitForSingleObject函数来等待来自主进程的信号?

windows delphi winapi multithreading

8
推荐指数
2
解决办法
1101
查看次数