小编DaB*_*lue的帖子

为什么Azure Mobile Apps的数据模型中存在字符串ID?

我正在使用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)

c# azure-mobile-services

10
推荐指数
1
解决办法
1031
查看次数

具有NULL值的CASE表达式

我正在努力了解如何在进度案例表达式中检查空值。我想查看是否存在一列并使用它,如果不使用后备列。例如,威廉的名字将由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',并且它可以工作。

在进度数据库查询中使用空值是否需要做其他事情?

sql select case progress-db openedge

3
推荐指数
1
解决办法
7905
查看次数

HttpClient 访问套接字应用程序

我开始使用 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)

c# dotnet-httpclient

3
推荐指数
1
解决办法
2789
查看次数

没有服务器的 Blazor(非无服务器)

我一直在阅读有关 Blazor 的文章,甚至还使用了一些示例代码。但是,我没有找到我的问题的答案。我希望将 Blazor 作为我正在重写的应用程序的前端运行,如果可能的话,我希望在不安装 IIS 的情况下执行此操作。当我搜索“Blazor serverless”时,我得到了天蓝色的函数。是否可以在没有 IIS 的情况下使用 Blazor 客户端,如果可以,此编程过程称为什么?

blazor blazor-client-side

3
推荐指数
1
解决办法
974
查看次数

对象内的对象为null

我正在使用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),并且该对象下的两个项目不显示.

为什么会这样?

.net c# nested

2
推荐指数
1
解决办法
63
查看次数

Windows应用商店应用程序的Socket.ConnectAsync不喜欢Async

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)

c# async-await windows-store-apps

1
推荐指数
1
解决办法
895
查看次数

在 Winform 应用程序中有两个活动窗口

抱歉,这很可能在某些时候被问到过,但我什至不确定我应该搜索什么......

我有一个包含多个表单的 winform 应用程序。到目前为止,一次打开一个表单已经很好了。但是现在,我有一个新的表单,我想添加它,但可以在我使用其他表单时保持该表单处于打开状态。我什至不确定这叫什么,但我以前在其他应用程序中见过它。

我确实发现了这个:同时运行两个 winform 窗口

但是这个新窗口是一个运行线程的 winpipe 队列查看器。当我尝试使用

Application.Run(new QueueViewer());
Run Code Online (Sandbox Code Playgroud)

我收到错误消息:在单个线程上启动第二个消息循环不是有效操作。请改用 Form.ShowDialog。

问题在于它会在我关闭该表单之前锁定程序执行任何其他操作。

谢谢你的帮助!

c# winforms

0
推荐指数
1
解决办法
1674
查看次数