我有一个带有以下签名的方法:
public ActionResult RenderFamilyTree(string name, Dictionary<string, string> children)
Run Code Online (Sandbox Code Playgroud)
我试图使用jQuery从javascript中调用它,如下所示:
$('#div_render').load(
"<%= Url.Action("RenderFamilyTree") %>",
{
'name': 'Raul',
[
{'key':'key1','value':'value1'},
{'key':'key2','value':'value2'}
]
},
function() {
alert('Loaded');
}
);
Run Code Online (Sandbox Code Playgroud)
我错过了一些让它起作用的东西吗?
我有一个entityDao,由我的objectDaos的每个人继承.我正在使用Dynamic Linq并尝试使用一些通用查询.
我的EntityDao中的泛型方法中有以下代码:
public abstract class EntityDao<ImplementationType> where ImplementationType : Entity
{
public ImplementationType getOneByValueOfProperty(string getProperty, object getValue){
ImplementationType entity = null;
if (getProperty != null && getValue != null)
{
LCFDataContext lcfdatacontext = new LCFDataContext();
//Generic LINQ Query Here
entity = lcfdatacontext.GetTable<ImplementationType>().Where(getProperty + " =@0", getValue).FirstOrDefault();
//.Where(getProperty & "==" & CStr(getValue))
}
//lcfdatacontext.SubmitChanges()
//lcfdatacontext.Dispose()
return entity;
}
Run Code Online (Sandbox Code Playgroud)
然后我在单元测试中执行以下方法调用(我的所有objectDaos都继承entityDao):
[Test]
public void getOneByValueOfProperty()
{
Accomplishment result = accomplishmentDao.getOneByValueOfProperty
("AccomplishmentType.Name", "Publication");
Assert.IsNotNull(result);
}
Run Code Online (Sandbox Code Playgroud)
以上过程(AccomplishmentType与成就有关系)
Accomplishment result = …
Run Code Online (Sandbox Code Playgroud) 我试图使用Rx异步处理一些任务,例如
var list = Enumerable.Range(0, 100)
.ToObservable()
.SelectMany(x => Observable.Start(() => {
Console.WriteLine("Processing {0} ...", x);
Thread.Sleep(100 * x % 3);
if (x > 90) {
Console.WriteLine("Procesing exception {0} > 90", x);
throw new Exception("Value too large");
}
Console.WriteLine("Processing {0} completed.", x);
return x;
}))
.Subscribe(
x => { Console.WriteLine("Next [{0}]", x); },
e => {
Console.WriteLine("Exception:");
Console.WriteLine(e.Message);
},
() => { Console.WriteLine("Complete"); }
);
Run Code Online (Sandbox Code Playgroud)
我对此代码的问题是异常未传递给订阅者.所以,经过大量的尝试,我放弃了,并决定问这个简单的问题:
如何处理SelectMany
语句中异步方法中引发的异常?
为了说清楚,最终的实现是一个同步的函数调用,可能会或可能不会抛出异常.目标是将其传递给订户,以便可以进一步处理(在特定情况下,将向用户显示消息).
编辑
我将我的发现归结为一个答案,以便我可以将这个问题标记为已回答.就个人而言,我不同意自我回答......但有时没有别的办法,所以很抱歉.
我想使用RegexValidator验证电子邮件,例如
[RegexValidator(@"^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$")]
Run Code Online (Sandbox Code Playgroud)
哪个工作正常,现在我想包装属性,以便我可以将它存储在一个地方:
public class EmailAttribute : RegexValidator
{
public EmailAttribute()
: base(@"^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$")
{
}
}
Run Code Online (Sandbox Code Playgroud)
所以我可以使用
[EMail]
Run Code Online (Sandbox Code Playgroud)
但它不起作用,为什么?
好的...这让我很难解释,所以我将从一个命名空间和一个单独的命名空间中显示一个类...
Company.Product.Domain
(这表示包含特定于该类的方法的类,我将其命名为"Domain",这样您就可以看到我在单独的命名空间中使用相同的名称
Company.Product.Domain.Data.Contracts
(此命名空间将用于WCF服务中使用的所有数据协定)
如果我在Company.Product.Domain
课堂上并尝试使用其中的类Company.Product.Domain.Data.Contracts
,当我尝试输入时,我会进入Company.Product.Domain
并且不会再显示智能感知.它还显示该引用是一个类,而不是允许我到达命名空间.
Company.Product.Domain.Data.Contracts
我的Company.Product.Domain
班上有引用.
是否有可能在Company.Product
其中包含类的命名空间以及另一个命名空间Company.Product.Domain.Data.Contracts
?如果是这样,怎么样?
谢谢
我是WPF的新手.我正在为样本在线测试结果创建动画.在哪里我喜欢表示没有参加的问题,没有正确的答案作为动画.我需要在AttendedQuestionEffect()和RightAnswerEffect()之间创建一个小的延迟;
CodeBehind代码在这里
public int TotalNoQuestion { get; set; }
public int NoOfQuestionAttended { get; set; }
public int NoOfRightAnswer { get; set; }
public Window1()
{
InitializeComponent();
TotalNoQuestion = 100;
NoOfQuestionAttended = 18;
NoOfRightAnswer = 10;
stkpnl.Background = CreateLinearGradientBrush();
Storyboard strBrd = new Storyboard();
strBrd.Completed += new EventHandler(strBrd_Completed);
DoubleAnimation myDoubleAnimation = new DoubleAnimation();
myDoubleAnimation.From = 10;
myDoubleAnimation.To = (TotalNoQuestion *15);
myDoubleAnimation.Duration = new Duration(TimeSpan.FromSeconds(2));
Storyboard.SetTargetName(myDoubleAnimation, stkpnl.Name);
Storyboard.SetTargetProperty(myDoubleAnimation, new PropertyPath(StackPanel.HeightProperty));
strBrd.Children.Add(myDoubleAnimation);
strBrd.Begin(stkpnl);
}
void strBrd_Completed(object sender, EventArgs e)
{
for (int …
Run Code Online (Sandbox Code Playgroud) c# ×4
.net ×2
.net-4.0 ×1
attributes ×1
dictionary ×1
dynamic-linq ×1
email ×1
generics ×1
jquery ×1
json ×1
linq ×1
linq-to-sql ×1
namespaces ×1
where-clause ×1
wpf ×1