الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكله في أسخدما Private Class

بدأه Zaianb في 26 أبريل 2009 · 9 رد · 568 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــه ،،

كيف حالكم؟؟

أخواني لدي مشكله في عمل

private calss

أرجو منكم المساعده في شرح المشكله وحلها

الكود التالي هو البرايفت

 using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;

 namespace privateClass
 {
	 class person
	 {
		 private String FirstName = "";
		 public void setFirstName(String value)
		 {
			 FirstName = value;
		 }
		 public string getFirstName()
		 {
			 return FirstName.ToUpper();
		 }

		 public String SecondName = "";
		 public int Age = 0;
		 public String AcademicYear = "";
		 private string Gender = "";
		 public void setGender(String value)
		 {
			 if (value.Startwith("F"))
			 {
				 Gender = "Famel";
			 }
			 else
				 Gender = "Male";
		 }
		 public string getGender()
		 {
			 return Gender;
		 }

	 }
 }

ثم كود الببلك في كلاس خاص به

 using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;

 namespace privateClass
 {
	 class Program
	 {
		 static void Main(string[] args)
		 {
			 person[] people = new person[3];
			 for (int i = 0; i < people.Length; i++)
			 {
				 people = new person();
			 }
			 people[0].setFirstName = "Hanaan";
			 people[0].SecondName = "Salah";
			 people[0].Age = 20;
			 people[0].AcademicYear = "sophomre";
			 people[0].setGender = "Famel";
			 foreach (person myperson in people)
			 {
				 Console.WriteLine(myperson.setFirstName+""+myperson.SecondName+""+myperson.Age+""+myperson.AcademicYear+""+myperson.setGender);
			 }
		 }
	 }
 }

المشكله هي

cannot assign to 'setFirstName'because it is a 'method group'

cannot assign to 'setGendar'because it is a 'method group'

string doesn't contain adefinition for 'Startwith'and no extension method 'Startwith' accepting a first argument of type 'string' could be found

اذا كان هناك من لديه القدرة على مساعدتي فليتكرم علي بذالك وساكون له من الشاكرين

تحياتي لكم جميعا

#2

السلام عليكــم ورحمـة الله وبركاتــه ،،

بدك تفرق بين الصفة والميثود وذلك لأنك استخدمت الميثود على أنها صفة للكلاس يعني الحل بكل بساطة

people[0].setFirstName( "Hanaan");

وهكذا مع باقي الميثود المستخدمة كصفة

قولوا لا اله الا الله تفلحوا

ومن يبتغي غير الاسلام دينا فلن يقبل منه وهو في الاخرة من الخاسرين- صدق الله العظيم

#3

يعطيك العافيه أخوي

ماقصرت

عدلته وصار كالتالي

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace privateClass
{
	class Program
	{
		static void Main(string[] args)
		{
			person[] people = new person[3];
			for (int i = 0; i < people.Length; i++)
			{
				people = new person();
			}
			people[0].setFirstName("Hanaan");
			people[0].SecondName = "Salah";
			people[0].Age = 20;
			people[0].AcademicYear = "sophomre";
			people[0].setGender("Famel");
			foreach (person myperson in people)
			{
				Console.WriteLine(myperson.setFirstName+myperson.SecondName + myperson.Age + myperson.AcademicYear + myperson.setGender);
			}
		}
	}
}

بس مشكلتي مع

string doesn't contain adefinition for 'Startwith'and no extension method 'Startwith' accepting a first argument of type 'string' could be found

كيف أحلها

وليش توجد مشكله لما استخدم

+ في

Console.WriteLine(myperson.setFirstName+myperson.SecondName + myperson.Age + myperson.AcademicYear + myperson.setGender);
#4

'+'

"+"

FOTA KHader FAR

سوف اتجة الى عالم الويب

thumb_kujviv1t1.jpg

#5

أخي

حاولت مانصحتني به "+"

لكن لم يتغير شيء بل زاد عدد الأخطاء

أشكرك أخي على محاولتك

شكرا لك

انا بنتظار مساعدتكم

#6

السلام عليكــم ورحمـة الله وبركاتــه

بالنسبه للخطا المتعلق ب string doesn't contain adefinition for 'Startwith'and no extension method 'Startwith' accepting a first argument of type 'string' could be found

يجب ان تستعملي StartsWith وليس Startwith

اما بالنسبه لل + فان سبب الخطا هو ان هنالك المتغير age الذي هو نوع int اي عليك تحويله الى string

اي

myperson.Age.ToString()

Web Development
Imad M.Khatib
Asp.net , Ajax , MSSQL , VB.Net , C#.Net , Xml , DomHtml , JQuery , JavaScript , Json , LINQ

imad.khatib@hotmail.com

#7

أشكرك أخي

الله يعطيك العافيه

لقد قمت بما نصحتني به

لكن المشكله لازالت موجوده

foreach (person myperson in people)
			{
				Console.WriteLine(myperson.setFirstName + myperson.SecondName + myperson.Age.ToString() + myperson.AcademicYear + myperson.setGender);
			}

الخطأ يقول:

operator '+' cannot be applies to operands ot type 'method group'and 'string'

بأنتظار مساعدتكم

#8

اختي العزيزه عندك الكثير من الاخطاء في setFirstName و setGender

ايضا عليك الانتباه الى انه هنالك فرق بين string و String

سارسل لك بعد قليل تصحيح لكل شي

Web Development
Imad M.Khatib
Asp.net , Ajax , MSSQL , VB.Net , C#.Net , Xml , DomHtml , JQuery , JavaScript , Json , LINQ

imad.khatib@hotmail.com

#9

تفضلي


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace privateClass
{
class Program
{
static void Main(string[] args)
{
person[] people = new person[3];
for (int i = 0; i < people.Length; i++)
{
people = new person();
}
people[0].FirstName="Hannan";
people[0].second_name = "Salah";
people[0].Age = 20;
people[0].academic_year = "sophomre";
people[0].Gender = "Female";

people[1].FirstName = "Imad";
people[1].second_name = "Khatib";
people[1].Age = 28;
people[1].academic_year = "sophomre";
people[1].Gender = "Male";

people[2].FirstName = "Han";
people[2].second_name = "Sa";
people[2].Age = 20;
people[2].academic_year = "sopho";
people[2].Gender = "Female";
foreach (person myperson in people)
{
Console.WriteLine(myperson.FirstName.ToString() + " " + myperson.second_name + " " + myperson.Age.ToString() + " " + myperson.academic_year + " " + myperson.Gender);
}
Console.ReadLine();
}
}
}


using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace privateClass
{
class person
{
private string first_name = "";
public string second_name = "";
public int Age = 0;
public string academic_year = "";
private string gender = "";

public string FirstName
{
get { return first_name.ToUpper(); }
set { first_name = value; }
}



public string Gender
{
get { return gender; }
set
{
if (value.StartsWith("F"))
{
gender = "Female";
}
else
{
gender = "Male";
}
}
}
}
}
using System;

Web Development
Imad M.Khatib
Asp.net , Ajax , MSSQL , VB.Net , C#.Net , Xml , DomHtml , JQuery , JavaScript , Json , LINQ

imad.khatib@hotmail.com

#10

السلام عليكــم ورحمـة الله وبركاتــه ،،

شكراً لك اخي الكريم

الله يعطيك العافيه

قارنت بين حلك وحلي

وعرفت اخطائي

مره شكرا

الله يعطيكم العافيه جميعا

ماقصرتوا

مواضيع مشابهة