Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ForeignKey not being recognised in VS2012 RC

after a lot of help yesterday, I came up against a known error in asp.net4 beta - I upgraded to VS2012 RC Express (4.5), and now VS is reporting two errors in my model, which were ok previously:

"The type or namespace name 'ForeignKeyAttribute' could not be found (are you missing a using directive or an assembly reference?)"

"The type or namespace name 'ForeignKey' could not be found (are you missing a using directive or an assembly reference?)"

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using System.Data.Entity.ModelConfiguration.Conventions;
using System.Data.Entity;

namespace MvcApplication6.Models
{
    public class tblRental
    {
        [Key()]
            public int rental_id { get; set; }
        public int room_id { get; set; }
        public DateTime check_in { get; set; }
        public DateTime check_out { get; set; }
        public decimal room_cost { get; set; }
        public long customer_ref { get; set; }
        [ForeignKey("customer_ref")]
        public virtual tblCustomerBooking Customer { get; set; }

    }

    public class tblCustomerBooking
    {
        [Key()]
        public long customer_id { get; set; }
        public string customer_name { get; set; }
        public string customer_email { get; set; }
        public virtual ICollection<tblRental> Rentals { get; set; }
    }

Does anyone know if the ForeignKey reference has been changed?

Thanks for any help,

Mark

like image 886
Mark Avatar asked Jun 05 '12 08:06

Mark


1 Answers

I just figured out I needed to add:

using System.ComponentModel.DataAnnotations.Schema;

I didn't need to move it before, so I assume ForeignKey has been moved under the schema namespace.

Hope this helps anyone else,

Thanks, Mark

like image 196
Mark Avatar answered Oct 28 '22 14:10

Mark