2016-05-25 27 views
0

このコードは "Identifier expected"というメッセージを表示します。親切に私を助けて、識別子が必要です。

using System; 
using MemberMgr.Models; 
namespace MemberMgr.Logic 
{ 
    public class AddUser 
    { 
     public bool AddUsr 
     (
      string UserName, 
      string PrefUserName, 
      string OtherNames, 
      string MaritalStatus, 
      string SpouseName, 
      DateTime BirthDate, 
      string Profession, 
      string PostalAddress, 
      string ResAddress, 
      string Email, 
      string PhoneNumber, 
      string Church, 
      string Gender, 
      string HomeTown, 
      string Area, 
      string City, 
      string Region, 
      string Country, 
      bool Approved, 
      string ApprovedBy, 
      DateTime DateCreated, 
      string RoleName, 
      string Photos 
     ) 
     { 
      var myUser = new IdentityModels(); 
      myUser.UserName = UserName; 
      myUser.PrefUserName = PrefUserName; 
      myUser.OtherNames = OtherNames; 
      myUser.MaritalStatus = MaritalStatus; 
      myUser.SpouseName = SpouseName; 
      myUser.BirthDate = BirthDate; 
      myUser.Profession = Profession; 
      myUser.PostalAddress = PostalAddress; 
      myUser.ResAddress = ResAddress; 
      myUser.Email = Email; 
      myUser.PhoneNumber = PhoneNumber; 
      myUser.Church = Church; 
      myUser.Gender = Gender; 
      myUser.HomeTown = HomeTown; 
      myUser.Area = Area; 
      myUser.City = City; 
      myUser.Region = Region; 
      myUser.Country = Country; 
      myUser.Approved = Approved; 
      myUser.ApprovedBy = ApprovedBy; 
      myUser.DateCreated = DateCreated; 
      myUser.RoleName = RoleName; 
      myUser.Photos = Photos; 

      using (IdentityUserContext _db = new IdentityUserContext()) 
      { 
       // Add User data to DB. 
       _db.users.Add(myUser); 
       _db.SaveChanges(); 
      } 
      // Success. 
      return true; 
     } 

    } 
} 

そこに私のシニアプログラマー:これはクラスコード自体である

// Add user data to DB. 
AddUser myUser = new AddUser(); 
bool addSuccess = myUser.AddUsr 
(
    UserName.Text, 
    PrefUserName.Text, 
    OtherNames.Text, 
    MaritalStatus.SelectedValue, 
    SpouseName.Text, 
    **BirthDate.Text,** 
    Profession.Text, 
    PostalAddress.Text, 
    ResAddress.Text, 
    Email.Text, 
    PhoneNumber.Text, 
    Church.Text, 
    Gender.SelectedValue, 
    HomeTown.Text, 
    Area.Text, 
    City.Text, 
    Region.Text, 
    Country.Text, 
    Approved.Checked, 
    ApprovedBy.Text, 
    **DateCreated.Text,** 
    RoleName.SelectedValue, 
    Photos.FileName 
); 

:私は、問題のある行(BirthDate.Text)を強調しています。私はTextBoxesが文字列データ型を受け入れ、その内容がTextでなければならないことを知っています。私はここに何かを逃していますか

+1

に渡している文字列とは対照的に、DateTimeオブジェクトを受信することを期待あなたDateCreatedプロパティに適用されます。彼は、あなたが使用することができ、中に渡されるフォーマットそれが問題のラインであることは分かりますか?私はそれがどのようにコンパイラエラーの原因になるかわかりません。テキスト値を 'DateTime'に変換する必要がある場所を知ることができましたが、それは_different_コンパイラエラーです。 –

答えて

0

あなたDateCreatedBirthDateはタイプDateTimeBirthDate.Textのものであり、DateCreated.Textはタイプstringです。 stringDateTimeに変換する必要があります。 :

DateTime.Parse(DateCreated.Text) 

またはフォーマットが知られている場合:文字列とは対照的に、あなたのBirthDateプロパティが実際にDateTimeオブジェクトとして定義され

DateTime.ParseExact(DateCreated.Text, "dd.MM.yyyy", 
    System.Globalization.CultureInfo.InvariantCulture); 
+0

こんにちはManfred Radlwimmer、私はこのようにあなたの答えを試みました:DateCreated。(DateTime.ParseExact(DateCreated.Text、 "dd.MM.yyyy"、System.Globalization.CultureInfo.InvariantCulture))、 "エラー。コンパイラは、犯人としての最初のかっこ(DateTime.P ...)を指します。 –

+0

こんにちはManfred Radlwimmer、私は正しく答えを最初に実装していませんでした。実際にエラーメッセージがクリアされました。何百万回もありがとう。 –

+0

@MusahYandarうれしいです。あなたの質問に答えた場合は、「回答を受け入れる」ボタン(質問の左側にあるチェックマーク)を使用して、解決された質問に印を付けてください。 –

0

ので、あなたが明示的にあなたから日付を解析する必要があります。

bool addSuccess = myUser.AddUsr 
(
    /* Omitted for brevity */ 
    DateTime.Parse(BirthDate.Text), 
    /* Omitted for brevity */ 
); 

または明示的にトンを知っている場合:予想通り、これはDateTime.Parse()DateTime.ParseExact()方法を介して動作させるためのTextBox

// You can define a formatting string like "MM/dd/yyyy" that cooresponds to the format that 
// you know your TextBox will use 
DateTime.ParseExact(BirthDate.Text,"{format-string}",null); 

同じ問題がまたあなたが現在どのように

+0

こんにちはリオンウィリアムズ、ありがとう。エラーメッセージはクリアされます。 –

関連する問題