یادگیری C# (بررسی سئوالات و مشکلات)

SHRP

همکار مدیر تالار مهندسی کامپیوتر متخصص برنامه نوی
کاربر ممتاز
سلااااااااااااااااام به همه دوستان عزیز
من اگه بخام یه برنامه اثر انگشت بنویسم، چطوری باید اینکارو بکنم؟
شنیدم که خود دستگاه های اثر انگشت، sdk دارن برای برنامه نویس ها.
ولی خب ایا این sdk ، دفترچه راهنما هم داره؟
یا اینکه خودمون باید با آزمون و خطا بهش برسیم و راه استفاده از توابعش رو پیدا کنیم؟
دو ساختار داریم. یا از دی ال ال مخصوص یا اس دی کای خودشون باید استفاده بشه که معمولا شرکت سازنده توی سایت یا سی دی ارایه می ده...یا از ساختارهای استاندارد استفاده می کنن
با استفاده از آزمون و خطا خیلی وقت گیره و ممکنه اصلا به نتیجه مناسب نرسه...
اگر قصد داری یک آرایه رو کپسوله کنید توی کلاس تعریفش کنید و متدهای دریافت و ارسالش رو بنویسید..کار خاصی نیاز نیست
 

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
سلام به همه مهندسین عزیز
راستش من نمیدونم یه مدت هست که کنار فایل کلاسهام(مدلهام یا ویومدلهام) یه سری فایل با پسوند TMP. ایجاد شده.
نمیدونم پاکشون کنم یا نه.
میگید چکار کنم؟
 

SHRP

همکار مدیر تالار مهندسی کامپیوتر متخصص برنامه نوی
کاربر ممتاز
سلام به همه مهندسین عزیز
راستش من نمیدونم یه مدت هست که کنار فایل کلاسهام(مدلهام یا ویومدلهام) یه سری فایل با پسوند TMP. ایجاد شده.
نمیدونم پاکشون کنم یا نه.
میگید چکار کنم؟
معمولا فایلهای موقتی هستن و پاک کردنشون ضرری نداره ولی برای اطمینان از این موضوع یه فولدر بساز به اسم دلخواه و اونا رو کپی کن اونجا اگر دیدی مشکلی در ادامه کار پیش نیومد یعنی پاک کردنشون بی ضرره
 

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
1-ببخشید آدرس سرور دیتابیس در هنگام اجرا در ارتباط دهی با استفاده از EntityFramework چطوری امکان پذیره؟ آخه ممکنه هر دفعه آی پی سرور عوض شه.

2- در گزارش گیری با stimulsoft ، چطوری در برنامه م تعیین کنم که رکورد های جدول رو ، با یه سری شرط برام گزارش بگیر. همه رو نمیخام
 

N O X

عضو جدید
کاربر ممتاز
1-ببخشید آدرس سرور دیتابیس در هنگام اجرا در ارتباط دهی با استفاده از EntityFramework چطوری امکان پذیره؟ آخه ممکنه هر دفعه آی پی سرور عوض شه.

2- در گزارش گیری با stimulsoft ، چطوری در برنامه م تعیین کنم که رکورد های جدول رو ، با یه سری شرط برام گزارش بگیر. همه رو نمیخام


برای قسمت دوم سوالتون
من خودم از پروسیجر (procedure) استفاده میکردم .
 

N O X

عضو جدید
کاربر ممتاز
میشه بیشتر توضیح بدید
منظورم کد هست

شما باید نحوه ایجاد پروسیجر در اس کیو ال رو یاد بگیرید .
من ی دونه از پروسیجرهایی که داشتم رو براتون میذارم ببینید.
این ی پروسیجر سادس . من میخواستم تو گزارشگیریم فقط اون رکوردهایی که در یک تاریخ خاصی وارد کردم رو نشون بده .


PHP:
USE [Taxi]
GO
ALTER procedure [dbo].[SP_DailyReport] 
@Date datetime2
As
Begin
Select Travel.Code,Travel.CustomerCode,travel.[Date] ,Travel.DriverCode
,Travel.StartTime,Travel.EndTime,Travel.PathCode,
Path.Name,Travel.Price
,case Travel.TravelTypeCode
when 1 then 'ثابت'
when 2 then 'رفت و برگشتی'
when 3 then 'درون شهری'
when 4 then 'برون شهری'
end as 'TravelTypeCode'

from [Path] JOIN Travel ON  [Path].Code = Travel.PathCode
where Travel.Cancel=0 AND  travel.[Date] =@Date
end
 

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
شما باید نحوه ایجاد پروسیجر در اس کیو ال رو یاد بگیرید .
من ی دونه از پروسیجرهایی که داشتم رو براتون میذارم ببینید.
این ی پروسیجر سادس . من میخواستم تو گزارشگیریم فقط اون رکوردهایی که در یک تاریخ خاصی وارد کردم رو نشون بده .


PHP:
USE [Taxi]
GO
ALTER procedure [dbo].[SP_DailyReport] 
@Date datetime2
As
Begin
Select Travel.Code,Travel.CustomerCode,travel.[Date] ,Travel.DriverCode
,Travel.StartTime,Travel.EndTime,Travel.PathCode,
Path.Name,Travel.Price
,case Travel.TravelTypeCode
when 1 then 'ثابت'
when 2 then 'رفت و برگشتی'
when 3 then 'درون شهری'
when 4 then 'برون شهری'
end as 'TravelTypeCode'

from [Path] JOIN Travel ON  [Path].Code = Travel.PathCode
where Travel.Cancel=0 AND  travel.[Date] =@Date
end

خیلی ممنون
یعنی در استیمول، باید به جای اینکه به جدولی در دیتابیس ارتباط برقرار کنم، باید به یه پروسیجر ارتباط برقرار کنم؟
 

SHRP

همکار مدیر تالار مهندسی کامپیوتر متخصص برنامه نوی
کاربر ممتاز
1-ببخشید آدرس سرور دیتابیس در هنگام اجرا در ارتباط دهی با استفاده از EntityFramework چطوری امکان پذیره؟ آخه ممکنه هر دفعه آی پی سرور عوض شه.

2- در گزارش گیری با stimulsoft ، چطوری در برنامه م تعیین کنم که رکورد های جدول رو ، با یه سری شرط برام گزارش بگیر. همه رو نمیخام
1.به جای آی پی از اسم کامپیوتر استفاده کنید تا دیگه مشکلی نداشته باشید
2. از View هم می تونید استفاده کنید و به جای جدول اونو فراخوانی کنید با شرطهایی که در زمان اجرا نیاز دارید..شما باید در زمان اجرا فرمان سا کیو ال رو بسازید و با اون فراخوانی کنید...روش بهتر همون پروسیجر نویسی است
 

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
سلام به دوستان همیشگی خودم
راستش من اگه بخام یه فایل رو در یک سیستم دیگر که به سیستم خودم وصل شده و یه جورایی نقش سرور رو داره، پیدا کنم، چطوری میتونم وصل شم بهش؟!

میخام مثلا عکسایی که در یک درایو در سرور ذخیره شده رو پیدا کنم . مشکل اینجاست که اون عکس ها، در داخل دیتابیس ذخیره نشدن که بخام با entity وصل شم.

یه سوال دیگه ایا، این کاری که میخام بکنم، همون تکنولوژی wcf است؟!
ممنون میشم کمک کنید. تشکر
 

SHRP

همکار مدیر تالار مهندسی کامپیوتر متخصص برنامه نوی
کاربر ممتاز
سلام به دوستان همیشگی خودم
راستش من اگه بخام یه فایل رو در یک سیستم دیگر که به سیستم خودم وصل شده و یه جورایی نقش سرور رو داره، پیدا کنم، چطوری میتونم وصل شم بهش؟!

میخام مثلا عکسایی که در یک درایو در سرور ذخیره شده رو پیدا کنم . مشکل اینجاست که اون عکس ها، در داخل دیتابیس ذخیره نشدن که بخام با entity وصل شم.

یه سوال دیگه ایا، این کاری که میخام بکنم، همون تکنولوژی wcf است؟!
ممنون میشم کمک کنید. تشکر
برای دسترسی به فایلهای یه سرور دیگه یا باید از پروتکل اف تی پی اسفتاده کنید که معمولا ربطی به کار نداره یا باید اجازه دسترسی به دریاو یا فولدر مورد نظر رو داشته باشید و با استفاده از فرمانهای شبکه و نام کاربری و رمز مورد نظر اقدام به اینکار کنید...که این روش هم محدودیتهایی داره
بهترین راه اینه که یکبار برای همیشه عکسها رو توی دیتابیس بذارید و خودتون رو از محدودیتهای فایلینگ رها کنید
 

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
برای دسترسی به فایلهای یه سرور دیگه یا باید از پروتکل اف تی پی اسفتاده کنید که معمولا ربطی به کار نداره یا باید اجازه دسترسی به دریاو یا فولدر مورد نظر رو داشته باشید و با استفاده از فرمانهای شبکه و نام کاربری و رمز مورد نظر اقدام به اینکار کنید...که این روش هم محدودیتهایی داره
بهترین راه اینه که یکبار برای همیشه عکسها رو توی دیتابیس بذارید و خودتون رو از محدودیتهای فایلینگ رها کنید

ممنون.
من این جواب رو در سایت برنامه نویس دیدم. نظرتون درباره این روش چیه:
قاعدتا به streamreader اسم و مسیر فایل بصورت یک url وب بدید مشکل حل خواهد شد و بقیه برنامه مانند خواندن فایل لوکال خواهد بود

 

SHRP

همکار مدیر تالار مهندسی کامپیوتر متخصص برنامه نوی
کاربر ممتاز
ممنون.
من این جواب رو در سایت برنامه نویس دیدم. نظرتون درباره این روش چیه:
قاعدتا به streamreader اسم و مسیر فایل بصورت یک url وب بدید مشکل حل خواهد شد و بقیه برنامه مانند خواندن فایل لوکال خواهد بود

در صورتی که شما تحت وب کار می کنید و اپلیکیشن نیست این روش کاربرد داره
 

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
وقت همگی بخیر باشه
یه سوال:
connection string مربوط به دیتابیس که با روش entityFramework ساخته میشه، در یک فایل config کنار فایل اجرایی برنامه قرار نمیگیره؟!
خب یوزر نیم و پسورد هم که همونجا ست.
این امنیت رو خیلی پایین میاره که.
چطوری میشه امنیت این قسمت رو تقویت کرد؟
 

کربلایی

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

An unhandled exception of type 'System.DllNotFoundException' occurred in Galget.exe

Additional information: Unable to load DLL 'FKAttend.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)



این پیام اعصابمو خورد کرده، موقع فراخوانی یک متد از فایل FKAttend.dll که همه جا کپی کردم، سیستم 32، دایرکتوری ریشه برنامه، پوشه دیباگ و بین و ....
کامپایلر رو هم 32 بیت تنظیم کردم ولی جواب نداد.

همچنان فایل یافت نشد

کسی راه حلی بلده آیا؟؟
 

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
سلام دوستان

An unhandled exception of type 'System.DllNotFoundException' occurred in Galget.exe

Additional information: Unable to load DLL 'FKAttend.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)



این پیام اعصابمو خورد کرده، موقع فراخوانی یک متد از فایل FKAttend.dll که همه جا کپی کردم، سیستم 32، دایرکتوری ریشه برنامه، پوشه دیباگ و بین و ....
کامپایلر رو هم 32 بیت تنظیم کردم ولی جواب نداد.

همچنان فایل یافت نشد

کسی راه حلی بلده آیا؟؟

سلام مدیر جان
راستش منم این مشکل رو یه جورایی داشتم.
نمیدونم این dll ای که استفاده میکنی چیه. ولی اونی که من داشتم، میاس سیستم 32 بیتی باشه، و سی دی رو نصب میکردم تا کار میکرد. یعنی صرف کپی کردن dll نمیشد جواب بده. به خاطر همین روی سیستم به جای اینکه کپی کنیم، فایل نصبیش رو نصب کردیم روی سیستم 32 بیتی تا کار کرد برنامه.
sdk مربوط به یه دستگاه اسکن اثر انگشت بود.

لذا بنظرم اگه sdk یا همچین چیزی هست، شما برنامه رو نصب کنید. شاید کار کرد.
آخه فکر کنم موقع نصب، روی رجیستری سیستم یه تغییراتی میده که نتونیم با کپی کردن، فایل رو بفروشیم.
 

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
سلام
ببخشید میشه برام توضیح بدید add و remove در این رویداد نقششون چی هست؟
به عبارت دیگه من با این دو کلمه اشنایی ندارم و نمیدونم برای چه مواقعی این دوتا رو برای رویداد ها مینویسیم

PHP:
 public event EventHandler CanExecuteChanged        {     
       add { CommandManager.RequerySuggested+=value;}           
 remove{ CommandManager.RequerySuggested-=value;}      
  }
 
آخرین ویرایش:

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
سلام به همه دوستان غیر فعال تاپیک

کسی تفاوت بین نوع جنریک "List" و اینترفیس "IList" رو میدونه؟
 

SHRP

همکار مدیر تالار مهندسی کامپیوتر متخصص برنامه نوی
کاربر ممتاز
سلام به همه دوستان غیر فعال تاپیک

کسی تفاوت بین نوع جنریک "List" و اینترفیس "IList" رو میدونه؟
list یک پیاده سازی از رابط iList است در واقع ما داریم با دو مفهوم رابط کاربری و استفاده از یک ساختار صحبت می کنیم
 

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
وقتی مبتدی هستی حرفه ای ها را نقد نکن
وقتی متوسط هستی خود را حرفه ای نبین_
وقتی حرفه ای شدی مبتدی ها را فراموش نکن
وبا متوسط ها بحث نکن_
وقتی مبتدی هستی کپی کن اما به نام خودت منتشر نکن_
وقتی متوسط هستی ایده بگیر اما کپی نکن_
وقتی حرفه ای هستی فقط خلق کن_
وقتی مبتدی هستی بدان که روزی حرفه ای خواهی شد_
وقتی متوسط هستی بدان که نباید در این جایگاه بمانی_
وقتی حرفه ای شدی فراموش نکن روزی مبتدی بودی_
وقتی مبتدی هستی بدان که اکنون هیچ نمی دانی_
وقتی متوسط هستی بدان که هنوز هیچ نمی دانی_
وقتی حرفه ای هستی بدان که هنوز هم هیچ نمی دانی_

کپی شده از http://gameover.blog.ir
 

SHRP

همکار مدیر تالار مهندسی کامپیوتر متخصص برنامه نوی
کاربر ممتاز
وقتی مبتدی هستی حرفه ای ها را نقد نکن
وقتی متوسط هستی خود را حرفه ای نبین_
وقتی حرفه ای شدی مبتدی ها را فراموش نکن
وبا متوسط ها بحث نکن_
وقتی مبتدی هستی کپی کن اما به نام خودت منتشر نکن_
وقتی متوسط هستی ایده بگیر اما کپی نکن_
وقتی حرفه ای هستی فقط خلق کن_
وقتی مبتدی هستی بدان که روزی حرفه ای خواهی شد_
وقتی متوسط هستی بدان که نباید در این جایگاه بمانی_
وقتی حرفه ای شدی فراموش نکن روزی مبتدی بودی_
وقتی مبتدی هستی بدان که اکنون هیچ نمی دانی_
وقتی متوسط هستی بدان که هنوز هیچ نمی دانی_
وقتی حرفه ای هستی بدان که هنوز هم هیچ نمی دانی_

کپی شده از http://gameover.blog.ir
بسیار عالی
 

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
سلام
من یه مشکل عجیب دارم و نمیدونم چی باید در گوگل سرچ کنم

راستش رشته ای که میخام مقدار دهی کنم، آدرس محلی از کامپیوتر هست.
خب طبیعتا باید برای گذاشتن اسلش ها (\) از دوتا استفاده کنم یا یک @ اول رشته بزارم. یعنی اینطوری:

"E:\\progrraming\\project\\csharp project"
یا اینطوری:
"E:\progrraming\project\csharp project"@

و در آخر مقداری که باید در داخل متغیر STRING قرار بگیره این باشه:

"E:\progrraming\project\csharp project"

ولی وقتی اجرا میکنم ، با کمال تعجب ، مقدار متغیر این هست:
"E:\\progrraming\\project\\csharp project"
خیلی برام عجیبه!

چطوری مقدار کنم که آدرس صحیح قرار بگیره؟
 

N O X

عضو جدید
کاربر ممتاز
سلام
این ادرس تو طول برنامه ممکنه تغییر بکنه؟؟
خوب تو string هر چی بذارید همونو بهتون برمیگردونه دیگه
بنظر من شما همون چیزی رو که میخواین بهتون برگردونه رو باید تو string بذارید


اینجا رو هم ی نگاه بندازید
http://www.w3-farsi.com/آدرس-دهی-مطلق-و-نسبی/
 
آخرین ویرایش:

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
سلام
این ادرس تو طول برنامه ممکنه تغییر بکنه؟؟
خوب تو string هر چی بذارید همونو بهتون برمیگردونه دیگه
بنظر من شما همون چیزی رو که میخواین بهتون برگردونه رو باید تو string بذارید


اینجا رو هم ی نگاه بندازید
http://www.w3-farsi.com/آدرس-دهی-مطلق-و-نسبی/


مشکلم حل شد.
تشکر
یه اسمبلی به برنامه اضاف نشده بود . من فکر کردم مشکل از نحوه آدرس دهی هست.
 

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
ببخشید من یه مشکل دارم نمیدونم چرا روی alter خطا میده
توی sqlserver 2008 اجرا میخام بگیرم که بعد توی برنامه م ازش استفاده کنم:

-- ================================================-- Template generated from Template Explorer using:
-- Create Procedure (New Menu).SQL
--
-- Use the Specify Values for Template Parameters
-- command (Ctrl-Shift-M) to fill in the parameter
-- values below.
--
-- This block of comments will not be included in
-- the definition of the procedure.
-- ================================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
Alter PROCEDURE [dbo].[FilterPeopleBetweenDate]

@Date1 Date,
@Date2 Date


AS
BEGIN
SELECT * FROM dbo.ViewPeople


WHERE (Date_Sabt >= @Date1)
AND
(Date_Sabt <= @Date2)


ORDER BY Date_Sabt DESC,ID DESC
END
GO
 

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
مشکلام حل شد ممنون
فقط اگه اینم جواب بدید دیگه ممنون میشم:D

من برای گزارش گیری از linq استفاده میکنم که وقتی کوئری رو گرفت، میفرستم به stimulreport
خب اینطوری فقط یه جدول برام چاپ میکنه
میخام مثلا جمع فلان ستون رو هم بتونم بهش اضاف کنم
باید چکار کنم؟؟
 

masoudalmas

عضو جدید
ذوستان سلام. چطور میتونیم بفهمیم ک نسخه sql express که با ویژوال استذیو نصب میشه چنده ؟
ویژوال استدیو 2015 دارم
 

شهریاری 2

کاربر فعال تالار اسلام و قرآن
کاربر ممتاز
ذوستان سلام. چطور میتونیم بفهمیم ک نسخه sql express که با ویژوال استذیو نصب میشه چنده ؟
ویژوال استدیو 2015 دارم
سلام
من یه بار امتحان کردم، دیدم وقتی نصب میشه، داخل کنترل پنل ویندوز، اون قسمتی که میشه برنامه هارو پاک کرد، اگه بری میبینی یه سری sql نصب شده. یا مثلا C++ رو میگه و یه سری چیزای دیگه
 

SHRP

همکار مدیر تالار مهندسی کامپیوتر متخصص برنامه نوی
کاربر ممتاز
ذوستان سلام. چطور میتونیم بفهمیم ک نسخه sql express که با ویژوال استذیو نصب میشه چنده ؟
ویژوال استدیو 2015 دارم
روش بعدی هم اینه که از طریق فولدری که نصب شده ، شماره نسخه رو ببینید ...معمولا با یه جستجو توی اینترنت می شه راحت فهمید اون شماره چه نسخه ای از اس کیو ال است
 

Similar threads

بالا