我正在使用Azure移动应用程序中的C#来学习它们.我创建了模型以链接到我的Azure SQL DB,创建了一个像这样的DataObject:
public class Account : EntityData
{
//public int id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string PhoneNumber { get; set; }
public string Password { get; set; }
public DateTime dtCreated { get; set; }
public Guid oGuid { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
请注意,我注释掉了上面的public int id; 它给了我一个关于查询的重复列错误.
最后,我使用新创建的Account DataObject创建了一个控制器.
所以我运行应用程序并点击"表/帐户"功能,它返回零行(但有数据,我可以用我在天蓝色移动应用程序中使用的用户查询它).
然后我注意到模型架构如下:
[
{
"id": 0,
"FirstName": "string",
"LastName": "string",
"PhoneNumber": "string",
"Password": "string",
"dtCreated": …Run Code Online (Sandbox Code Playgroud) 我正在努力了解如何在进度案例表达式中检查空值。我想查看是否存在一列并使用它,如果不使用后备列。例如,威廉的名字将由Bill在fn.special-char中覆盖。
我有以下查询:
SELECT
"PUB"."NAME"."LAST-NAME" as LastName,
CASE fn."SPECIAL-CHAR"
WHEN is null THEN "PUB"."NAME"."FIRST-NAME"
ELSE fn."SPECIAL-CHAR"
END as FirstName
FROM "PUB"."NAME"
LEFT OUTER JOIN "PUB"."DAT-DATA" fn on "PUB"."NAME"."NAME-ID" = fn."DAT-SRC-ID" and 11 = fn."FLD-FIELD-ID"
Run Code Online (Sandbox Code Playgroud)
当我运行查询时,我得到:
ORBC Progress OpenEdge Wire Protocol驱动程序] [OPENEDGE]语法错误SQL语句等于或大约为“,然后为” PUB“。” NAME“。” FIRST-“(10713)
如果我选择*,我会看到一切。它只是不喜欢空白部分。我还可以将when null更改为when'bob',并且它可以工作。
在进度数据库查询中使用空值是否需要做其他事情?
我开始使用 HttpClient,因为我认为我访问的服务是 REST 服务。原来它是一个运行在端口 80 上的 JSON 服务,但它是一个套接字应用程序。
HttpClient 打开远程端口,但是当它发送 JSON 请求时,它永远不会得到响应。我也最难让提琴手得到回复。但是我能够让 wget 和 curl 发送/接收响应。那时我与原始开发人员交谈,他提到它不是真正的“REST”服务,而只是一个发送/接收 JSON 的套接字应用程序。
我可以做些什么来调整 HttpClient 以访问套接字应用程序,还是我将不得不退后一步并使用 WebSockets?
这是发送/接收 JSON 数据包的测试代码。
private async Task ProcessZone(string szIPAddress)
{
string responseData = string.Empty;
Uri baseAddress = new Uri(@"http://" + szIPAddress + "/player");
try
{
using (var httpClient = new HttpClient { BaseAddress = baseAddress })
{
var _req = new SendRequest();
_req.id = "rec-100";
_req.url = "/stable/av/";
_req.method = "browse";
var _json = JsonConvert.SerializeObject(_req);
using (var content = …Run Code Online (Sandbox Code Playgroud) 我一直在阅读有关 Blazor 的文章,甚至还使用了一些示例代码。但是,我没有找到我的问题的答案。我希望将 Blazor 作为我正在重写的应用程序的前端运行,如果可能的话,我希望在不安装 IIS 的情况下执行此操作。当我搜索“Blazor serverless”时,我得到了天蓝色的函数。是否可以在没有 IIS 的情况下使用 Blazor 客户端,如果可以,此编程过程称为什么?
我正在使用C#并创建了一个发送到JSON服务的对象,如下所示:
public class SendRequest
{
public string id { get; set; }
public string case { get; set; }
public string method { get; set; }
public Volume value { get; set; }
}
public class Volume
{
public int level;
public bool mute;
}
Run Code Online (Sandbox Code Playgroud)
我可以在设置子对象时编写提示:
var _req = new SendRequest();
_req.value.mute = false;
_req.value.level = 50;
Run Code Online (Sandbox Code Playgroud)
但是当程序运行时,子对象本身为null(_req.value = null),并且该对象下的两个项目不显示.
为什么会这样?
Windows商店应用程序至少可以说令人沮丧; 只是足够接近常规.net进入麻烦.
我在使用Tasks,await和Socket.ConnectAsync时遇到的问题.
我有以下代码:
public async Task<string> Connect(string hostName, int portNumber)
{
string result = string.Empty;
// Create DnsEndPoint. The hostName and port are passed in to this method.
DnsEndPoint hostEntry = new DnsEndPoint(hostName, portNumber);
// Create a stream-based, TCP socket using the InterNetwork Address Family.
_socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
// Create a SocketAsyncEventArgs object to be used in the connection request
SocketAsyncEventArgs socketEventArg = new SocketAsyncEventArgs();
socketEventArg.RemoteEndPoint = hostEntry;
// Inline event handler for the Completed event. …Run Code Online (Sandbox Code Playgroud) 抱歉,这很可能在某些时候被问到过,但我什至不确定我应该搜索什么......
我有一个包含多个表单的 winform 应用程序。到目前为止,一次打开一个表单已经很好了。但是现在,我有一个新的表单,我想添加它,但可以在我使用其他表单时保持该表单处于打开状态。我什至不确定这叫什么,但我以前在其他应用程序中见过它。
我确实发现了这个:同时运行两个 winform 窗口
但是这个新窗口是一个运行线程的 winpipe 队列查看器。当我尝试使用
Application.Run(new QueueViewer());
Run Code Online (Sandbox Code Playgroud)
我收到错误消息:在单个线程上启动第二个消息循环不是有效操作。请改用 Form.ShowDialog。
问题在于它会在我关闭该表单之前锁定程序执行任何其他操作。
谢谢你的帮助!