小编geo*_*ker的帖子

无法理解C#中的产量

我希望能够对我最近在调试器中完成的一个片段做一些澄清,但是根本无法理解.

我正在PluralSight学习C#课程,目前的主题是关于并使用关键字返回a .yieldIEnumerable<T>

我有这个过于基本的函数,它返回一个(一个带有的简单类,和)的IEnumerable集合:VendorsIdCompanyNameEmail

public IEnumerable<Vendor> RetrieveWithIterator()
{
    this.Retrieve(); // <-- I've got a breakpoint here
    foreach(var vendor in _vendors)
    {
        Debug.WriteLine($"Vendor Id: {vendor.VendorId}");
        yield return vendor;
    }
}
Run Code Online (Sandbox Code Playgroud)

我在单元测试中得到了这个代码,我用它来测试函数:

var vendorIterator = repository.RetrieveWithIterator(); // <-- Why don't it enter function?
foreach (var item in vendorIterator) // <-- But starts here?
{
    Debug.WriteLine(item);
}
var actual = vendorIterator.ToList();
Run Code Online (Sandbox Code Playgroud)

我真的无法理解,我确信很多初学者都遇到了同样的问题,这就是为什么初始调用RetrieveWithIterator不会启动函数,而是在我们开始迭代其返回的IEnumerable集合时开始(见评论).

.net c# yield yield-return

11
推荐指数
2
解决办法
7795
查看次数

Bootstrap数据间谍没有开火

我正在为自己创建一个个人资料网站,并且正在运行一个"体面"的概念.

然而,似乎我的导航栏的数据间谍要么没有开火,要么我的html/css有问题.

是一个带有html/css的笔.这是正文(相关数据间谍参考):

<body data-spy="scroll" data-target="#navbar" data-offset="50">
Run Code Online (Sandbox Code Playgroud)

这就是我设置导航栏的方式:

<nav id="navbar" class="collapse navbar-collapse">
  <div class="navbar-header">

    <button type="button" data-toggle="collapse" data-target="#navBar-target" class="navbar-toggle"> 
    <span class="icon-bar"> </span>
    <span class="icon-bar"> </span>
    <span class="icon-bar"> </span>
    </button>
  </div>
  <div class="collapse navbar-collapse" id="navBar-target">
    <ul class="nav navbar-nav navbar-right">
      <li>
        <a href="#top" > About </a>
      </li>
      <li>
        <a href="#portfolio" > Portfolio </a>
      </li>
      <li class>
        <a href="#contact" > Contact </a>
      </li>
    </ul>
  </div>
</nav> 
Run Code Online (Sandbox Code Playgroud)

以下是一些相关的CSS:

.navbar-default .navbar-nav>li>a:focus,
.navbar-default .navbar-nav>li>a:hover {
  color: #333;
  background-color: black;
}

.navbar-nav>li>a {
  color: …
Run Code Online (Sandbox Code Playgroud)

html css css3 twitter-bootstrap twitter-bootstrap-3

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

ASCII 文本可执行文件,带有 CRLF 行终止符

晚上好,

我目前正在参加 python 入门课程,并且遇到了一个我无法解决的问题。我确信这是我的代码中某个地方的一个简单错误,但我找不到任何可以解决我的问题的问题。

奇怪的是,当从 cygwin 执行它时,它编译并运行良好......

我在通过第三方测试进行验证时遇到此错误(我无权访问):

Python 脚本,ASCII 文本可执行文件,带有 CRLF 行终止符

这是我的代码:

    height = float(input("What is the plane's elevation in metres? \r\n"))
    height = format(height * 3.28084, '.2f')

    speed = float(input("What is the plane's speed in km/h? \r\n"))
    speed = format(speed * 0.62137, '.2f')

    temperature = float(input("Finally, what is the temperature (in celsius) outside? \r\n"))
    temperature = format(temperature * (9/5) + 32, '.2f') 

    print("""\n########### OUTPUT ###########\n\nThe elevation is {feet} above the sea level, \n
you are going {miles} …
Run Code Online (Sandbox Code Playgroud)

python python-3.x

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

React setState不改变特定属性的状态

我现在公司的一个旧开发人员最近把他的尾巴放在他的腿之间,并且在做了打字稿/反应后逃离,留下了一堆破碎的代码.

我现在的问题是我有这个TypeScript代码,只是从数组中删除一个项目并更改状态:

var currentFiles = this.state.openFiles;
    var index = this.state.openFiles.findIndex((f: IFileModel) => f.fileId == fileId)
    currentFiles.splice(index, 1);
    this.setState({ 
        mode: "gallery",
        openFiles: currentFiles 
    }, () => console.log(this.state.mode));
Run Code Online (Sandbox Code Playgroud)

我的问题是状态永远不会更新mode,即使setState 应该这样做.无论我如何改变,console.log节目都是0.

即使在渲染函数中放置一个断点,mode也会告诉我0它应该在哪里"gallery".

这是初始状态:

this.state = {
            openFiles: [],
            mode: "gallery",
            categories: [],
            galleryState: {}
        }
Run Code Online (Sandbox Code Playgroud)

有什么建议?

javascript typescript reactjs

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