我想对以下方法进行单元测试:
public ActionResult StoreFile(FormCollection form, string _paginaAtual)
{
Session["MySession"] = 1
if (Request.Files["uploadedFiles"] != null)
{
//do something about the file
}
return View()
}
Run Code Online (Sandbox Code Playgroud)
它在我的"SomeController.cs"控制器类中,当用户在简单的input type ="file"HTML输入中提交文件时调用它.
PS:纯粹主义者要小心:我知道这不是一个"纯粹的"单元测试,我只想在测试环境中调用该方法并检查它是否在系统中进行了所需的改变.
谢谢大家对这个主题的任何启发,Lynx.
尝试为默认构造函数参数定义访问器方法,即:
class Person (age: Int) {
def age: Int = this.age
}
Run Code Online (Sandbox Code Playgroud)
这显然会导致编译器错误:对重载定义的模糊引用,类Person中的方法年龄类型=> Int和类中的value age类型Int匹配期望类型Int
在这种情况下是否有办法区分成员方法名称和自动生成的成员值名称?
当然可以更改任一标识符的名称,但是在这种情况下是否有办法实际指定引用哪个标识符?
如果我@font-face在商业网页中添加CSS3 属性的字体为“Microsoft YaHei Bold”(Windows Vista 的 Cleartype 中文字体),我是否会遇到 Microsoft 的版权问题?
我想计算具有类名"items"并具有属性"style = display:none"的div.
<div id="skills">
<div class="items" style="display:none">1</div>
<div class="items">2</div>
<div class="items">3</div>
<div class="items" style="display:none">4</div>
<div class="items" style="display:none">5</div></div>
Run Code Online (Sandbox Code Playgroud)
输出应该是'3'.
================================================== =========
除了问题:
<div id="skills1">
<div class="items" style="display:none">1</div>
<div class="items">2</div>
<div class="items">3</div>
<div class="items" style="display:none">4</div>
<div class="items" style="display:none">5</div></div>
<div id="skills2">
<div class="items" style="display:none">1</div>
<div class="items" style="display:none">2</div>
<div class="items" style="display:none">3</div>
<div class="items" style="display:none">4</div>
<div class="items" style="display:none">5</div></div>
Run Code Online (Sandbox Code Playgroud)
输出应该是'3'和'5'.
从阵列
$my_array = array('a','b','c','d','e');
Run Code Online (Sandbox Code Playgroud)
我想得到两个不同的随机元素.
使用以下代码:
for ($i=0; $i<2; $i++) {
$random = array_rand($my_array); # one random array element number
$get_it = $my_array[$random]; # get the letter from the array
echo $get_it;
}
Run Code Online (Sandbox Code Playgroud)
它可以得到两次相同的字母.我需要阻止这一点.我想总是得到两个不同的数组元素.有人可以告诉我该怎么做吗?谢谢
当我想要查看std :: map容器的所有元素时,我在VS 2010 RC中调试我的应用程序时遇到一个小问题.
当调试器到达断点并且我想在元素检查器中检查映射的值(在'Locals'窗口中以及在用鼠标悬停变量名后的弹出窗口中)并且我向下滚动列表它停在100元素上的元素,我不能下一个元素.地图包含200多个元素(地图的计数器参数正确显示)但我无法在元素检查器中查看它们.
即使在最简单的std::map<int, int>200个int值中也会出现问题.
也许这是一个设置问题,但我尝试了很多组合,但它仍然无法正常工作.也许有人有一些想法如何解决这个问题.
预先感谢您的帮助.
在标准pythonmodule导入之后?如果我将它推迟到main函数并在它之前执行我的特定模块导入,则会出错(这是非常明显的).Python样式指南没有提到它的正确位置.
正如这个问题所示: 使用扩展方法提升C#事件 - 这很糟糕吗?
我正在考虑使用此扩展方法来安全地引发事件:
public static void SafeRaise(this EventHandler handler, object sender, EventArgs e)
{
if (handler != null)
handler(sender, e);
}
Run Code Online (Sandbox Code Playgroud)
但是Mike Rosenblum在Jon Skeet的回答中提出了这个问题:
你们需要将[MethodImpl(MethodImplOptions.NoInlining)]属性添加到这些扩展方法中,否则你可以通过JITter优化将代理复制到临时变量的尝试,从而允许空引用异常.
我在发布模式下做了一些测试,看看当扩展方法没有用NoInlining标记时是否可以获得竞争条件:
int n;
EventHandler myListener = (sender, e) => { n = 1; };
EventHandler myEvent = null;
Thread t1 = new Thread(() =>
{
while (true)
{
//This could cause a NullReferenceException
//In fact it will only cause an exception in:
// debug x86, debug x64 and release x86
//why doesn't it …Run Code Online (Sandbox Code Playgroud) 在Linux上,我有一个依赖于其他库的交流共享库.正确设置LD_LIBRARY_PATH以允许链接器加载所有库.当我做:
libgidcwf = ctypes.cdll.LoadLibrary(libidcwf_path)
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
Traceback (most recent call last):
File "libwfm_test.py", line 12, in <module>
libgidcwf = ctypes.cdll.LoadLibrary(libidcwf_path)
File "/usr/lib/python2.5/ctypes/__init__.py", line 431, in LoadLibrary
return self._dlltype(name)
File "/usr/lib/python2.5/ctypes/__init__.py", line 348, in __init__
self._handle = _dlopen(self._name, mode)
OSError: path-to-my-lib/libwav.so: undefined symbol: ODBCGeneralQuery
Run Code Online (Sandbox Code Playgroud)
看来LD_LIBRARY_PATH在这里没有效果.有没有办法让这些依赖库"可加载"?
在此先感谢您的帮助.
换一种说法,
class Foo
{
object obj;
Foo() { obj = new object(); }
~Foo() { obj.ToString(); /* NullReferenceException? */ }
}
Run Code Online (Sandbox Code Playgroud)