Table of Contents

Class Question

Namespace
InSite.Domain.Banks
Assembly
Shift.Sdk.dll

Represents a question item in a question bank.

public class Question : IHasAssetNumber, IHasVersionControl<Question>
Inheritance
Question
Implements
Inherited Members
Extension Methods

Constructors

Question()

Constructs an empty question.

public Question()

Question(Question, bool, bool)

protected Question(Question source, bool cloneVersions, bool cloneIdentifiers)

Parameters

source Question
cloneVersions bool
cloneIdentifiers bool

Properties

Asset

Every question is assigned a unique asset number in the organization's inventory.

public int Asset { get; set; }

Property Value

int

AssetVersion

Every asset number has a unique version number.

public int AssetVersion { get; }

Property Value

int

AttachmentIdentifiers

public HashSet<Guid> AttachmentIdentifiers { get; set; }

Property Value

HashSet<Guid>

BankIndex

The ordinal position of this question in the bank after flattening its sets.

public virtual int BankIndex { get; set; }

Property Value

int

CalculationMethod

What method is used to calculate the points for this question?

public QuestionCalculationMethod CalculationMethod { get; set; }

Property Value

QuestionCalculationMethod

Classification

Question item classification attributes are encapsulated in a single property for improved readability.

public QuestionClassification Classification { get; set; }

Property Value

QuestionClassification

Comments

Returns the list of comments posted about this question.

public IReadOnlyList<Comment> Comments { get; }

Property Value

IReadOnlyList<Comment>

ComposedVoice

public ComposedVoice ComposedVoice { get; set; }

Property Value

ComposedVoice

Condition

The current condition of the question item.

public string Condition { get; set; }

Property Value

string

Content

Questions need support for multilingual titles, rationales, etc.

public ContentExamQuestion Content { get; set; }

Property Value

ContentExamQuestion

CutScore

The cut-score for this question item.

public decimal? CutScore { get; set; }

Property Value

decimal?

Fields

The fields that display this question.

public List<Field> Fields { get; set; }

Property Value

List<Field>

FirstPublished

public DateTimeOffset? FirstPublished { get; set; }

Property Value

DateTimeOffset?

Flag

The colored flag assigned to the question.

public FlagType Flag { get; set; }

Property Value

FlagType

GradeItems

Key is the FormId Value is the GradeItemId

public Dictionary<Guid, Guid> GradeItems { get; set; }

Property Value

Dictionary<Guid, Guid>

Hotspot

public Hotspot Hotspot { get; set; }

Property Value

Hotspot

Identifier

Uniquely identifies the question.

public Guid Identifier { get; set; }

Property Value

Guid

Layout

Controls the display/layout of the options in the question.

public OptionLayout Layout { get; set; }

Property Value

OptionLayout

Letter

Returns an alphabetic equivalent for the integer sequence (e.g. A = 1, B = 2, C = 3).

public string Letter { get; }

Property Value

string

Likert

public LikertMatrix Likert { get; set; }

Property Value

LikertMatrix

Matches

The matching list of pairs for the question. This applies only to questions where Type = Matching.

public MatchingList Matches { get; set; }

Property Value

MatchingList

NextVersion

public virtual Question NextVersion { get; set; }

Property Value

Question

Options

The options contained by the question.

public List<Option> Options { get; set; }

Property Value

List<Option>

Ordering

public Ordering Ordering { get; set; }

Property Value

Ordering

Points

The maximum number of points awarded for correct answers to this question.

public decimal? Points { get; set; }

Property Value

decimal?

PreviousVersion

public virtual Question PreviousVersion { get; set; }

Property Value

Question

PublicationStatus

public PublicationStatus PublicationStatus { get; set; }

Property Value

PublicationStatus

Randomization

The randomization settings for the options in the question. Any field that displays this question is expected to use the same randomization settings for display of the options it contains.

public Randomization Randomization { get; set; }

Property Value

Randomization

Rubric

If this question was copied from another question, then this property identifies the original question.

public Guid? Rubric { get; set; }

Property Value

Guid?

Sequence

The ordinal position of this question in the set that contains it.

public virtual int Sequence { get; }

Property Value

int

Set

The question set that contains this question item.

public Set Set { get; set; }

Property Value

Set

Source

If this question was copied from another question, then this property identifies the original question.

public Guid? Source { get; set; }

Property Value

Guid?

Standard

Uniquely identifies the standard (e.g. competency) evaluated by the question item. If the question does not evaluate any standard then Guid.Empty is assumed as a sentinel value.

public Guid Standard { get; set; }

Property Value

Guid

SubStandards

public Guid[] SubStandards { get; set; }

Property Value

Guid[]

Type

What type of question item is this?

public QuestionItemType Type { get; set; }

Property Value

QuestionItemType

Methods

CalculatePoints()

public void CalculatePoints()

Clone(bool, bool)

public Question Clone(bool cloneVersions = false, bool cloneIdentifiers = true)

Parameters

cloneVersions bool
cloneIdentifiers bool

Returns

Question

ShouldSerializeComposedVoice()

public bool ShouldSerializeComposedVoice()

Returns

bool

ShouldSerializeHotspot()

public bool ShouldSerializeHotspot()

Returns

bool

ShouldSerializeLayout()

public bool ShouldSerializeLayout()

Returns

bool

ShouldSerializeLikert()

public bool ShouldSerializeLikert()

Returns

bool

ShouldSerializeMatches()

public bool ShouldSerializeMatches()

Returns

bool

ShouldSerializeOptions()

public bool ShouldSerializeOptions()

Returns

bool

ShouldSerializeOrdering()

public bool ShouldSerializeOrdering()

Returns

bool

ShouldSerializeRandomization()

public bool ShouldSerializeRandomization()

Returns

bool

ToString()

public override string ToString()

Returns

string