如何处理多个客户端winforms的数据库更新的提要
我们正在使用单个后端系统或数据库作为PostgreSQL开发C#中的Winforms的桌面应用程序.桌面应用程序将由本地LAN上的多个用户或在WAN上使用我的数据库服务器上的WAN上使用. 用户将在数据库表上执行更新,插入,删除.我需要的是,当任何用户执行上述三个操作中的任何一个(自动登录或将在一段时间后登录)时,就会在Winforms中看到有关其他用户执行的活动. 请帮助我如何进行相同的操作. 问候 葡萄et更多 解决方案 您要寻找的是消息队列服务. 工作流将像这样: 自定义服务将使用postgresql 在PostgreSQL内部,您可以使用pgsql通知来从触发器内通知自定义服务. 应用程序将是从MQS读取消息,并向UI上的用户读取消息. 问候 h
20 2024-04-26
编程技术问答社区
NpgsqlConnection在打开连接时挂起数小时
我能够使用NPGSQL Nuget软件包成功连接,直到有一天该程序开始在执行Conn.Open()的情况下悬挂数小时而无需返回. 我可以通过相同的参数成功地与Aginity客户端连接. 我尝试了防火墙打开和关闭. 我尝试了防病毒打开和关闭. 我尝试了提琴手打开和关闭. 需要注意的一些事情: 我需要使用 VPN 才能连接到该主机.当执行Conn.Open()时,它只是悬挂数小时. 当我不使用VPN时,它会立即出现. 我们看不到与主机的实际传入连接,只是查询.但是代码无法到达查询部分,它挂在打开连接上. using (var conn = new NpgsqlConnection(connString)) { conn.Open(); using (var cmd = new NpgsqlCommand(command, conn
4 2024-04-26
编程技术问答社区
在C#中创建一个处理postgresql查询的类
我的问题是:处理具有不同SQL查询,参数和返回值的新类/方法内的最有效方法是什么? ? 例如: NpgsqlCommand ukupno_sati = new NpgsqlCommand("begin;select cast(radni_sati.sati_rada as time) from radni_sati where zaposlenik_id=@zaposlenik_id " + " and extract(month from radni_sati.datum)=@mjesec_broj and extract(year from radni_sati.datum)=@godina;commit;",conn); ukupno_sati.Parameters.AddWithValue("@zaposlenik_id", dtIme_prezime_odjel_bolovanje_god
14 2024-04-26
编程技术问答社区
无法使用angularjs和asp.net webmethod将数据库中的数据显示到html表中
我是AngularJS和ASP.NET Web方法的新手.在这里,我在ASP.NET .aspx表单中创建了一个表.我绑定值,为此产品创建了一个控制器.我使用Web方法将数据传递给控制器​​.我实际面临的问题是,我无法从数据库中获取数据并显示到HTML表中.我没有在构建时间和控制台中遇到任何错误.请需要帮助. product.aspx
14 2024-04-26
编程技术问答社区
c#从postgresql中检索_文本类型
我有一个像[[" 64"," 0"," 0"],[" 64"," 7"," 95"],[61"," 28"," 165")的数组,[" 60"," 45"," 200"]在我从Ruby上存储的Postgres列中,我想在C#项目中检索它.当我这样做时: NpgsqlDataReader reader = command.ExecuteReader(); DataTable dt = new DataTable(); while (reader.Read()) { Console.WriteLine("{0}\t{1}", reader.GetName(0), reader.GetString(1)); } 我得到以下例外: system.invalidcastException:无法施放数据库类型_text到字符串 我如何将此列值作为数组 但是当我这样做时: dt.Load(reader); foreach (DataRow row in dt.Rows)
10 2024-04-26
编程技术问答社区
如何使用NpgsqlCopyIn和NpgsqlCopySerializer?
如果我用NPGSQLCopSerializer正确理解NPGSQLCOPYIN,则应使用这样的工作: var conn = new NpgsqlConnection(ConfigurationManager.ConnectionStrings["PostgreSqlDb"].ConnectionString); conn.Open(); var tran = conn.BeginTransaction(); var cmd = new NpgsqlCommand("COPY address (id, employee, value) FROM STDIN", conn); var npgsqlCopySerializer = new NpgsqlCopySerializer(conn); var npgsqlCopyIn = new NpgsqlCopyIn(cmd, conn, npgsqlCopySerializer.ToStream); try { npgsqlCo
12 2024-04-26
编程技术问答社区
Npgsql EF 6: 使用ExecuteSqlInterpolatedAsync时时间戳失效
更新为6.0.3后,我会在ExecutesQlinterPoleatedAsync中遇到错误. 好吧,我知道这是一个狂热的变化,但是我在数据库中查看了所有表格,所有列都是"没有时区的时间戳".并且可以通过模型/dbset进行更新或插入. 考虑到这一点,请查看此代码: await Database.ExecuteSqlInterpolatedAsync($@"update nfservico set chavenfse = {chave}, lotenfse = {cLote}, lotenfse_dh = {dhRecbto}, lotenfse_sit = {sit}, lotenfse_mot = {mot} where id = {id}"); dhrecbt
4 2024-04-26
编程技术问答社区
如何只使用一个连接来执行多个命令和查询?
这是完成代码链接 我只想使用NPGSQL连接执行多个查询,而不是使用多个连接如下: class TransactionAccess { private const string connString = "Host=localhost;Username=postgres;Password=1234;Database=ExpenseManagerDB"; public static void GetExpense(DateTime startDate, DateTime endDate) { using (var connection = new NpgsqlConnection(connString)) { var Expense = connection.Query(@"SELECT SUM(t.amount) as Expense
6 2024-04-26
编程技术问答社区
NPGSQL ENTITYFRAMEWORK CORE不要将DateTimeOffset持续为数据库中的UTC时间
我在控制台应用程序中使用Npgsql.EntityFrameworkCore.PostgreSQL 7.0.4将DateTimeOffset持续到PostgreSQL数据库.但是,存储在我的数据库中的值始终在Local DateTimeOffset中.我的本地计算机配置了IST时区,该时区为UTC +05.30. 这是我的代码 DbContext: public class TestContext : DbContext { public DbSet Categories { get; set; } protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { optionsBuilder.UseNpgsql("Host=localhost;Database=EFDateTime;User id=postgres
2 2024-04-26
编程技术问答社区
'System.InvalidcastException:无法写入CLR类型System.String使用处理程序类型Numerichandler'非常陷入PostgreSQL中的数据类型问题上
我正在将一些旧的VB代码重写为C#,并将所有内容转换为Informix和SQL Server的PostgreSQL.由于PostgreSQL对数据类型的严格影响,我认为我认为这是一个数据类型问题.在我尝试铸造AS NUMERIC之前.我还尝试了不使用pstrng sql字符串中的类型铸件. 我尝试将NpgsqlTypes.NpgsqlDbType的s更改为有意义的每种不同的数据类型.我觉得我尝试了一切.同样要透明,我对PostgreSQL并不那么精通,因此可能是一些显而易见的简单语法. 以下是变量的声明: string aString; int id = 0; string cmpyid = ""; string tgnn = ""; string inm = ""; string Whs = ""; string ft = "0"; string gh_lt = "0"; string gll = "0"; string ghsd = "1998/01/01"; st
8 2024-04-26
编程技术问答社区
具有多个参数的表达式和int返回类型在EF核心中
我正在使用.net core 3.1, microsoft.entityframeworkcore.entityframeworkcore 3.1.1.9 and 这是我当前拥有的功能: public List GetTicketsForBuild(Build build) { Expression> CompareBuilds = (first, second) => // complex logic, simplified for the sake of example first.Version == second.Version ? 0 : (first.Version CompareBuilds(x.Bu
6 2024-04-25
编程技术问答社区
Npgsql: 预备语句是如何做到的
我们正在为多人游戏开发数据库后端.该服务器用C#编写,并通过NPGSQL与Postgres数据库进行交谈. 现在,手册显示了如何使用准备好的语句: NpgsqlCommand command = new NpgsqlCommand("select * from tablea where column1 = :column1", conn); // Now add the parameter to the parameter collection of the command specifying its type. command.Parameters.Add(new NpgsqlParameter("column1", NpgsqlDbType.Integer); // Now, prepare the statement. command.Prepare(); // Now, add a value to it and later execute the command
0 2024-04-25
编程技术问答社区
提高MMO游戏性能
我们都知道MMO游戏的流行趋势.玩家彼此生活的地方. 我关注的领域是储存玩家的动作和游戏结果. 通过NPGSQL适配器使用CSHARP和POSTGRESQL v9.0 游戏客户端是基于浏览器的ASP.NET,并调用所有与数据库相关处理的CSHARP函数 要了解我的查询,请考虑以下方案 我们将游戏进度存储在Postgres表中. 例如,锦标赛以四名球员开始,然后进行活动 每个玩家以100hitpoints开头 玩家1进行罢工(我们是指将打击转换为随机范围%的命中点的图表) 玩家2具有92hp,并返回轻击,因此Player1有98HP 上面的两轮将在游戏进度表中,为 ROW Player1HP Player2HP Strikefrom StrikeTo ReturnStrikeHP Round TimeStamp StrikeMethod 1 100 100 0 0
0 2024-04-25
编程技术问答社区
从php中获取数据到c#脚本
我有一个Unity3D C#从PHP文件获取数据的脚本. Unity C#文件: using UnityEngine; using System.Collections; public class FrmPhp : MonoBehaviour { // Use this for initialization void Start () { string url = "http://localhost/abc/PgComm.php"; WWW www = new WWW(url); StartCoroutine(WaitForRequest(www)); } IEnumerator WaitForRequest(WWW www) { yield return www; // check for errors if (www.error ==
2 2024-04-25
编程技术问答社区
npgsql中的Date类型是什么?
我正在使用PostgreSQL数据库.我需要使用SQL查询添加"日期"参数.我必须在代码" xxx"中写下写什么 这是源代码: NpgsqlCommand RupCmd = new NpgsqlCommand("UPDATE TABLE SET dat1=@dno,dat2=@dlidz,id_viesis=@idv,id_istaba=@idi WHERE rezervacijas_id=@id", con); RupCmd.Parameters.Add(new NpgsqlParameter("@dno", NpgsqlTypes.NpgsqlDbType.Date, XXX, "dat1")); RupCmd.Parameters.Add(new NpgsqlParameter("@dlidz", NpgsqlTypes.NpgsqlDbType.Date, XXX, "dat2")); RupCmd.Parameters.Add(new NpgsqlParameter("@
14 2024-04-25
编程技术问答社区
如何在多个连接字符串中使用optionsBuilder.UseNpgsql?
我试图在包装管理器控制台中使用多个连接字符串进行更新数据库,这些连接字符串存储在名为 的字符串列表中 ldatabaseconnection 如果我指定字符串列表中的哪个索引,并且只需在软件包管理器控制台中运行更新数据库. protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { optionsBuilder.UseNpgsql(this.lDataBaseConnection[0]); } 但是,如果我使用循环,而不是更新所有数据库...我只在我的字符串列表的最后索引上获得一个更新数据库. protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { for (int indexOflDataBaseConnection
2 2024-04-25
编程技术问答社区
在 "葡萄牙语 "数据库中无法用npgsql选择一些行
我有一个使用" SQL_ASCII"和模板" Template0"创建的PostgreSQL数据库.它在葡萄牙拥有数据,因此我有"não","feijão","avô"之类的数据.当我尝试检索具有此类字符的行时"〜^"它不起作用,否则可行. 错误: "错误解析第6列(sempresa = 0 -string)"} message ="不能转换为Unicode指定的代码页的索引0中的字节[C3]." 我正在使用npgsql和dapper 我搜索了很多,但没有任何可行.我尝试了: 在连接字符串中设置客户端编码: var sqlBuilder =
12 2024-04-25
编程技术问答社区
.NET核心记录到serilog无法正常工作
我正在使用Serilog记录PostgreSQL数据库 这是我的Serilog配置 这是我的appsettings.json-> {也尝试了不同的配置} "Serilog": { "Using": [ "Serilog.Sinks.PostgreSQL.Configuration" ], "MinimumLevel": "Debug", "Enrich": [ "WithMachineName" ], "WriteTo": [ { "Name": "PostgreSQL", "Args": { "connectionString": "my-connection-string", "tableName": "log", "needAutoCreateTable": true } } ] }, "C
8 2024-04-25
编程技术问答社区
如何使PostgreSQL触发器和C# Windows服务一起工作?
我想在C#中编写Windows服务,该服务将等待PostgreSQL数据库中的特定表中的更改,然后根据最后插入的行中的数据进行操作. 据我所知(我是PostgreSQL的新手),我可以使用触发器在结构代码中执行功能 - 但是如何使其将数据传递给我的服务? 事先感谢您的任何建议. 解决方案 查看异步通知 -
6 2024-04-25
编程技术问答社区