从我的理解主要事情之一async和await要做的就是让代码易于读写-但使用它们等于产卵后台线程来执行持续时间长的逻辑?
我正在尝试最基本的例子.我在内联添加了一些评论.你能为我澄清一下吗?
// I don't understand why this method must be marked as `async`.
private async void button1_Click(object sender, EventArgs e)
{
Task<int> access = DoSomethingAsync();
// task independent stuff here
// this line is reached after the 5 seconds sleep from
// DoSomethingAsync() method. Shouldn't it be reached immediately?
int a = 1;
// from my understanding the waiting should be done here.
int x = await access;
}
async Task<int> DoSomethingAsync()
{
// is …Run Code Online (Sandbox Code Playgroud) 假设我有以下字符串数组:
string[] str = new string[] {"max", "min", "avg", "max", "avg", "min"}
Run Code Online (Sandbox Code Playgroud)
是否可以使用LINQ获取与一个字符串匹配的索引列表?
作为一个例子,我想搜索字符串"avg"并获得一个包含的列表
2,4
意思是"avg"可以在str [2]和str [4]中找到.
我正在尝试使用jQuery发送表单的数据.但是,数据无法到达服务器.你能告诉我我做错了什么吗?
<form id="contactForm" name="contactForm" method="post">
<input type="text" name="nume" size="40" placeholder="Nume">
<input type="text" name="telefon" size="40" placeholder="Telefon">
<input type="text" name="email" size="40" placeholder="Email">
<textarea name="comentarii" cols="36" rows="5" placeholder="Message"></textarea>
<input id="submitBtn" type="submit" name="submit" value="Trimite">
</form>
Run Code Online (Sandbox Code Playgroud)
使用Javascript:
<script type="text/javascript">
$(document).ready(function(e) {
$("#contactForm").submit(function() {
$.post("getcontact.php", $("#contactForm").serialize())
// Serialization looks good: name=textInNameInput&&telefon=textInPhoneInput etc
.done(function(data) {
if (data.trim().length > 0) {
$("#sent").text("Error");
} else {
$("#sent").text("Success");
}
});
return false;
})
});
</script>
Run Code Online (Sandbox Code Playgroud)
和服务器端:
$nume = $_REQUEST["nume"]; // $nume contains no data. Also tried $_POST
$email = $_REQUEST["email"]; …Run Code Online (Sandbox Code Playgroud) 我正在尝试做一个jquery GET,我想发送一个参数.
这是我的功能:
$(function() {
var availableProductNames;
$.get("manageproducts.do?option=1", function(data){
availableProductNames = data.split(",");;
alert(availableProductNames);
$("#nameInput").autocomplete({
source: availableProductNames
});
});
});
Run Code Online (Sandbox Code Playgroud)
这似乎不起作用; 我使用时在servlet中得到null request.getParameter("option");
如果我在浏览器中键入链接http://www.myite.com/manageproducts.do?option=1它可以很好地工作.
我也尝试过:
$.get(
"manageproducts.do?",
{option: "1"},
function(data){}
Run Code Online (Sandbox Code Playgroud)
这也不起作用.
你能帮我么?
编辑:
也试过了
$.ajax({
type: "GET",
url: "manageproducts.do",
data: "option=1",
success: function(msg){
availableProductNames = msg.split(",");
alert(availableProductNames);
$("#nameInput").autocomplete({
source: availableProductNames
});
}
});
Run Code Online (Sandbox Code Playgroud)
仍然得到相同的结果.
我做了一些研究,我似乎无法完全理解如何将facebook登录与您的网站集成.
我正在尝试为一个老式的php商店做这个,到目前为止,它不使用任何类型的登录,而只是一个允许用户浏览页面并将项目添加到购物车的会话.
我在这里读到,在stackoverflow上,你需要一个数据库中的表来保存用户的电子邮件地址和facebook_id.那么之后我可以与我的数据库中的其他表连接,以便为每个用户提供更多信息?
还有其他方法可以轻松地将您的网站与Facebook和Google帐户集成吗?我读了一些关于OpenID的内容,但是并不真正了解它的用途:)
所以这就是为什么我要求你们让我走上正轨:).我真的很新,任何建议,最佳实践等都将非常感谢!
谢谢!
我知道这个问题之前已被问过多次,但我尝试了答案,但它们似乎没有用.
我有两个长度相同但类型不同的列表,我想在list1[i]连接的同时迭代它们list2[i].
例如:
假设我有list1(as List<string>)和list2(as List<int>)
我想做点什么
foreach( var listitem1, listitem2 in list1, list2)
{
// do stuff
}
Run Code Online (Sandbox Code Playgroud)
这可能吗?
我想在工作线程上执行一些操作,同时向用户显示进度条.我创造了一个班级
public class ProgressBar
{
public void StartAsyncTask(Action action)
{
Task t = new Task(action);
t.start();
}
}
Run Code Online (Sandbox Code Playgroud)
我发现我可以StartAsyncTask通过以下方式发送任何方法:
ProgressBar pb = new ProgressBar();
pb.StartAsyncTask( () => DoSomething(15, "something"));
public void DoSomething(int i, string s)
{
//do something
}
Run Code Online (Sandbox Code Playgroud)
首先,我似乎无法理解lambda表达式是什么以及如何() =>- 已翻译以及Action对象如何传递具有未知数量参数的委托.
我想BackgroundWorker在我的ProgressBar中使用a ,但在这种情况下我需要调用该动作.所以像这样:
void m_backgroundWorker_DoWork(object sender, DoWorkEventArgs e)
{
Action action = e.Argument as Action; //same action here passed through EventArgs
//but already in a worker thread so no need for …Run Code Online (Sandbox Code Playgroud) 任何人都可以解释以下Dictionary方法的复杂性是什么?
ContainsKey(key)
Add(key,value);
Run Code Online (Sandbox Code Playgroud)
我想弄清楚我写的方法的复杂性:
public void DistinctWords(String s)
{
Dictionary<string,string> d = new Dictionary<string,string>();
String[] splitted = s.split(" ");
foreach ( String ss in splitted)
{
if (!d.containskey(ss))
d.add(ss,null);
}
}
Run Code Online (Sandbox Code Playgroud)
我假设2个字典方法具有log(n)复杂度,其中n是字典中的键数.它是否正确?
当gps状态改变时,我试图注册广播接收器以接收更新.
但是,当gps状态从启用更改为禁用或反之亦然时,似乎不会调用我的GpsChangeReceiver onReceive方法.
首先,我正在注册接收者:
GpsChangeReceiver m_gpsChangeReceiver = new GpsChangeReceiver();
this.registerReceiver(m_gpsChangeReceiver, new IntentFilter(LocationManager.PROVIDERS_CHANGED_ACTION));
Run Code Online (Sandbox Code Playgroud)
然后,我有我的GPS接收器
public class GpsChangeReceiver extends BroadcastReceiver
{
@Override
public void onReceive( Context context, Intent intent )
{
final LocationManager manager = (LocationManager) context.getSystemService( Context.LOCATION_SERVICE );
if (manager.isProviderEnabled( LocationManager.GPS_PROVIDER ) ) {
//do something
}
else
{
//do something else
}
}
}
Run Code Online (Sandbox Code Playgroud)
最后,我的清单包含:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
Run Code Online (Sandbox Code Playgroud)
任何人都可以看到为什么当我从手机的设置修改其状态时从未调用gps接收器?
如何"-"使用正则表达式在字符前获取字符串?
例如,我有"text-1",我想要回来"text".