Giriş
(3)

c# object reference not set to an instance of an object

sozluktekullanmakistemedigimnickti
c# üzerinde basit bir mysql connection string'de aldığım "object reference not set to an instance of an object" (nesne başvurusu bir nesnenin örneğine ayarlanmadı) hatasıyla başım belada.yardımı sonrası dua almak isteyen dostlar bi' dönüverirse sevindirir fakiri.Not: mysql connection ve sorgusunda s
c# üzerinde basit bir mysql connection string'de aldığım
"object reference not set to an instance of an object" (nesne başvurusu bir nesnenin örneğine ayarlanmadı) hatasıyla başım belada.

yardımı sonrası dua almak isteyen dostlar bi' dönüverirse sevindirir fakiri.

Not: mysql connection ve sorgusunda sorununun olmadığı teyit edildi. tek bir değer için veri dönüyor ancak object olarak tanımlanan array atamalarda patlıyorum.



using System;
using System.Collections;
using System.Data;
using OutSystems.HubEdition.RuntimePlatform;
using OutSystems.RuntimePublic.Db;
using MySql.Data.MySqlClient;
using System.Collections.Generic;
using MySql.Data.Entity;
namespace OutSystems.Nssosticket_rapor_2
{
public class Cssosticket_rapor_2 : Issosticket_rapor_2
{
public void Mssaksiyon(string ssIP, string ssUserName, string ssData, string ssPassword, out RLBaglantimRecordList ssTicket_No_A1)
{
ssTicket_No_A1 = new RLBaglantimRecordList();
MySqlConnectionStringBuilder conn_string = new MySqlConnectionStringBuilder();
conn_string.Server = "***";
conn_string.UserID = "***";
conn_string.Password = "***";
conn_string.Database = "***";

MySqlConnection conn = new MySqlConnection(conn_string.ToString());
MySqlCommand command = conn.CreateCommand();
command.CommandText = ("SELECT Talep_Numarasi, Konu FROM osticket.sigmakare WHERE Durumu='Bekliyor' AND Talep_Numarasi='396551'");
try
{
conn.Open();
MySqlDataReader reader = command.ExecuteReader();
List<string> recList = new List<string>();
while (reader.Read())
{
RCBaglantimRecord obj = new RCBaglantimRecord();
// if (String.IsNullOrEmpty(reader["Talep_Numarasi"].ToString())) // fff 1
obj.ssENBaglantim.ssTicket_No_B = reader["Talep_Numarasi"].ToString(); //d2
obj.ssENBaglantim.ssTicket_Subject_B = reader["Konu"].ToString();
ssTicket_No_A1.Add(obj); //d2
}

}

catch (Exception ex)
{
RCBaglantimRecord obj = new RCBaglantimRecord();
Console.WriteLine(ex.Message);
obj.ssENBaglantim.ssSituation_B = ex.Message;

}

}
}
}
0
sozluktekullanmakistemedigimnickti
(14.02.18)
Debug edebiliyor musun? Hangi satırda hata alıyor.

Bir de new RCBaglantimRecord() yaptığında ssENBaglantim objesini de oluşturuyor musun? Yani RCBaglantimRecord constructor ında ssENBaglantim = new SenBaglanti (salladım) gibi bir şey var mı?

obj.ssENBaglantim null ise aşağıdaki satırda hata alması normal.

obj.ssENBaglantim.ssTicket_No_B = reader["Talep_Numarasi"].ToString(); //d2
0
inheritance
(14.02.18)
Debug yapmaya uğraşıyorum, yeni form ekleyerek deniyorum ama debug sonu; entities'de Situtaion alanında bu hatayı veriyor. Hatayı verdiği yer:


if ((_ssSituation_B!=value) || OptimizedAttributes[3]) {
ChangedAttributes[3] = true;
_ssSituation_B = value;


Benim tahminim, ilk gönderdiğim connection ekranında, obje tanımıyla alakalı olabileceği.
Yani obje tanımın açılıp atanması kısmında bir şeyleri atlıyorum sanki:

RCBaglantimRecord obj = new RCBaglantimRecord();
// if (String.IsNullOrEmpty(reader["Talep_Numarasi"].ToString())) // fff 1
obj.ssENBaglantim.ssTicket_No_B = reader["Talep_Numarasi"].ToString(); //d2
obj.ssENBaglantim.ssTicket_Subject_B = reader["Konu"].ToString();
ssTicket_No_A1.Add(obj); //d2
0
🌸sozluktekullanmakistemedigimnickti
(14.02.18)
kodun genel akışında bir sorun göremiyorum ben. bu yüzden classların göremediğimiz tarafında bir sorun olduğunu düşünüyorum.

inheritance'a katılıyorum, RCBaglantimRecord constructorında ssENBaglantim null bırakılmış olabilir. obj.ssENBaglantimın null olmadığını kontrol ettin mi?

bir diğer olasılık ise, propertylerin beklemediğin bir field'a erişmesi olabilir.(fail aldığın yerdeki value kullanımı property kodu gibi duruyor)
0
rgone
(15.02.18)
buraya yazılanların hakları Sir Anthony Hopkins'e aittir.
yazan eden compumaster, ilgilenen eden fader
modere edenler basond, compumaster, fraise, kibritsuyu, rakicandir
bu sitede yazılanların hiçbiri doğru değildir. site içeriği küçükler için sakıncalı olabilir. yazılardan yazarları sorumludur. kaynak göstermeden alıntılanamaz. devlet tarafından atanmış bir kurumun internet üzerinde kimin hangi bilgiye ulaşıp ulaşamayacağına karar vermesi insan haklarına aykırıdır. web siteleri kullanıcıların istekleri doğrultusunda bağlandıkları yerlerdir. kullanıcılar isterlerse bir web sitesine bağlanmayabilirler. bu güçleri ve imkanları mevcuttur. bir kullanıcı bir siteye bağlanmak istiyorsa bu onun tercihi ve hakkıdır. bağlanmak istemiyorsa bu yine onun tercihi ve hakkıdır. halkın kendisine hizmet etmesi için görevlendirdiği kurumlar hadlerini aşıp halka neye ulaşıp ulaşmayacağını bilmeyen cahil cühela muamelesi edemezler. ebeveynlerin çocuklarını sakıncalı içeriklerden koruması için çok sayıda bedava ve ücretli yazılım mevcuttur. bu yazılımlar bir web tarayıcısını kullanmaktan daha karmaşık teknik bilgi gerektirmemektedir. devletin milletini küçük düşürmesi ve ebleh yerine koyması yasaktır.