Вот моя проблема в C#
:
У меня есть следующие классы:
public class Entity {
public int Number { get; set; }
// Other methods, constructor etc, not relevant to this question.
}
public class Manager {
private Foo() {
Entity entity = new Entity();
entity.Number = 1;
}
}
В строке entity.Number = 1
я получаю следующую ошибку времени компиляции:
'Entity' does not contain a definition for 'Number' and no extension method 'Number accepting a first argument of type 'Entity' could be found (are you missing a directive or an assembly reference?)
Как мне устранить эту ошибку?Похоже, я определенно должен иметь доступ к свойству Number
.Я попытался сделать это неавтоматическим способом.(то есть я написал приватную переменную бэкера и выписал get и set самостоятельно).
Редактировать
Некоторые полезные постеры советовали мне, что я не предоставил достаточно информации.
Мои извинения, я впервые публикую вопрос на StackOverflow илипохожие сайты.Пожалуйста, смотрите ниже для более полной картины соответствующего кода.
using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.GamerServices;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Media;
using SharedContent;
namespace Glow
{
public class GlowGame : Microsoft.Xna.Framework.Game
{
// Viewport and graphics variables
GraphicsDeviceManager graphics;
public GlowGame()
{
graphics = new GraphicsDeviceManager(this);
Content.RootDirectory = "Content";
Entity entity = new Entity(Content);
// Error occurs in line below!
entity.Number = 1;
}
// Standard game template methods here: Initialize, LoadContent, Update,
// Draw, etc.
}
}
in a separate file named Entity.
using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.GamerServices;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Media;
namespace SharedContent
{
public class Entity
{
public int Number { get; set; }
public Entity(ContentManager content) { }
}
}
Точное сообщение об ошибке:
'SharedContent.Entity' does not contain a definition for 'Number' and no extension method 'Number' accepting a first argument of type 'SharedContent.Entity' could be found (are you missing a using directive or an assembly reference?)
Еще одно замечание. Я проверил и перепроверил, что Entity
на самом деле указывает на правильный код, а не на какой-то другой Entity
.
Еще раз спасибо за вашу помощь!