Как найти имя объекта данных столбца, который включает члены столбца - PullRequest
0 голосов
/ 14 февраля 2012

Я пытаюсь вставить запись, используя ссылку на SQL.Я знаю, что мне нужно создать новый объект, который включает данные столбца для отправки.Но как мне определить это имя объекта?

Я успешно могу удалить запись, но не могу вставить запись, так как не могу создать новый объект "ученик"

Здесьмой код:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Student.Models;

namespace Student.Controllers
{
    public class StudentController : Controller
    {
        //
        // GET: /Student/

        private IStudentRepository  _repository;

        public StudentController() : this(new StudentRepository())
        {
        }

        public StudentController(IStudentRepository repository)
        {
            _repository = repository;
        }

        public ActionResult Index()
        {    
             return View(_repository.ListAll());
        }


        public ActionResult RemoveStudent(int id)
        {

            StudentDataContext student= new StudentDataContext();

            var std = student.Students.Single(h => h.StudentID == id);
            student.Students.DeleteOnSubmit(std);
            student.SubmitChanges();
            return Content("Student " + id + " Removed");
        }

        public ActionResult AddStudent(int studentID)
        {
            StudentDataContext student= new StudentDataContext();

            var std = student.Students.FirstOrDefault(h => h.StudentID == studentID);

            if (std == null || std.StudentID < 1)
            {

            student.Students.InsertOnSubmit(std);
            student.SubmitChanges();
            return Content("Student " + id + " Added");

            }

            return Content("Student  " + studentID + " is already present");
        }

Заранее спасибо

1 Ответ

1 голос
/ 14 февраля 2012

Вам нужно создать new Student() - или как там у вас имя вашего объекта.

if (std == null || std.StudentID < 1)
{
    // create a new student before trying to insert
    std = new Student() { StudentID = id };

    student.Students.InsertOnSubmit(std);
    student.SubmitChanges();
    return Content("Student " + id + " Added");
}

Из моего чтения ваш вопрос

Но как мне определитьимя этого объекта?

т.е. "как называется класс?"

Это можно увидеть в конструкторе LINQ-to-SQL.Имя класса совпадает с именем объекта в конструкторе, который описывает таблицу. имя по умолчанию для класса совпадает с именем таблицы - но если оно конфликтует с другим классом с таким именем, оно будет переименовано в Student1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...