小编ekk*_*kis的帖子

Raw ActionLink linkText

我想把一个按钮作为文本,@ActionLink()但我不能,因为它HTML转义我的字符串......我找到了@Html.Raw()机制,并尝试了@ActionLink().ToHtmlString()但无法弄清楚如何把它放在一起...

我找到了一篇文章,描述了为类似目的构建扩展,但是为了解决这个问题真是太过分了......必须有一个简单的方法吗?

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

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

部分类+ DataAnnotations

我有一个由实体框架为我生成的类:

型号/ EF.tt/Product.cs

public partial class X
{
  public int Name { get; set; }
  ...
}
Run Code Online (Sandbox Code Playgroud)

我不想修改它,因为它是由EF编辑器管理的,它会在我重新生成它时消除我的修改,所以我将代码放入一个单独的文件中.因为类被声明为部分我可以做有用的事情......我无法弄清楚的是如何使用DataAnnotations作为属性.

型号/ EF.custom.cs

public partial class X
{
  [Display(Name = "My Name")]
  public int Name { get; set; }
  ...
}
Run Code Online (Sandbox Code Playgroud)

哪个失败了......这样做的正确方法是什么?

c# asp.net-mvc-3

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

在PhantomJS上展示

PhantomJS支持现代灵活吗?如果我运行此文件:

$ cat x.js
var $ = require('jquery');
$('<div/>', {id: 'x'}).appendTo($('body'));
var x = $('#x');
x.css('color', 'red');
console.log('color: ' + x.css('color'));
x.css('flex', '0 0 0px');
console.log('css: ' + x.css('flex'));
Run Code Online (Sandbox Code Playgroud)

人们可以看到它.css()适用于颜色但不适用于柔性.

$ phantomjs x.js
color: rgb(255, 0, 0)
css: undefined
Run Code Online (Sandbox Code Playgroud)

我也尝试了一些变体:-webkit-flex,-moz-box-flex并且-ms-flex,所有这些都产生相同的结果.奇怪的是,-webkit-box-flex返回0而不是undefined,但这似乎是错误的.

我正在运行:

$ phantomjs --version
1.9.8
Run Code Online (Sandbox Code Playgroud)

css flexbox phantomjs

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

制造阵列 - 为什么它不同?

考虑我声明两个这样的变量(在REPL中完成,节点v7.7.2),我期望它是数组:

var x = Array(4)
var y = Array.from({length: 4})
Run Code Online (Sandbox Code Playgroud)

然后以下应该相同,但它不会:

x.map(Math.random)
[ , , ,  ]
y.map(Math.random)
[ 0.46597917021676816,
  0.3348459056304458,
  0.2913995519428412,
  0.8683430009997699 ]
Run Code Online (Sandbox Code Playgroud)

在看,似乎x和y都是相同的:

> typeof x
'object'
> typeof y
'object'
> Array.isArray(x)
true
> Array.isArray(y)
true
> x.length
4
> y.length
4
> typeof x[0]
'undefined'
> typeof y[0]
'undefined'
Run Code Online (Sandbox Code Playgroud)

为什么差异呢?

javascript node.js

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

写入 node-fetch 返回的流

README 包含以下代码作为编写获取文件的示例:

fetch('https://assets-cdn.github.com/images/modules/logos_page/Octocat.png')
    .then(res => {
        const dest = fs.createWriteStream('./octocat.png');
        res.body.pipe(dest);
    });
Run Code Online (Sandbox Code Playgroud)

我将连接另一个.then()以使用写入磁盘的文件。实际上,我的代码似乎在文件完成写入磁盘之前运行,所以我发现上述代码返回的承诺应该考虑到流上“结束”事件的发布。也许是这样的:

fetch(url).then(res => new Promise((resolve, reject) => {
    const dest = fs.createWriteStream(fn);
    res.body.pipe(dest);
    res.body.on('end', () => resolve());
    dest.on('error', reject);
}));
Run Code Online (Sandbox Code Playgroud)

但是当我尝试运行此代码时,它会抱怨:

类型错误:res.body.on 不是函数

鉴于res.body看起来像这样,这是有道理的:

{ pipe: [Function: pipe] }
Run Code Online (Sandbox Code Playgroud)

也就是说,根本不是流

两个问题:1)我怎样才能访问实际的流?2)如果我无法访问它,我怎么知道读取流何时关闭以便我可以解决?

ps

不,我无法从 获取流.pipe(),它返回 undefined

javascript stream node-fetch

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

如何在 NextJs 中生成 UUID?

我正在尝试这个

import { randomUUID } from 'crypto'
var id = randomUUID()
Run Code Online (Sandbox Code Playgroud)

在我的 NextJs 应用程序中,但我收到此错误:

index.js?46cb:369 Uncaught TypeError: (0 , crypto__WEBPACK_IMPORTED_MODULE_5__.randomUUID) 不是 Module../pages/index.js (index.js?ts) 的 eval (index.js?bee7:8:20) 处的函数=1649816623582:5680:1) 在 Module.options.factory (webpack.js?ts=1649816623582:618:31) 在webpack_require (webpack.js?ts=1649816623582:37:33) 在 fn (webpack.js?ts= 1649816623582:287:21) 在 eval (?595a:5:16) 在 eval (route-loader.js?ea34:235:51)

看起来加密库可用于 NextJs 中的中间件(尽管它应该在浏览器中可用),但这似乎实现起来很复杂。谁能建议如何在 NextJs 中生成 UUID?

javascript cryptojs reactjs webpack next.js

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

在ajax调用之后加载脚本的位置在哪里?

假设您有一个简单的网页,可以动态加载如下所示的内容:

- main.html -

<!DOCTYPE html>
<html xmlns="https://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript"
   src="https://ajax.aspnetcdn.com/ajax/jquery/jquery-1.6.2.js">
</script>
<script type="text/javascript">
$(function() {
    $.ajax({
         type: 'get', cache: false, url: '/svc.html',
         success: function(h) {
             $('#main').html(h);
         }
    });
});
</script>
</head>

<body>
    <div id='main'>
    loading...
    </div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

并且它加载的页面在单独的文件中使用了一点Javascript:

- svc.html -

<script type="text/javascript"
   src="https://ajax.aspnetcdn.com/ajax/jquery/jquery-1.6.2.js">
</script>
<script type="text/javascript" src="/plugin.js" css="/plugin.css"></script>
<div id='inner'>
dynamically loaded content
</div>
Run Code Online (Sandbox Code Playgroud)

注意css脚本标记上的属性 - 它表示属于脚本的样式表以及脚本将为我们加载的样式表.这是脚本:

- plugin.js -

var css = $('<link />', {
    rel: "stylesheet", type: "text/css", href: $('script:last').attr('css')
});
$('head').append(css); …
Run Code Online (Sandbox Code Playgroud)

javascript jquery jquery-selectors

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

如何在Web客户端中放大/缩小?还有其他客户吗?

我有一个大型模型,并希望看到超过默认视图显示.如何在Web客户端中放大/缩小?还有其他客户吗?

neo4j

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

使用promises实现回退

这是一种常见的模式,我们在数据源列表中级联,第一次成功打破了这样的链:

var data = getData1();
if (!data) data = getData2();
if (!data) data = getData3();
Run Code Online (Sandbox Code Playgroud)

等等.但是,如果getDataN()函数是异步的,它会导致我们'回调地狱':

var data;
getData1(function() {
    getData2(function () {
        getData3(function () { alert('not found'); })
    })
});
Run Code Online (Sandbox Code Playgroud)

实现可能看起来像这样:

function getData1(callback) {
    $.ajax({
        url: '/my/url/1/',
        success: function(ret) { data = ret },
        error: callback
    });
 }
Run Code Online (Sandbox Code Playgroud)

...有了承诺,我希望写下这样的东西:

$.when(getData1())
   .then(function (x) { data = x; })
   .fail(function () { return getData2(); })
   .then(function (x) { data = x; }) 
   .fail(function () { return getData3(); })
   .then(function …
Run Code Online (Sandbox Code Playgroud)

javascript jquery promise jquery-deferred

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

错误:allowDefinition ='MachineToApplication'超出应用程序级别

有关此主题的大量SO帖子.到目前为止,解决方案似乎是将IIS中的目录配置为应用程序.另一种常见解决方案是从根目录中的文件夹中删除备份web.config文件.

我的问题不同,因为我在IIS Express上运行,因此没有办法将文件夹配置为应用程序.我注意到的是,每次编译时,我的根目录中都有一个名为obj的文件夹导致问题.所以我每次都要手动删除它.

@Valamas,在这篇文章中表示他只是编写了删除该文件夹的脚本,但我认为必须有一个更好的方法......我在这一行上发生了错误:

<authentication mode="Forms">
Run Code Online (Sandbox Code Playgroud)

但似乎在其他情况下发生.有谁的想法?

asp.net visual-studio iis-express

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