AZ-204 Korean 無料問題集「Microsoft Developing Solutions for Microsoft Azure (AZ-204 Korean Version)」
모든 인증 이벤트가 올바르게 처리되도록 하려면 LoginEvent.cs의 LE03 줄에 코드를 삽입해야 합니다.
코드를 어떻게 완성해야 합니까? 대답하려면 대답 영역에서 적절한 옵션을 선택하십시오.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

코드를 어떻게 완성해야 합니까? 대답하려면 대답 영역에서 적절한 옵션을 선택하십시오.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

正解:

Explanation:

Box 1: id
id is a unique identifier for the event.
Box 2: eventType
eventType is one of the registered event types for this event source.
Box 3: dataVersion
dataVersion is the schema version of the data object. The publisher defines the schema version.
Scenario: Authentication events are used to monitor users signing in and signing out. All authentication events must be processed by Policy service. Sign outs must be processed as quickly as possible.
The following example shows the properties that are used by all event publishers:
[
{
"topic": string,
"subject": string,
"id": string,
"eventType": string,
"eventTime": string,
"data":{
object-unique-to-each-publisher
},
"dataVersion": string,
"metadataVersion": string
}
]
Reference:
https://docs.microsoft.com/en-us/azure/event-grid/event-schema
Topic 5, Litware Inc
Case study
This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must manage your time to ensure that you are able to complete all questions included on this exam in the time provided.
To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about the scenario that is described in the case study. Each question is independent of the other questions in this case study.
At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot return to this section.
To start the case study
To display the first question in this case study, click the Next button. Use the buttons in the left pane to explore the content of the case study before you answer the questions. Clicking these buttons displays information such as business requirements, existing environment, and problem statements. When you are ready to answer a question, click the Question button to return to the question.
Background
You are a developer for Litware Inc., a SaaS company that provides a solution for managing employee expenses. The solution consists of an ASP.NET Core Web API project that is deployed as an Azure Web App.
Overall architecture
Employees upload receipts for the system to process. When processing is complete, the employee receives a summary report email that details the processing results. Employees then use a web application to manage their receipts and perform any additional tasks needed for reimbursement.
Receipt processing
Employees may upload receipts in two ways:
* Uploading using an Azure Files mounted folder
* Uploading using the web application
Data Storage
Receipt and employee information is stored in an Azure SQL database.
Documentation
Employees are provided with a getting started document when they first use the solution. The documentation includes details on supported operating systems for Azure File upload, and instructions on how to configure the mounted folder.
Solution details
Users table

Web Application
You enable MSI for the Web App and configure the Web App to use the security principal name WebAppIdentity.
Processing
Processing is performed by an Azure Function that uses version 2 of the Azure Function runtime. Once processing is completed, results are stored in Azure Blob Storage and an Azure SQL database. Then, an email summary is sent to the user with a link to the processing report. The link to the report must remain valid if the email is forwarded to another user.
Logging
Azure Application Insights is used for telemetry and logging in both the processor and the web application.
The processor also has TraceWriter logging enabled. Application Insights must always contain all log messages.
Requirements
Receipt processing
Concurrent processing of a receipt must be prevented.
Disaster recovery
Regional outage must not impact application availability. All DR operations must not be dependent on application running and must ensure that data in the DR region is up to date.
Security
* User's SecurityPin must be stored in such a way that access to the database does not allow the viewing of SecurityPins. The web application is the only system that should have access to SecurityPins.
* All certificates and secrets used to secure data must be stored in Azure Key Vault.
* You must adhere to the principle of least privilege and provide privileges which are essential to perform the intended function.
* All access to Azure Storage and Azure SQL database must use the application's Managed Service Identity (MSI).
* Receipt data must always be encrypted at rest.
* All data must be protected in transit.
* User's expense account number must be visible only to logged in users. All other views of the expense account number should include only the last segment, with the remaining parts obscured.
* In the case of a security breach, access to all summary reports must be revoked without impacting other parts of the system.
Issues
Upload format issue
Employees occasionally report an issue with uploading a receipt using the web application. They report that when they upload a receipt using the Azure File Share, the receipt does not appear in their profile. When this occurs, they delete the file in the file share and use the web application, which returns a 500 Internal Server error page.
Capacity issue
During busy periods, employees report long delays between the time they upload the receipt and when it appears in the web application.
Log capacity issue
Developers report that the number of log messages in the trace output for the processor is too high, resulting in lost log messages.
Application code
Processing.cs

Database.cs

ReceiptUploader.cs

ConfigureSSE.ps1

GPU 리소스를 사용하여 렌더링 프로세스를 최적화하는 이미지 렌더링용 Python 애플리케이션을 개발합니다. ACI(Azure Container Instances) Linux 컨테이너에 애플리케이션을 배포합니다.
애플리케이션은 컨테이너가 시작될 때 암호 값을 전달해야 합니다. 이 값은 컨테이너 내에서만 액세스해야 합니다.
비밀 값을 전달해야 합니다.
이 목표를 달성하기 위해 가능한 두 가지 방법은 무엇입니까? 각 정답은 완전한 솔루션을 제시합니다.
참고: 각 올바른 선택은 1점의 가치가 있습니다.
애플리케이션은 컨테이너가 시작될 때 암호 값을 전달해야 합니다. 이 값은 컨테이너 내에서만 액세스해야 합니다.
비밀 값을 전달해야 합니다.
이 목표를 달성하기 위해 가능한 두 가지 방법은 무엇입니까? 각 정답은 완전한 솔루션을 제시합니다.
참고: 각 올바른 선택은 1점의 가치가 있습니다.
正解:B、D
解答を投票する
解説: (JPNTest メンバーにのみ表示されます)
Azure SQL Database 인스턴스에 연결하는 Azure 함수를 개발 중입니다. 이 함수는 Azure Storage 큐에 의해 트리거됩니다.
다음 메시지와 함께 수많은 System.InvalidOperationException에 대한 보고를 받습니다. "시간 초과가 만료되었습니다. 풀에서 연결을 얻기 전에 시간 초과 기간이 경과했습니다. 풀링된 모든 연결이 사용 중이고 최대 풀 크기에 도달했기 때문에 이 문제가 발생할 수 있습니다." 예외를 방지해야 합니다.
당신은 무엇을 해야 합니까?
다음 메시지와 함께 수많은 System.InvalidOperationException에 대한 보고를 받습니다. "시간 초과가 만료되었습니다. 풀에서 연결을 얻기 전에 시간 초과 기간이 경과했습니다. 풀링된 모든 연결이 사용 중이고 최대 풀 크기에 도달했기 때문에 이 문제가 발생할 수 있습니다." 예외를 방지해야 합니다.
당신은 무엇을 해야 합니까?
正解:B
解答を投票する
解説: (JPNTest メンバーにのみ表示されます)
참고: 이 질문은 동일한 시나리오를 제시하는 일련의 질문 중 일부입니다. 시리즈의 각 질문에는 명시된 목표를 충족할 수 있는 고유한 솔루션이 포함되어 있습니다. 일부 질문 세트에는 하나 이상의 올바른 솔루션이 있을 수 있지만 다른 질문 세트에는 올바른 솔루션이 없을 수 있습니다.
이 섹션의 질문에 답한 후에는 해당 질문으로 돌아갈 수 없습니다. 결과적으로 이러한 질문은 검토 화면에 나타나지 않습니다.
전 세계 2,000개 매장에서 POS(Point-of-Sale) 장치 데이터를 수집하는 Azure 솔루션을 개발하고 있습니다. 단일 장치는 24시간마다 2MB의 데이터를 생성할 수 있습니다. 각 매장 위치에는 데이터를 전송하는 1~5개의 장치가 있습니다.
Azure Blob Storage에 디바이스 데이터를 저장해야 합니다. 장치 데이터는 장치 식별자를 기반으로 상호 연관되어야 합니다. 향후 추가 매장 오픈 예정입니다.
장치 데이터를 수신하기 위한 솔루션을 구현해야 합니다.
솔루션: Azure Event Grid를 프로비저닝합니다. 장치 식별자를 평가하도록 이벤트 필터링을 구성합니다.
솔루션이 목표를 충족합니까?
이 섹션의 질문에 답한 후에는 해당 질문으로 돌아갈 수 없습니다. 결과적으로 이러한 질문은 검토 화면에 나타나지 않습니다.
전 세계 2,000개 매장에서 POS(Point-of-Sale) 장치 데이터를 수집하는 Azure 솔루션을 개발하고 있습니다. 단일 장치는 24시간마다 2MB의 데이터를 생성할 수 있습니다. 각 매장 위치에는 데이터를 전송하는 1~5개의 장치가 있습니다.
Azure Blob Storage에 디바이스 데이터를 저장해야 합니다. 장치 데이터는 장치 식별자를 기반으로 상호 연관되어야 합니다. 향후 추가 매장 오픈 예정입니다.
장치 데이터를 수신하기 위한 솔루션을 구현해야 합니다.
솔루션: Azure Event Grid를 프로비저닝합니다. 장치 식별자를 평가하도록 이벤트 필터링을 구성합니다.
솔루션이 목표를 충족합니까?
正解:B
解答を投票する
解説: (JPNTest メンバーにのみ表示されます)
콘텐츠를 수동으로 검토하기 위한 요구 사항을 충족할 수 있도록 애플리케이션 매니페스트의 AM10 줄에 코드를 추가해야 합니다.
코드를 어떻게 완성해야 합니까? 대답하려면 대답 영역에서 적절한 옵션을 선택하십시오.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

코드를 어떻게 완성해야 합니까? 대답하려면 대답 영역에서 적절한 옵션을 선택하십시오.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

正解:

Explanation:

Box 1: sid
Sid: Session ID, used for per-session user sign-out. Personal and Azure AD accounts.
Scenario: Manual review
To review content, the user must authenticate to the website portion of the ContentAnalysisService using their Azure AD credentials. The website is built using React and all pages and API endpoints require authentication. In order to review content a user must be part of a ContentReviewer role.
Box 2: email
Scenario: All completed reviews must include the reviewer's email address for auditing purposes.
Azure에서 호스팅하는 전자 상거래 웹 애플리케이션을 개발하고 있습니다. 애플리케이션은 Azure Cosmos DB를 사용하여 판매 주문을 저장합니다. 최신 SDK를 사용하여 데이터베이스의 판매 주문을 관리하고 있습니다.
새 Azure Cosmos DB 인스턴스를 만듭니다. 코드 프로젝트의 appSettings.json 파일에 유효한 엔드포인트와 유효한 권한 부여 키를 포함합니다.
다음 애플리케이션 코드를 평가하고 있습니다. (줄 번호는 참조용으로만 포함되어 있습니다.)

다음 각 진술에 대해 진술이 참이면 예를 선택하십시오. 그렇지 않으면 아니요를 선택합니다.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

새 Azure Cosmos DB 인스턴스를 만듭니다. 코드 프로젝트의 appSettings.json 파일에 유효한 엔드포인트와 유효한 권한 부여 키를 포함합니다.
다음 애플리케이션 코드를 평가하고 있습니다. (줄 번호는 참조용으로만 포함되어 있습니다.)

다음 각 진술에 대해 진술이 참이면 예를 선택하십시오. 그렇지 않으면 아니요를 선택합니다.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

正解:

Explanation:

Box 1: Yes
The createDatabaseIfNotExistsAsync method checks if a database exists, and if it doesn't, create it.
The Database.CreateContainerAsync method creates a container as an asynchronous operation in the Azure Cosmos service.
Box 2: Yes
The CosmosContainer.CreateItemAsync method creates an item as an asynchronous operation in the Azure Cosmos service.
Box 3: Yes
Reference:
https://docs.microsoft.com/en-us/dotnet/api/microsoft.azure.cosmos.cosmosclient.
createdatabaseifnotexistsasync
https://docs.microsoft.com/en-us/dotnet/api/microsoft.azure.cosmos.database.createcontainerasync
https://docs.microsoft.com/en-us/dotnet/api/azure.cosmos.cosmoscontainer.createitemasync
파일을 처리 및 변환하고 파일을 Azure 저장소에 저장하는 Azure Batch 프로젝트가 있습니다. 배치 작업을 시작하는 기능을 개발 중입니다.
함수에 다음 매개변수를 추가합니다.

변환된 파일이 outputContainerSasUrl 매개변수가 참조하는 컨테이너에 배치되었는지 확인해야 합니다. 변환에 실패한 파일은 failedContainerSasUrl 매개변수가 참조하는 컨테이너의 위치입니다.
파일이 올바르게 처리되었는지 확인해야 합니다.
코드 세그먼트를 어떻게 완성해야 합니까? 대답하려면 대답 영역에서 적절한 옵션을 선택하십시오.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

함수에 다음 매개변수를 추가합니다.

변환된 파일이 outputContainerSasUrl 매개변수가 참조하는 컨테이너에 배치되었는지 확인해야 합니다. 변환에 실패한 파일은 failedContainerSasUrl 매개변수가 참조하는 컨테이너의 위치입니다.
파일이 올바르게 처리되었는지 확인해야 합니다.
코드 세그먼트를 어떻게 완성해야 합니까? 대답하려면 대답 영역에서 적절한 옵션을 선택하십시오.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

正解:

Explanation:


Box 1: CreateJob
Box 2: TaskSuccess
TaskSuccess: Upload the file(s) only after the task process exits with an exit code of 0.
Incorrect: TaskCompletion: Upload the file(s) after the task process exits, no matter what the exit code was.
Box 3: TaskFailure
TaskFailure:Upload the file(s) only after the task process exits with a nonzero exit code.
Box 4: OutputFiles
To specify output files for a task, create a collection of OutputFile objects and assign it to the CloudTask.
OutputFiles property when you create the task.
References:
https://docs.microsoft.com/en-us/dotnet/api/microsoft.azure.batch.protocol.models.outputfileuploadcondition
https://docs.microsoft.com/en-us/azure/batch/batch-task-output-files
참고: 이 질문은 동일한 시나리오를 제시하는 일련의 질문의 일부입니다. 시리즈의 각 질문에는 명시된 목표를 달성할 수 있는 고유한 솔루션이 포함되어 있습니다. 일부 질문 세트에는 정답이 두 개 이상 있을 수 있지만 다른 질문 세트에는 정답이 없을 수도 있습니다.
이 섹션의 질문에 답변한 후에는 해당 질문으로 돌아갈 수 없습니다. 결과적으로 이러한 질문은 검토 화면에 표시되지 않습니다.
Azure App Service API 앱을 개발하고 Development라는 Windows 호스팅 배포 슬롯에 배포합니다. 테스트 및 프로덕션이라는 추가 배포 슬롯을 생성합니다. 프로덕션 배포 슬롯에서 자동 교환을 활성화합니다.
스왑 작업이 발생하기 전에 스크립트가 실행되고 리소스를 사용할 수 있는지 확인해야 합니다.
해결 방법: 자동 교환을 비활성화합니다. 스크립트를 실행하려면 statuscheck라는 메서드로 앱을 업데이트하세요. 자동 교환을 다시 활성화하고 앱을 프로덕션 슬롯에 배포합니다.
솔루션이 목표를 달성합니까?
이 섹션의 질문에 답변한 후에는 해당 질문으로 돌아갈 수 없습니다. 결과적으로 이러한 질문은 검토 화면에 표시되지 않습니다.
Azure App Service API 앱을 개발하고 Development라는 Windows 호스팅 배포 슬롯에 배포합니다. 테스트 및 프로덕션이라는 추가 배포 슬롯을 생성합니다. 프로덕션 배포 슬롯에서 자동 교환을 활성화합니다.
스왑 작업이 발생하기 전에 스크립트가 실행되고 리소스를 사용할 수 있는지 확인해야 합니다.
해결 방법: 자동 교환을 비활성화합니다. 스크립트를 실행하려면 statuscheck라는 메서드로 앱을 업데이트하세요. 자동 교환을 다시 활성화하고 앱을 프로덕션 슬롯에 배포합니다.
솔루션이 목표를 달성합니까?
正解:B
解答を投票する
解説: (JPNTest メンバーにのみ表示されます)
Azure Blob 저장소에 문서를 저장하는 솔루션을 개발하고 있습니다. 고객은 여러 컨테이너에 문서를 업로드합니다. 문서는 PDF, CSV, Microsoft Office 형식 및 일반 텍스트 파일로 구성됩니다.
솔루션은 수백 개의 컨테이너에서 수백만 개의 문서를 처리해야 합니다. 솔루션은 다음 요구 사항을 충족해야 합니다.
* 문서는 스토리지 계정에 업로드될 때 고객 식별자로 분류되어야 합니다.
* 고객 식별자로 필터링을 허용합니다.
* 문서에 포함된 정보를 검색할 수 있습니다.
* 비용을 최소화합니다.
솔루션을 지원하기 위해 표준 범용 v2 저장소 계정을 만들고 구성했습니다.
솔루션을 구현해야 합니다.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

솔루션은 수백 개의 컨테이너에서 수백만 개의 문서를 처리해야 합니다. 솔루션은 다음 요구 사항을 충족해야 합니다.
* 문서는 스토리지 계정에 업로드될 때 고객 식별자로 분류되어야 합니다.
* 고객 식별자로 필터링을 허용합니다.
* 문서에 포함된 정보를 검색할 수 있습니다.
* 비용을 최소화합니다.
솔루션을 지원하기 위해 표준 범용 v2 저장소 계정을 만들고 구성했습니다.
솔루션을 구현해야 합니다.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

正解:

Explanation:
Azure Blob Index tags: https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-index-how-to?
tabs=azure-portal
Azure Cognitive Search: Search inside documents
사용자 입력을 기반으로 Al 생성 이미지를 판매하는 애플리케이션을 개발합니다. 귀하는 최근 이틀마다 고유한 광고를 표시하는 마케팅 캠페인을 시작했습니다.
판매 데이터는 'whenFinished'라는 속성에 저장되는 각 판매 날짜와 함께 Azure Cosmos DB에 저장됩니다.
마케팅 부서에는 각 고유 광고의 판매 수를 표시하는 보기가 필요합니다.
보기에 대한 쿼리를 구현해야 합니다.
쿼리를 어떻게 완료해야 합니까? 대답하려면 대답 영역에서 적절한 옵션을 선택하십시오.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

판매 데이터는 'whenFinished'라는 속성에 저장되는 각 판매 날짜와 함께 Azure Cosmos DB에 저장됩니다.
마케팅 부서에는 각 고유 광고의 판매 수를 표시하는 보기가 필요합니다.
보기에 대한 쿼리를 구현해야 합니다.
쿼리를 어떻게 완료해야 합니까? 대답하려면 대답 영역에서 적절한 옵션을 선택하십시오.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

正解:

Explanation:

Redis용 Azure Cache를 사용하는 웹 애플리케이션을 개발하고 있습니다. 캐시가 자주 채워지고 키를 제거해야 할 것으로 예상합니다.
다음과 같은 예측된 사용 패턴을 기반으로 Azure Cache for Redis를 구성해야 합니다. 요소의 작은 하위 집합이 나머지 요소보다 훨씬 더 자주 액세스됩니다.
예측된 사용 패턴에 대한 성능을 최적화하려면 Azure Cache for Redis를 구성해야 합니다.
목표를 달성할 두 가지 퇴거 정책은 무엇입니까?
참고: 각 올바른 선택은 1점의 가치가 있습니다.
다음과 같은 예측된 사용 패턴을 기반으로 Azure Cache for Redis를 구성해야 합니다. 요소의 작은 하위 집합이 나머지 요소보다 훨씬 더 자주 액세스됩니다.
예측된 사용 패턴에 대한 성능을 최적화하려면 Azure Cache for Redis를 구성해야 합니다.
목표를 달성할 두 가지 퇴거 정책은 무엇입니까?
참고: 각 올바른 선택은 1점의 가치가 있습니다.
正解:C、D
解答を投票する
解説: (JPNTest メンバーにのみ表示されます)
참고: 이 질문은 동일한 시나리오를 제시하는 일련의 질문 중 일부입니다. 시리즈의 각 질문에는 명시된 목표를 충족할 수 있는 고유한 솔루션이 포함되어 있습니다. 일부 질문 세트에는 하나 이상의 올바른 솔루션이 있을 수 있지만 다른 질문 세트에는 올바른 솔루션이 없을 수 있습니다.
이 섹션의 질문에 답한 후에는 해당 질문으로 돌아갈 수 없습니다. 결과적으로 이러한 질문은 검토 화면에 나타나지 않습니다.
Azure 솔루션을 개발합니다.
Azure Resource Manager의 특정 리소스 그룹에 VM(가상 머신) 액세스 권한을 부여해야 합니다.
Azure Resource Manager 액세스 토큰을 가져와야 합니다.
솔루션: 판독기 RBAC(역할 기반 액세스 제어) 역할을 사용하여 Azure Resource Manager로 VM을 인증합니다.
솔루션이 목표를 충족합니까?
이 섹션의 질문에 답한 후에는 해당 질문으로 돌아갈 수 없습니다. 결과적으로 이러한 질문은 검토 화면에 나타나지 않습니다.
Azure 솔루션을 개발합니다.
Azure Resource Manager의 특정 리소스 그룹에 VM(가상 머신) 액세스 권한을 부여해야 합니다.
Azure Resource Manager 액세스 토큰을 가져와야 합니다.
솔루션: 판독기 RBAC(역할 기반 액세스 제어) 역할을 사용하여 Azure Resource Manager로 VM을 인증합니다.
솔루션이 목표를 충족합니까?
正解:B
解答を投票する
解説: (JPNTest メンバーにのみ表示されます)
Azure 솔루션을 개발하고 있습니다.
Azure Key Vault에 저장된 비밀에 액세스하려면 코드를 개발해야 합니다.
코드 세그먼트를 어떻게 완성해야 합니까? 응답하려면 적절한 코드 세그먼트를 올바른 위치로 드래그하십시오. 각 코드 세그먼트는 한 번, 두 번 이상 또는 전혀 사용되지 않을 수 있습니다. 콘텐츠를 보려면 창 사이의 분할 막대를 끌거나 스크롤해야 할 수 있습니다.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

Azure Key Vault에 저장된 비밀에 액세스하려면 코드를 개발해야 합니다.
코드 세그먼트를 어떻게 완성해야 합니까? 응답하려면 적절한 코드 세그먼트를 올바른 위치로 드래그하십시오. 각 코드 세그먼트는 한 번, 두 번 이상 또는 전혀 사용되지 않을 수 있습니다. 콘텐츠를 보려면 창 사이의 분할 막대를 끌거나 스크롤해야 할 수 있습니다.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

正解:

Explanation:

Box 1: SecretClient
Box 2: DefaultAzureCredential
In below example, the name of your key vault is expanded to the key vault URI, in the format "https://<your- key-vault-name>.vault.azure.net". This example is using 'DefaultAzureCredential()' class from Azure Identity Library, which allows to use the same code across different environments with different options to provide identity.
string keyVaultName = Environment.GetEnvironmentVariable("KEY_VAULT_NAME"); var kvUri = "https://" + keyVaultName + ".vault.azure.net"; var client = new SecretClient(new Uri(kvUri), new DefaultAzureCredential()); Reference:
https://docs.microsoft.com/en-us/azure/key-vault/secrets/quick-create-net
당신은 모바일 애플리케이션을 디자인하는 회사에서 일하고 있습니다. 그들은 플레이어 기록이 다른 게임에 할당되는 서버를 유지합니다. 추적 시스템은 새롭고 개발 중입니다.
애플리케이션은 Entity Framework를 사용하여 Azure 데이터베이스에 연결합니다. 데이터베이스에는 Player 테이블과 Game 테이블이 있습니다.
플레이어를 추가할 때 코드는 새 플레이어 레코드를 삽입하고 기존 게임 레코드와 새 플레이어 레코드 간의 관계를 추가해야 합니다.
애플리케이션은 프로세스를 시작하기 위해 올바른 gameId 및 playerId로 CreatePlayerWithGame을 호출합니다.
(줄 번호는 참조용으로만 포함되어 있습니다.)

다음 각 진술에 대해 진술이 참이면 예를 선택하십시오. 그렇지 않으면 아니요를 선택합니다.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

애플리케이션은 Entity Framework를 사용하여 Azure 데이터베이스에 연결합니다. 데이터베이스에는 Player 테이블과 Game 테이블이 있습니다.
플레이어를 추가할 때 코드는 새 플레이어 레코드를 삽입하고 기존 게임 레코드와 새 플레이어 레코드 간의 관계를 추가해야 합니다.
애플리케이션은 프로세스를 시작하기 위해 올바른 gameId 및 playerId로 CreatePlayerWithGame을 호출합니다.
(줄 번호는 참조용으로만 포함되어 있습니다.)

다음 각 진술에 대해 진술이 참이면 예를 선택하십시오. 그렇지 않으면 아니요를 선택합니다.
참고: 각 올바른 선택은 1점의 가치가 있습니다.

正解:

Explanation:

Many-to-many relationships without an entity class to represent the join table are not yet supported. However, you can represent a many-to-many relationship by including an entity class for the join table and mapping two separate one-to-many relationships.
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<PostTag>()
HasKey(t => new { t.PostId, t.TagId });
modelBuilder.Entity<PostTag>()
HasOne(pt => pt.Post)
WithMany(p => p.PostTags)
HasForeignKey(pt => pt.PostId);
modelBuilder.Entity<PostTag>()
HasOne(pt => pt.Tag)
WithMany(t => t.PostTags)
HasForeignKey(pt => pt.TagId);
}
}