问题列表 - 第32588页

使用EF4"Code First"和存储库进行单元测试

我试图处理单元测试一个非常简单的ASP.NET MVC测试应用程序,我使用最新的EF4 CTP中的Code First方法构建.我对单元测试/模拟等不太熟悉.

这是我的Repository类:

public class WeightTrackerRepository
{
    public WeightTrackerRepository()
    {
        _context = new WeightTrackerContext();
    }

    public WeightTrackerRepository(IWeightTrackerContext context)
    {
        _context = context;
    }

    IWeightTrackerContext _context;

    public List<WeightEntry> GetAllWeightEntries()
    {
        return _context.WeightEntries.ToList();
    }

    public WeightEntry AddWeightEntry(WeightEntry entry)
    {
        _context.WeightEntries.Add(entry);
        _context.SaveChanges();
        return entry;
    }
}
Run Code Online (Sandbox Code Playgroud)

这是IWeightTrackerContext

public interface IWeightTrackerContext
{
    DbSet<WeightEntry> WeightEntries { get; set; }
    int SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)

......及其实现,WeightTrackerContext

public class WeightTrackerContext : DbContext, IWeightTrackerContext
{
    public DbSet<WeightEntry> WeightEntries { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

在我的测试中,我有以下内容:

[TestMethod]
public void Get_All_Weight_Entries_Returns_All_Weight_Entries() …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc unit-testing mocking entity-framework-4

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

Magento在小部件中使用自己的句柄不起作用

我发现我可以使用此脚本添加自己的布局句柄:

$this->getLayout()->getUpdate()->addHandle('myhandle');
Run Code Online (Sandbox Code Playgroud)

然后我检查了Alan Storm Layout的观众:http://alanstorm.com/2005/projects/MagentoLayoutViewer.tar.gz

?showLayout =把手

处理此请求

  1. 默认
  2. cms_page
  3. STORE_default
  4. THEME_frontend_default_default
  5. cms_index_index
  6. page_two_columns_left
  7. customer_logged_out
  8. myhandle

有我的句柄,但我的自定义布局xml没有使用.

这是我的xml:

<?xml version="1.0"?>
<layout version="0.1.0">

    <myhandle>
        <reference name="head">
          <action method="addJs"><script>test/your.js</script></action>
        </reference>
    </myhandle>
</layout>
Run Code Online (Sandbox Code Playgroud)

这工作正常,因此加载了xml文件:

<?xml version="1.0"?>
<layout version="0.1.0">

    <default>
        <reference name="head">
          <action method="addJs"><script>test/your.js</script></action>
        </reference>
    </default>
</layout>
Run Code Online (Sandbox Code Playgroud)

怎么了?为什么不能使用这个解决方案?

如果它不是正确的方法,我如何为小部件使用的页面添加自定义css和javascript?

更新:这可能是接近解决方案的东西:

如果我在向页面添加新句柄后添加此代码:

$this->getLayout()->getUpdate()->fetchPackageLayoutUpdates('myhandle');
$this->getLayout()->generateXml();
Run Code Online (Sandbox Code Playgroud)

在此之后,"index.php?showLayout = page"调用在xml中写入句柄代码,但页面不使用它.

widget magento

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

乳胶:不同页边距不同

我正在为工作中使用的文档类型制作乳胶模板。对于那个文档,我有两个不同的“命令”来制作标题页;和其他来制作文档的其余部分。

我在标题页中需要的边距与文档其余部分中的边距不同。因此,我对标题页有一些“\setlength”命令,其余部分则有其他命令。

问题是当我编译文档时,不同的边距只在它们应该生效的一页之后生效。例如,如果我想要一个页面的标题页和文档的其余部分不同,会发生什么是第一页有标题边距,第二页有标题边距(不应该),从第三页开始文档其余部分的边距是正确的。

我究竟做错了什么?

你能告诉我你制作这样的文件的策略是什么吗?

先感谢您!

templates latex document margins

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

获取枚举标志所有位的最佳方法是什么?

我有一个带有Flags属性的枚举.

我的问题是,我想获得所有选项的整数位掩码,而无需自己手动组合所有位.我想这样做以与其他一些int字段进行比较,我希望保护以防未来的开发人员向枚举广告添加更多位选项.

另一件事是我的枚举标志中的位将全部手动分配,所以我不能简单地得到下一个值并减去1.

c# enums

19
推荐指数
4
解决办法
9262
查看次数

在迭代它们时删除对象属性是否安全?

迭代对象的属性时,在for-in循环中删除它们是否安全?

例如:

for (var key in obj) {
    if (!obj.hasOwnProperty(key)) continue;

    if (shouldDelete(obj[key])) {
        delete obj[key];
    }
}
Run Code Online (Sandbox Code Playgroud)

在许多其他语言中迭代数组或字典并删除内部不安全.在JS中可以吗?

(我正在使用Mozilla的Spidermonkey运行时.)

javascript loops properties object

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

Visual Studio 2010调试ASP .NET MVC 2应用程序很慢

从Visual Studio 2010开始的Asp .NET MVC 2应用程序在我看来是该死的.刷新或打开新页面需要2-5秒.你有同样的问题吗?你知道这个ASP .NET MVC 2调试模式是否可以以某种方式加速?

我在64位计算机,Windows 7和Visual Studio 2010上工作.

debugging asp.net-mvc visual-studio-2010

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

你能在HTML5的应用程序缓存中存储整个jQuery库吗?

几乎就是这样.寻找移动jQuery缓存的最佳实践.我在这里先向您的帮助表示感谢.

mobile jquery html5 caching

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

如何在Bash中保持MySQL连接打开

我有一个bash脚本,可以多次调用MySQL.而不是必须重新连接到MySQL,有没有办法保持连接打开?理想情况下,如果脚本提前退出,则连接将关闭.我认为命名管道可以工作,但他们会保持开放.

这是我希望找到的一个快速伪示例:


openMySQL
executeMySQL "SELECT 1"
exit 1
executeMySQL "SELECT 2"
Run Code Online (Sandbox Code Playgroud)

我正在寻找MySQL连接实际关闭期间的函数openMySQLexecuteMySQL函数exit 1.

mysql bash

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

Wpf带到前面

我有一个ItemsControl,它使用Canvas和ItemsPanel.itemsTemplate托管自定义控件.当点击控件时我希望它"移到前面".我知道我可以在我的控制中使用ZIndex这样做:

 private void MyControl_PreviewMouseDown(object sender, MouseButtonEventArgs e)
{
    if(((FrameworkElement)sender).TemplatedParent==null) return;
    ContentPresenter presenter = (ContentPresenter)((FrameworkElement) sender).TemplatedParent;

    int currentValue = Panel.GetZIndex(presenter);
    Console.WriteLine(currentValue);
    Panel.SetZIndex(presenter, 99);
}
Run Code Online (Sandbox Code Playgroud)

这可以正常工作并设置ZIndex.但是当我点击ItemsControl中的不同控件时,它将获得完全相同的ZIndex,因此它不会"移动到另一个控件的前面".

基本上我只想要与windows展示相同的行为.

我已经尝试在PreviewMouseUp事件中将ZIndex设置为0,这确保了单击的控件始终位于顶部,但由于所有其他控件具有相同的ZIndex为0,因此将基于其中的位置采用默认顺序列表.

一个例子:

假设我有3个控件,ZIndex都为0.(所以他们使用默认的列表位置.)

如果我点击控件3,那么2然后1.我希望它在ZOrder的顶部有3,然后是2然后1.但是因为我在MouseUp上将ZIndex设置为零,它将具有默认顺序1,2,3.

有没有一种简单的方法来处理这个问题,或者我是否需要跟踪顺序并递增递减任意值,例如我自己的99?

c# wpf z-index

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

从头开始重新实现NSObject

当我阅读关于新的4.0.2 iOS更新时,我想知道黑客做了什么或尝试做缓冲区溢出,这是在一些维基百科让我对使用malloc感兴趣并因此创建我自己的"NSObject"之后.

我实际上并没有计划在我的任何应用程序中使用它,它只用于学习和使用objective-c.

当然,正如预期的那样,我遇到了一些我无法解决的问题.

为了创建我的对象我做:

+ (id)create{ return malloc(sizeof(self)); }
Run Code Online (Sandbox Code Playgroud)

- (void)free { free(self); }
Run Code Online (Sandbox Code Playgroud)

调用[TestObject create]时; 我收到以下控制台消息:

"8/11/10 11:17:31 PM TestingHeap [2675]***NSInvocation:警告:类'AObject'的对象0x100002100未实现doesNotRecognizeSelector: - abort"

所以它试图将我的对象作为NSObject处理..?以及如何解决这个问题.

另外,在没有Foundation或AppKit的情况下进行编译时,我会发现缺少符号的错误,特别是__objc_empty_vtable和__objc_empty_cache.我试过从/ usr/include/objc /中包含几个头文件

提前致谢.

更新

在与libobjc链接后,我尝试从我的类中调用方法时收到EXC_BAD_INSTRUCTION.

macos cocoa cocoa-touch objective-c nsobject

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