ProCom 1.0.3
The owner has unlisted this package.
This could mean that the package is deprecated, has security vulnerabilities or shouldn't be used anymore.
dotnet add package ProCom --version 1.0.3
NuGet\Install-Package ProCom -Version 1.0.3
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="ProCom" Version="1.0.3" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ProCom" Version="1.0.3" />
<PackageReference Include="ProCom" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add ProCom --version 1.0.3
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: ProCom, 1.0.3"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package ProCom@1.0.3
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=ProCom&version=1.0.3
#tool nuget:?package=ProCom&version=1.0.3
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Process Communicator
A small and easy to use component allowing the communication of data between various applications.
What you will find in this package
A simple and small component to
- Create one or more listening servers with the communicator component.
- Delete a listening server from your application.
- Send raw data or object to a server.
How to install and use this framework
- Install this package
- Create a server in your application n°1:
ICommunicator communicator = new Communicator();
communicator.ReceivedMessage += OnReceivedMessage;
communicator.CreateServer("Foo_Server");
// or create default server. the server name is application name.
// Get the default server name in communicator.DefaultServerName.
ICommunicator communicator = new Communicator(true);
communicator.ReceivedMessage += OnReceivedMessage;
// OnReceivedMessage is raised by all created servers.
private static void OnReceivedMessage(object? sender, CommunicatorEventArgs e)
{
if (e.Message.TypeContent == typeof(SampleData))
{
Console.WriteLine("Receive object data.");
SampleData data = e.Message.Get<SampleData>();
Console.WriteLine($"ID : {data.Id}");
Console.WriteLine($"Name : {data.Name}");
Console.WriteLine($"Description : {data.Description}");
Console.WriteLine("----------------------------");
Console.WriteLine(e.Message.Source);
Console.WriteLine(e.Message.Content);
Console.WriteLine(e.Message.SendedDts);
Console.WriteLine(e.Message.ReceivedDts);
}
Console.WriteLine();
}
- Find a server directly in Communicator.
ICommunicator communicator = new Communicator();
communicator.CreateServer("App1");
IServer server = communicator["App1"]; // --> returns the server component named 'App1'
- Set one or more action method(s) based on template
Action<Message>per individual Server.
ICommunicator communicator = new Communicator();
communicator.CreateServer("App1");
communicator.CreateServer("App2");
communicator["App1"].SetOperation((x) => { Console.WriteLine(x.Content); });
communicator["App1"].SetOperation((x) => { Console.WriteLine("End of operations for APP1."); });
communicator["App2"].SetOperation((x) => { Console.WriteLine("Hello World"); });
- Send data to application n°2 or n°3 or ...
internal class SampleData
{
public Guid Id { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public SampleData() { }
}
internal class Program
{
static void Main(string[] args)
{
ICommunicator communicator = new Communicator();
SampleData data = new SampleData();
data.Id = Guid.NewGuid();
data.Name = "Foo";
data.Description = "Bar";
communicator.SendTo("Foo_Server", data);
// for asynchronously:
communicator.SendToAsync("Foo_Server", data);
Console.ReadLine();
}
}
- Send data to multiple application's.
internal class SampleData
{
public Guid Id { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public SampleData() { }
}
internal class Program
{
static void Main(string[] args)
{
ICommunicator communicator = new Communicator();
SampleData data = new SampleData();
data.Id = Guid.NewGuid();
data.Name = "Foo";
data.Description = "Bar";
string[] apps = { "Foo", "Bar", "FooBar" };
communicator.SendTo(apps, data);
// for asynchronously:
communicator.SendToAsync(apps, data);
Console.ReadLine();
}
}
- List your servers created in the app.
internal class Program
{
static void Main(string[] args)
{
ICommunicator communicator = new Communicator();
string[] servers = communicator.Servers;
Console.ReadLine();
}
}
- Delete the server if necessary.
internal class Program
{
static void Main(string[] args)
{
ICommunicator communicator = new Communicator();
communicator.RemoveServer("Foo_Server");
Console.ReadLine();
}
}
- Or... use according to your ideas...
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 is compatible. net5.0-windows was computed. net5.0-windows7.0 is compatible. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net6.0-windows7.0 is compatible. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net5.0
- Newtonsoft.Json (>= 13.0.1)
-
net5.0-windows7.0
- Newtonsoft.Json (>= 13.0.1)
-
net6.0
- Newtonsoft.Json (>= 13.0.1)
-
net6.0-windows7.0
- Newtonsoft.Json (>= 13.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|
none