小编Joh*_*ers的帖子

使用MVC3 WebGrid帮助程序在html属性名称中添加连字符

我在尝试将自定义HTML5数据属性添加到使用WebGrid帮助器呈现的表时遇到问题.我希望表标签看起来如下:

<table data-test="testdata"><!-- Table Content --></table>
Run Code Online (Sandbox Code Playgroud)

以下是使用Razor视图引擎的示例视图:

@{
    var myUser = new
    {
        Id = 1,
        Name = "Test User"
    };

    var users = new[] { myUser };

    var grid = new WebGrid(users);
}
@grid.GetHtml(htmlAttributes: new { data-test = "testdata"})
Run Code Online (Sandbox Code Playgroud)

最后一行将生成"无效的匿名类型成员声明符".错误,因为数据测试中的连字符.

对于其他一些输入HtmlHelpers,您可以使用下划线代替连字符,并且在渲染时它将自动更改为连字符.WebGrid不会发生这种情况.

如果我传入htmlAttributes的字典:

@grid.GetHtml(htmlAttributes: new Dictionary<string, object> {{ "data-test", "testdata"}})
Run Code Online (Sandbox Code Playgroud)

表格如下呈现:

<table Comparer="System.Collections.Generic.GenericEqualityComparer`1[System.String]" Count="1" Keys="System.Collections.Generic.Dictionary`2+KeyCollection[System.String,System.Object]" Values="System.Collections.Generic.Dictionary`2+ValueCollection[System.String,System.Object]"><!-- Table Content --></table>
Run Code Online (Sandbox Code Playgroud)

我做错了什么,我该怎么做才能根据需要渲染属性?

asp.net-mvc html-helper asp.net-mvc-3

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

如何在没有Nuget的情况下获得Entity Framework 4.2?

我们需要掌握Entity Framework 4.2来测试4.2中的SQL生成.

不幸的是,我们的开发环境不允许我们使用Nuget.

有没有办法获得EF4.2二进制文件,以便我们可以测试它?

entity-framework entity-framework-4

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

为什么这段代码没有正确执行(视频)?

我正在使用Unity(3.4)Monodevelop(2.4.2),当我在调试器中逐步执行它时,它没有正确执行代码.这是显示它的视频的链接,请在720p运行并全屏显示...

http://www.youtube.com/watch?v=LGN7kxMUqjA

此外,这里有一些屏幕截图显示调试器在鼠标悬停变量时显示非常奇怪的值.这是在第一个if块中正确显示xSectionPixel的值时的样子... 在此输入图像描述 这就是它在第二个if块中错误地显示xSectionPixel的值时的样子...... 在此输入图像描述
这也是它开始不正确地执行代码的代码行.

什么会导致这个?

我尝试使用存储库中的代码的新副本重新安装工具,我甚至将它设置在具有不同操作系统(Win 7)的不同计算机上,并且它总是做同样的事情.这不是说它必须是我的代码吗?

值得注意的是,我正在使用SVN从存储库中推送/拉取代码,而我的本地副本存在于我的Dropbox文件夹中.

非常感谢您的智慧!如果你能发现任何可能破坏事物的东西(也就是我使用浮点数和整数的方式,那么这里也是代码?)

Vector2 textureCoordToHexGridCoord(int textX, int textY)
    {
        Vector2 hexGridCoord = new Vector2();
        float m = hexH / hexR;

        int xsection = (int)(textX / (hexH + hexS));
        int ysection = (int)(textY / (2 * hexR));

        int xSectionPixel = (int)(textX - xsection * (hexH + hexS));
        int ySectionPixel = (int)(textY - ysection * (2 * hexR));

        //A Section
        if(xsection % 2 == 0)
        {
            hexGridCoord.x = xsection;
            hexGridCoord.y = ysection;

            if(xSectionPixel < (hexH …
Run Code Online (Sandbox Code Playgroud)

c# monodevelop unity-game-engine

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

EF CTP 5中没有Key属性

根据实体框架中的博客文章数据注释,应该有一个名为"Key"的列的属性,它允许您标记实体的主键.但是,我无法在.Net 3.5或.Net 4.0中找到它.

我错过了什么?我已经包含对EntityFramework.dll的引用,我已经检查了所有属性,System.ComponentModel.DataAnnotations但我无法找到它. 替代文字

我已将项目设置为.Net 4.0 full(非客户端配置文件).

有任何想法吗?

.net c# entity-framework-ctp5

4
推荐指数
2
解决办法
8039
查看次数