مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

iran

عضویت از 1394/01/31

تبدیل کدهای ado.net به linq در SignalR

  • یکشنبه 16 اردیبهشت 1397
  • 16:33
تشکر میکنم

سلام
من کدهای زیر را نوشته ام

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Web.Script.Serialization;
using SignalR_Datbase.Hubs;

namespace SignalR_Datbase.Models
{
    public class NotificationService
    {
        private static readonly string connString =
            @"data source=test;initial catalog=InventoryManagement;integrated security=True;MultipleActiveResultSets=True;";

        internal static SqlCommand commend = null;
        internal static SqlDependency dependency = null;

        /// <summary>
        /// Get the Notifications.
        /// </summary>
        /// <returns></returns>
        public static string GetNotification()
        {
            try
            {
                var message=new List<tbl_Notifications>();
                using (var connection=new SqlConnection(connString))
                {
                    connection.Open();
                    using (commend=new SqlCommand(@"select [NotificationId], [Status], [Message], [ExtraColumn] from [dbo].[tbl_Notifications] Where [Status]=2", connection))
                    {
                        commend.Notification = null;
                        if (dependency==null)
                        {
                            dependency=new SqlDependency(commend);
                            dependency.OnChange+=new OnChangeEventHandler(dependency_OnChange);
                        }

                        if (connection.State==ConnectionState.Closed)
                       connection.Open();

                        var reader = commend.ExecuteReader();
                        while (reader.Read())
                        {
                            message.Add(item:new tbl_Notifications
                            {
                                NotificationId = (int)reader["NotificationId"],
                                Status = reader["Status"]!=DBNull.Value?(string)reader["Status"]:"",
                                Message = reader["Message"] != DBNull.Value ? (string)reader["Message"] : "",
                                ExtraColumn = reader["ExtraColumn"] != DBNull.Value ? (string)reader["ExtraColumn"] : "",
                            });
                        }
                    }
                }

                var jsonSerialiser = new JavaScriptSerializer();
                var json = jsonSerialiser.Serialize(message);
                return json;
            }
            catch (Exception ex)
            {
                return null;
            }
        }

        private static void dependency_OnChange(object sender, SqlNotificationEventArgs e)
        {
            if (dependency!=null)
            {
                dependency.OnChange -= dependency_OnChange;
                dependency = null;
            }

            if (e.Type==SqlNotificationType.Change)
            {
                MyNewHub.Send();
            }
        }
    }
}

آیا می توانم این کدها را تبدیل به linq کنم یا باید بهمین صورت Ado.net بنویسم
باتشکر

پاسخ های این پرسش

تعداد پاسخ ها : 6 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • یکشنبه 16 اردیبهشت 1397
  • 16:47

از ابزاری با نام Linqer استفاه کنید

سرچ کنید و دانلود کنید

کاربر سایت

iran

عضویت از 1394/01/31

  • یکشنبه 16 اردیبهشت 1397
  • 17:49

سلام

مهندس 

دربخش SqlDependency گیر کرده ام نمی توانم تبدیلش کنم 

میشه راهنمای کنید 

باتشکر

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • دوشنبه 17 اردیبهشت 1397
  • 08:34

در سایتش مستندات رو باید مطالعه کنید .

کار کردن باهاش بسیار ساده است دوست من .

کاربر سایت

AmirGhasemi

عضویت از 1392/02/25

  • دوشنبه 17 اردیبهشت 1397
  • 10:27
سلام این چه ربطی به signalR دارهههه؟؟؟؟؟
کاربر سایت

iran

عضویت از 1394/01/31

  • دوشنبه 17 اردیبهشت 1397
  • 14:19

سلام

مهندس مدائنی من نتونستم 

میشه باکد راهنمای بفرمایید که کدمورد نظر را به linq بنویسم مخصوص قسمتSqlDependency

باتشکر

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • دوشنبه 17 اردیبهشت 1397
  • 14:36

این لینک رو ببینید

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)