我有C#代码加密/解密字符串。
void Main()
{
string myParameters = "val=tKsXHtj03UhASw4TRFMlqg%3d%3d";
Calc(myParameters).Dump();
}
string Calc(string str)
{
using (WebClient wc = new WebClient())
{
//return from WEBAPI....
}
}
但我也知道我可以通过Util.RawHtml
创建HTML,因此我不需要每次都更改代码。
所以,我补充说:
Util.RawHtml("<input type='text' id='tbData' /><br/><br/> <input type='button' id='btnCalc' value='Calc'/><br/> <br/> ").Dump();
所以现在看起来像:
但是我需要从按钮点击(这是html)
运行C#代码问题:
是否可以使用Linqpad进行此类操作?
点击按钮后如何运行Calc()
? (并从文本框中读取值)
linqpad:4.55.03(anycpu)
答案 0 :(得分:2)
这不是一个直接的答案,但在没有正确答案的情况下,我使用了两种可能有用的替代方法
第一种是简单地在循环中使用Util.ReadLine(),例如
void Main()
{
do
{
Calc(Util.ReadLine()).Dump();
}
while (true);
}
string Calc(string str)
{
using (System.Net.WebClient wc = new System.Net.WebClient())
{
return "from WEBAPI....";
}
}
第二种是使用WPF元素而不是HMTL,例如
void Main()
{
var lbl1 = new TextBlock{ Text = "Input value ", MinWidth = 70 } ;
var lbl2 = new TextBlock{ Text = "Results ", MinWidth = 70 } ;
var tb = new TextBox{ MinWidth = 500 } ;
var btn = new Button { Content = " Calc " };
btn.HorizontalAlignment = System.Windows.HorizontalAlignment.Left;
btn.Margin = new System.Windows.Thickness(5,1,1,1);
btn.MaxWidth = 100;
var results = new TextBlock{ Text = "" } ;
btn.Click += (sender, args) => { results.Text = Calc(tb.Text); } ;
var panel1 = new DockPanel();
panel1.Children.Add(lbl1);
panel1.Children.Add(tb);
panel1.Children.Add(btn);
var panel2 = new DockPanel();
panel2.Children.Add(lbl2);
panel2.Children.Add(results);
PanelManager.StackWpfElement(panel1, "Example");
PanelManager.StackWpfElement(panel2, "Example");
}
应该产生类似
的东西