gpt4 book ai didi

C# - 如何在 if 语句中声明一个将由数据库调用填充的变量?

转载 作者:太空宇宙 更新时间:2023-11-03 11:13:50 25 4
gpt4 key购买 nike

我想从 if 语句内的数据库调用中获取数据,然后我希望能够在页面后面的 if 语句之外使用该数据。

那么,为什么这行不通呢?我能做些什么来完成这项工作?我刚收到错误消息“编译器错误消息:CS0103:名称‘selectedData’在当前上下文中不存在”。我试图在 if 语句之外声明一个“selectedData”变量,以便它可用,但我似乎无法弄清楚如何正确地做到这一点。

@{

var testVariable = "blah";

//set cache key and query based their being a craft name
if(testVariable.Length > 0){

var db = Database.Open("Connection");
var selectedData = db.Query("SELECT * FROM Products");
}

}


<div>
@foreach (var row in selectedData){
@row.ContentTitle <br />
@row.ContentShortDescription <br />
}
</div>

最佳答案

这是一个范围问题。您需要在 if 范围之外声明您的变量。

@{

var testVariable = "blah";
Type selectedData;

//set cache key and query based their being a craft name
if(testVariable.Length > 0){

var db = Database.Open("Connection");
selectedData = db.Query("SELECT * FROM Products");
}

}


<div>
@foreach (var row in selectedData){
@row.ContentTitle <br />
@row.ContentShortDescription <br />
}
</div>

我对这里的类型不熟悉,所以用了Type。在那里替换适当的类型。请注意,此代码段也无法确保在进入循环之前正确设置了 selectedData。你也应该处理它。

关于C# - 如何在 if 语句中声明一个将由数据库调用填充的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13239844/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com