在过去,我已经成功创建了edmx文件.这是使用EF5和Visual Studio 2012.我已经升级到Visual Studio 2013和EF6.现有的EF 5代码仍然有效,但现在我遇到了问题.我可以创建edmx文件和EntityDataSource,我可以配置数据源,它可以很好地看到表和列,但是当我尝试刷新模式时,我得到:
由于EntityDataSource的以下错误,无法确定架构:
找不到CLR类型(我的类型在这里)
我已经看到一个解决方案在线告诉我将我的代码生成策略更改为默认值(在EF 5中创建的现有edmx文件被设置为Legacy ObjectContext),但它不允许我这样做,因为选项'T4'是变灰了.
有没有办法可以强制代码生成策略不使用T4?
编辑:
Pawel声称EntityDataSource不支持EF 6.是否有可用的教程显示如何连接到EF 6的简单分步指南?我从Beginning ASP.Net 4这本书中获得了所有的EF信息,但现在显然已经过时了.我看到EF 6仍然处于测试阶段.也许他们会在某个阶段添加对EntityDataSource的支持?
编辑2:
好吧,我已经习惯了这一点,我可以使用LinqDataSource进行连接.我几天都没有机会玩它,但它看起来很有效.
编辑3:
使用LinqDataSource不起作用.它可以执行的唯一CRUD操作是Read.显然必须有一种方法来使用新的EF 6.0框架(Pawel建议我使用MVC),但他们不能完全打破我的场景(使用网站),他们可以吗?
编辑4:
我已经为我的场景找到了解决方案,请参阅下面的答案.
我想将数据从fancytree传递给通用处理程序,以便我可以将其保存以备将来使用.
如果我使用此代码:
function SaveTree() {
var tree = $('#TopTree').fancytree("getTree");
$.ajax({
cache: false,
url: "SaveTree.ashx",
data: { 'treeData': tree },
contentType: "application/json; charset=utf-8"
});
}
Run Code Online (Sandbox Code Playgroud)
然后我从jquery.js得到以下错误:
JavaScript runtime error: Argument not optional
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
var tree = $('#TopTree').fancytree("getTree").rootNode.children;
Run Code Online (Sandbox Code Playgroud)
这给出了同样的错误.我理解这是因为'tree'不是JSON.如何将数据转换为JSON对象?
编辑:
如果我使用此代码:
function SaveTree() {
var data = [];
var tree = $('#TopTree').fancytree("getTree").rootNode.children;
for (var i = 0; i < tree.length; i++) {
data.push(tree[i].title)
}
data = JSON.parse(JSON.stringify(data))
$.ajax({
cache: false,
url: "SaveTree.ashx",
data: { 'treeData': data },
contentType: "application/json; charset=utf-8"
});
} …
Run Code Online (Sandbox Code Playgroud) 我在2 x 2网格中有4个按钮.单击按钮时按钮会更改文本.
问题是当它们从空白值变为值时,按钮会移动.我似乎无法找到防止这种情况发生的方法.
CSS:
.A, .B {
height: 40px;
width: 40px;
padding: 0;
margin-top: -10px;
}
Run Code Online (Sandbox Code Playgroud)
使用Javascript:
$('.A').click(function (evt) {
var t = $(this)[0].innerHTML;
if (t == '') $(this).text('A');
else if (t == 'A') $(this).text('a');
else if (t == 'a') $(this).text('');
evt.preventDefault();
});
$('.B').click(function (evt) {
var t = $(this)[0].innerHTML;
if (t == '') $(this).text('B');
else if (t == 'B') $(this).text('b');
else if (t == 'b') $(this).text('');
evt.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)
我在这里提供了一个jsfiddle:
我有以下HTML:
<div id="MainDiv"></div>
Run Code Online (Sandbox Code Playgroud)
和Javascript代码:
var cursor;
var width, height;
var testSVG = {
x: 0,
y: 0,
id: 0,
image: "https://upload.wikimedia.org/wikipedia/commons/thumb/2/2f/Small_Flag_of_the_United_Nations_ZP.svg/488px-Small_Flag_of_the_United_Nations_ZP.svg.png",
width: 280,
height: 140
};
var svgContainer = d3.select("#MainDiv").append("svg").attr({
width: 1920,
height: 1080,
version: 1.1,
xmlns: "http://www.w3.org/2000/svg",
viewBox: "-40, -40, 2000, 1160",
"class": "GraphicDesigner"
});
createSVG(svgContainer, testSVG);
function createSVG(container, object) {
var d = [{
x: object.x,
y: object.y,
moveX: object.x,
movey: object.y
}];
var svgObjectGroup = container.data(d).append("g").attr("transform", function (d) {
return "translate(" + d.x + "," + d.y …
Run Code Online (Sandbox Code Playgroud) 我有一个菜单,用户可以选择颜色,我这样显示:
因为我用黑色写出颜色代码,所以深蓝色背景使得难以阅读并且黑色显然是完全隐藏的.首先,这不是特别重要,颜色是用户感兴趣的.
我可以将颜色代码放在白色背景上的单独框中,但出于兴趣,我想知道是否有一些标准代码来处理这个或一些简单的方法可以应用于确保文本始终可读?如果有人可以在任何帮助下指出我的资源,我们将不胜感激.