Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private readonly LContext _context; //to take data from db
- private static Channel<string> s_channel = Channel.CreateUnbounded<string>();
- public string TakeFromDBMethod()
- {
- string DBvalue= _context.Logs.OrderByDescending(s => s.OccurTime).FirstOrDefault().Flag.ToString();//Wanna take Flag column from added rows
- return DBvalue;
- }
- public async Task<ChannelReader<string>> StreamMessage()
- {
- await s_channel.Writer.WriteAsync(DBvalue());
- return s_channel.Reader;
- }
- public async Task UpdateMessage(string message)
- {
- await s_channel.Writer.WriteAsync(message);
- }
- var connection = new signalR.HubConnectionBuilder()
- .withUrl("/chatHub")
- .build();
- document.getElementById("streamButton").addEventListener("click", (event) => __awaiter(this, void 0, void 0, function* () {
- try {
- connection.stream("StreamMessage")
- .subscribe({
- next: (item) => {
- var li = document.createElement("li");
- li.textContent = item;
- document.getElementById("messagesList").innerHTML = item;
- },
- complete: () => {
- var li = document.createElement("li");
- li.textContent = "Stream completed";
- document.getElementById("messagesList").appendChild(li);
- },
- error: (err) => {
- var li = document.createElement("li");
- li.textContent = err;
- document.getElementById("messagesList").appendChild(li);
- },
- });
- }
- @page
- <div class="container">
- <div class="row"> </div>
- <div class="row">
- <div class="col-6"> </div>
- <div class="col-6">
- <input type="button" id="streamButton" value="Start Streaming" />
- </div>
- </div>
- <div class="row">
- <div class="col-12">
- <hr />
- </div>
- </div>
- <div class="row">
- <div class="col-6"> </div>
- <div class="col-6">
- <ul id="messagesList"></ul>
- </div>
- </div>
- </div>
- <script src="~/lib/signalr/dist/browser/signalr.js"></script>
- <script src="~/lib/signalr/dist/browser/signalr.min.js"></script>
- <script src="~/js/Chat.js"></script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement